Мы создаем приложение для получения данных с датчиков. Данные передаются в Kafka, откуда потребители будут публиковать их в разных хранилищах данных. Каждая точка данных будет иметь несколько атрибутов, представляющих состояние датчика.
В одном из потребителей мы хотим опубликовать данные в хранилище данных, только если значение изменилось. Например, если есть датчик температуры, который опрашивается для данных каждые 10 секунд, мы ожидаем получить данные типа
----------------------------------------------------------------------
Key Value
----------------------------------------------------------------------
Sensor1 {timestamp: "10-10-2019 10:20:30", temperature: 10}
Sensor1 {timestamp: "10-10-2019 10:20:40", temperature: 10}
Sensor1 {timestamp: "10-10-2019 10:20:50", temperature: 11}
. В вышеприведенном случае должна быть опубликована только первая запись и третья запись.
Для этого нам нужен способ сравнить текущее значение ключа с предыдущим значением с тем же ключом. Я считаю, что это возможно с KTable или KStream, но не могу найти примеров.
Любая помощь будет отличной!