Создание миллионов групп с упорядоченными данными с помощью Kafka Streams - PullRequest
0 голосов
/ 15 ноября 2018

у нас есть приложение, которое нам нужно, чтобы сгруппировать миллионы событий в соответствии с идентификаторами пользователей и упорядочить их по временным меткам.После этого мы анализируем эти данные.

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

Мы хотимизбавиться от этого кварцевого задания из-за всплесков ЦП и исчерпания памяти и использовать Kafka Streams для группировки данных в разные журналы или промежуточные документы.

Мы пробовали методы groupBy (), но они предназначены для простого агрегирования.Когда мы пытаемся добавить их куда-то, нам нужно объединить их в некоторый список в памяти.

Можете ли вы дать представление о том, как сгруппировать такое количество данных в добавляемый файл или документ во время потоковой передачи данных.Например, я имею в виду отдельные документы для пользователя X, пользователя Y и т. Д. С внутренними возможностями Kafka и Kafka Streams.Потому что каждая операция добавления в любую базу данных является для нас громоздкой.

Заранее спасибо.

...