Как схема из Schema-Registry распространяется через Replicator? - PullRequest
0 голосов
/ 25 мая 2018

Как схемы из Confluent Schema-Registry распространяются Confluent-Replicator по назначению Kafka-Cluster и Schema-Registry?

Содержит ли каждая реплицируемая схема сообщения в ней или схемы реплицируются как-то отдельно через отдельныйтема?

Я не видел никаких возможностей конфигурации в Confluent-Replicator по этому поводу.

Ответы [ 2 ]

0 голосов
/ 01 сентября 2018

Схемы не хранятся вместе с темой, только их идентификаторы.И тема _schemas не реплицируется, только идентификаторы хранятся в реплицированных темах.

На высоком уровне, если вы используете AvroConverter с репликатором, он десериализует сообщение из исходного кластера, дополнительно переименовывает тему в соответствии с конфигурацией репликатора, затем сериализует сообщение и отправляетновое имя субъекта в целевой кластер + реестр.

В противном случае, если вы используете ByteArrayConverter, он не будет проверять сообщение, а просто копирует его в целевой кластер без регистрации.

Небольшой оптимизацией на пути Avro было бы только проверить, что сообщение закодировано Avro на первых 5 байтах, в соответствии со спецификацией реестра реестра, а затем выполнить HTTP-поиск исходного объекта с помощью API-интерфейса реестра реестра.GET /schemas/ids/:id, снова переименуйте раздел, если необходимо, в целевой кластер, и POST схему там.Подобный подход может работать в любой паре Потребитель / Производитель, такой как реализация MirrorMaker MessageHandler.

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

Похоже, вы спрашиваете, как можно использовать реестр схем в среде с несколькими центрами обработки данных.На этом https://docs.confluent.io/current/schema-registry/docs/multidc.html

есть довольно хороший документ-репликатор, который можно использовать для синхронизации данных реестра схемы на сервере, как показано в документе.

...