Соединитель Kafka HDFS - без полного слияния

У меня есть работающий экземпляр Kafka 0.10, и в настоящее время я использую Gobblin для хранения данных в HDFS. Я хочу переключиться на Kafka Connect, и в процессе исследования я обнаружил, что Confluent предоставляет соединитель.

Однако есть ли способ использовать этот коннектор без использования всей платформы Confluent? Что означает, могу ли я, например, скопировать соответствующие скрипты из источника Confluent и каким-то образом заставить мой экземпляр Kafka использовать его? Я в основном все еще изучаю этот материал, так что я еще не очень хорошо разбираюсь в этом пространстве.

Спасибо.


person moe    schedule 06.09.2016    source источник
comment
Confluent Platform совместима с OS Kafka, так что да, она должна работать. Но почему бы не использовать CP - это облегчило бы вам жизнь :)   -  person Matthias J. Sax    schedule 07.09.2016


Ответы (1)


Да, это возможно. Я сделал это. Я использую слегка модифицированный автономный коннектор Confluent HDFS, который работает в контейнере Docker. Однако вам также придется использовать SchemaRegistry. Поскольку соединители тесно связаны с SchemaRegistry. Также вам нужно будет отправлять сообщения в специальном формате. Для поддержки автоматического распознавания схемы потребители Confluent Kafka вводят внутренний формат сообщений. Следовательно, чтобы быть совместимыми с конфлюэнтными потребителями, ваши производители должны составлять сообщения в соответствии со следующим форматом.

  • Header (5 bytes)
    • The first byte of the message "Magic byte" should be always 0
    • Следующие 4 байта должны быть идентификатором схемы в реестре схем в формате Big Endian.
  • Полезная нагрузка (объект Avro \ Parquet, в двоичном коде).

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

person Yuri Tceretian    schedule 22.12.2016