Как автоматически генерировать схемы Avro в Go? - PullRequest
0 голосов
/ 01 июня 2018

Я пытаюсь интегрировать Avro и Schema Registry в наши конвейеры данных Kafka.Теперь он выглядит внутри службы Go как

Получить данные -> Кодировать данные в JSON -> Записать в Kafka

Я хочу использовать схему avro таким же образом

Создатьсхема -> Обновить схему в реестре схем -> Получить данные -> Кодировать в Avro -> Запись в Kafka

Но есть несколько вопросов:

  1. Как создать схему из Goклассы автоматически?
  2. Как проверить совместимость схемы с реестром схем?

1 Ответ

0 голосов
/ 04 июня 2018

Есть несколько альтернатив для создания классов Go из Avro.Вы пробовали это https://github.com/actgardner/gogen-avro?

Использование Чтобы сгенерировать исходные файлы Go из одного или нескольких файлов схемы Avro, выполните:

gogen-avro [--package =] [-контейнеры] выходной_каталог avro_schema files

Реестр Confluent Schema предоставляет несколько способов проверки совместимости между схемами.Вы можете взглянуть на их API Здесь .Есть и другие способы сделать это, например, использовать maven во время ваших интеграционных тестов для обеспечения совместимости между вашим источником и другими средами.Вы можете найти некоторую информацию здесь .

...