коннектор kafka для чтения из csv и конвертации в avro - PullRequest
0 голосов
/ 06 февраля 2019

есть ли какой-нибудь коннектор kafka, который читает из csv и конвертирует в Avro, прежде чем выдвинуть его в тему?

Я прошел хорошо знакомый https://github.com/jcustenborder/kafka-connect-spooldir,, но он только читает и подталкивает ктема.Я планирую изменить базу кода для своего пользовательского использования, но прежде чем вносить изменения, я просто хотел проверить, имеется ли уже такой разъем.

1 Ответ

0 голосов
/ 06 февраля 2019

kafka-connect-spooldir делает именно то, что вы описываете.Когда вы запускаете его, вам просто нужно настроить Kafka Connect на использование конвертера Avro.Например:

"key.converter": "io.confluent.connect.avro.AvroConverter",
"key.converter.schema.registry.url": "http://schema-registry:8081",
"value.converter": "io.confluent.connect.avro.AvroConverter",
"value.converter.schema.registry.url": "http://schema-registry:8081",

См. https://www.confluent.io/blog/kafka-connect-deep-dive-converters-serialization-explained для получения дополнительной информации о взаимосвязи преобразователей и разъемов.


Редактировать в ответ на ваш комментарий:

Когда я использую kafka-console-consumer, я вижу данные как

103693(2018-03-11T09:19:17Z Sugar - assa8.7

когда я использую kafka-avro-console-потребительский формат

{"order_id":{"string":"1035"},"customer_id":{"string":"93"},"order_ts":{"string":"2018-03-11T09:19:17Z"},"product":{"string":"Sugar - assa"},"order_total_usd":{"string":"8.7"}}.

Это показывает, что это Avro данные на вашемтема.Весь смысл kafka-avro-console-consumer в том, что он декодирует двоичные данные Avro и отображает их в простом формате.Выходные данные из kafka-console-consumer показывают необработанное Avro, части которого могут выглядеть удобочитаемыми (Sugar - assa), а другие явно нет (103693)

...