В реестре схем схема потребителя может отличаться от схемы производителя, что на самом деле означает - PullRequest
0 голосов
/ 16 сентября 2018

При создании данных AVRO для Kafka, сериализатор Avro записывает тот же идентификатор схемы в байтовом массиве, который используется при записи данных.

Kafka Consumer выбирает схему из реестра схем на основе идентификатора схемы в байтемассив получен.Таким образом, один и тот же идентификатор схемы используется и в т. Е. В Producer, и в Consumer, и в схеме.

Но почему во многих статьях, в том числе one , указано Схема потребителя может отличаться от схемы производителя.

Пожалуйста, помогите мне понять это.

1 Ответ

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

Kafka Consumer выбирает схему из реестра схем на основе идентификатора схемы

Только если вы позволите десериализатору сделать это.

Вы можете определять свою собственную совместимую схему в коде пользователя. Следовательно, может отличаться и следует правилам эволюции схемы Avro

Эволюция схемы происходит только при десериализации у потребителя (читай). Если схема потребителя отличается от схемы производителя, то значение или ключ автоматически изменяются во время десериализации, чтобы соответствовать схеме чтения потребителя, если это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...