Можно ли написать кафку потребительской партии для создания вывода в файл для каждого окна - PullRequest
0 голосов
/ 28 ноября 2018

Можно ли написать потребительский cmd / batch-файл kafka для вывода данных в файл каждое окно.Предположим, что каждое окно имеет 5 минут.каждые 5 минут файл должен быть создан.

В kafka, мы можем установить окна как максимум 30 минут?

1 Ответ

0 голосов
/ 28 ноября 2018

каждые 5 минут должен быть создан файл

Для этого можно использовать HDFS Kafka Connector (входит в состав Confluent Platform).Установка Hadoop не требуется для его использования.

Вот соответствующие сведения о конфигурации для разъема HDFS

tasks.max=1
topics=some_topic

connector.class=io.confluent.connect.hdfs.HdfsSinkConnector

# set to the local filesystem
store.url=file:///path/to/output-dir

# write a file every 5 minutes, one file per-partition
rotate.schedule.interval.ms=300000

# write out JSON-formatted data
format.class=io.confluent.connect.hdfs.json.JsonFormat

Подробнее о Kafka Connect

В противном случае,вам нужен процесс Kafka Streams для вывода данных за 5 минут, а затем вывод в новую тему.Исходя из этого, вы можете записать нового потребителя в консоль или файл.

мы можем установить максимальные значения 30 минут для окон?

Вы можете установить время удержания темы равным 30 минутам.Вышеуказанный интервал вращения может быть настолько большим, насколько вы этого хотите.

...