Настройка реализации хранилища окон в KStream - соединение KStream - PullRequest
0 голосов
/ 23 мая 2018

Нам нужно выполнить соединение Kstream - Kstream с очень большим окном, где отметка слева будет запускать соединение только с самой последней записью справа и наоборот.

Это не таккак работает окно по умолчанию, поскольку WindowStoreIterator<V>, возвращаемое window.fetch внутри KStreamKStreamJoinProcessor, является итератором, который может содержать несколько записей.

В частности, мы заметили, что RockDBWindowStore имеет свойство retainDuplicates, установленное в true, и мы хотели бы, чтобы оно было установлено в false.

Как настроить реализацию магазина для соединения KStream KStream?

1 Ответ

0 голосов
/ 23 мая 2018

Самый простой способ - скопировать код в класс с новым именем и соответствующим образом изменить логику?Другая возможность должна состоять в том, чтобы преобразовать оба потока в KTables и выполнить объединение с таблицей (вам необходимо отключить кэширование для обоих входных таблиц KTable.

Обратите внимание, что для типа объединения, который вы хотите, онтрудно правильно обрабатывать данные, вышедшие из строя.

...