Конвертировать Avro в Кафке в Паркет прямо в S3 - PullRequest
0 голосов
/ 13 июня 2019

У меня есть темы в Кафке, которые хранятся в формате Avro. Я хотел бы использовать всю тему (которая в момент получения не изменит никаких сообщений) и преобразовать ее в паркет, сохраняя непосредственно на S3.

В настоящее время я делаю это, но для этого требуется, чтобы я принимал сообщения от Kafka по одному разу и обрабатывал их на локальном компьютере, преобразовывал их в файл паркета, и как только вся тема использовалась, а файл паркета был полностью написан, закройте запись. обработать и затем начать загрузку файла S3. Или | Avro in Kafka -> convert to parquet on local -> copy file to S3 | для краткости.

Вместо этого я бы хотел | Avro in Kafka -> parquet in S3 |

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

Я посмотрел на Альпакку, и кажется, что это возможно, но неясно, я не видел примеров. Есть предложения?

1 Ответ

1 голос
/ 13 июня 2019

Вы только что описали Kafka Connect :)

Kafka Connect является частью Apache Kafka и имеет подключаемый модуль S3 . Хотя на данный момент разработка поддержки Parquet все еще продолжается .

Праймер в Kafka Connect см. http://rmoff.dev/ksldn19-kafka-connect

...