Сброс к пользовательскому смещению в разделе Kafka - PullRequest
0 голосов
/ 24 февраля 2020

Я исследую Кафку для конкретного c варианта использования, над которым я работаю. У меня есть поток данных, и я хочу обработать его и опубликовать sh на промежуточных этапах.

На каждом из этих этапов (начальный и промежуточный) Задачи Samza будут выполнять обработку и повторную публикацию. Одно из требований, которые я предъявляю, заключается в том, что я могу повторно запускать весь конвейер обработки с определенного этапа c во времени, когда захочу.

Я знаю, что kafka поддерживает смещение для каждого из своих журналов (входящие данные) . Однако предоставляет ли Кафка какую-либо функциональность, с помощью которой я могу отобразить смещения разделов на некоторый пользовательский идентификатор (скажем, временную метку) и использовать это для повторного запуска всего конвейера с того момента на подопечных?

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

Best
Shabir

1 Ответ

2 голосов
/ 24 февраля 2020

Вы можете использовать инструмент командной строки kafka-consumer-groups для сброса смещения для группы потребителей на основе метки времени (--to-datetime). Подробнее на странице do c: https://kafka.apache.org/documentation/#basic_ops_consumer_group

То же самое, конечно, можно достичь с помощью кода.

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