Я работаю над потоковой структурой Spark. Мои данные входного потока выглядят так:
id | col0 | col1 | ...
Иногда строки с одинаковыми id
поступают в течение ~ 5 минут. Я хочу оставить только первый и опустить дубликаты, которые приходят с опозданием. Я также хочу записывать свои выходные данные каждую минуту, как только появится новая строка с новым id
. В Spark Streaming есть функции dropDuplicate
и withWatermark
, но я думаю, что если я использую водяной знак, Spark ждет, пока не истечет водяной знак, поэтому он не подходит для этого варианта использования. Есть ли хороший способ добиться этого?