Кафка опрашивает поток - PullRequest
       69

Кафка опрашивает поток

0 голосов
/ 14 октября 2018

У меня есть бизнес-требование, где мне нужно 12-часовое оконное управление, и нужно запросить данные потока.Объем составляет около 100 миллионов записей за 12 часов.Также мне нужно поддерживать порядок всех событий.Используя Streams API, я создал систему для этого.Объем не кажется проблемой.Реальная проблема заключается в том, что бизнес хочет искать через события и в государственных магазинах, почти в каждом государственном магазине.Поиск не основан на ключах, но основан на некоторых полях в значении.

Я попробовал сервер KSQL и попытался выполнить простые запросы с набором данных из 25 миллионов записей, а выполнение запросов в течение 8-часового окна заняло почти 240 секунд для завершенияПоиск.(Сейчас я использую один узел и один раздел.)

Другой способ, которым я думаю, - это подключить Elastic Search к потокам и хранилищам состояний, а затем выполнить запросы к ним, но яЯ не уверен, что хранение данных каждого хранилища состояний будет хорошим решением.

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

Я все еще новичок в Кафке и с нетерпением жду предложений и указаний.

1 Ответ

0 голосов
/ 14 октября 2018

Кафка сама по себе не оптимизирована для индексированных запросов или даже для любых запросов, которые не включают в себя начало со смещением и чтение вперед в журнале.Лучший способ запросить данные - отправить их в системы, соответствующие вашим запросам.

Kafka Streams поддерживает интерактивные запросы, но если, как вы говорите, вам нужно индексировать данные по полям, а не по ключам, вам, вероятно, лучше писать в систему, которая поддерживает вторичные индексы.

...