如何解决融合架构注册表:TopicRecordNameStrategy
我是Confluent Schema Registry的新手,我试图首先了解核心概念。
我对TopicRecordNameStrategy
有点模糊:
TopicRecordNameStrategy:从主题和记录名称中派生主题名称,以将可能在主题下具有不同数据结构的逻辑相关事件分组的方式。
非默认命名策略(RecordNameStrategy和TopicRecordNameStrategy)在按主题分组不是最佳选择的用例中支持模式管理,例如,单个主题可以具有使用多个模式的记录。
这些是CSR文档中的引号。
说,我有一个主题X,通过它我可以推送消息类型A和消息类型B(这些消息类型表示完全不同的类)。
我有以下3个问题:
- 考虑到我正在雇用
TopicRecordNameStrategy
,我将因此获得多少科目? 是一个主题还是两个主题? - 主题名称是如何形成的?
- 由于每条消息都可以设置键和值模式,因此它对主题数量有何影响?
解决方法
关于multiple event types in the same Kafka topic.
的概述有两个单独的配置选项,一个用于键,一个用于 value :key.subject.name.strategy
(定义了如何构造消息键的主题名称)和value.subject.name.strategy
(如何构造消息值的主题名称)。
对于值TopicRecordNameStrategy
:主题名称为<topic>-<type>-value
,其中<topic>
是Kafka主题名称,而<type>
是Avro记录类型的标准名称邮件的内容。
在您的情况下,将有2个价值主题:<topic X>-<type A>-value
和<topic X>-<type B>-value
。
对于键,默认为TopicNameStrategy
,您可以拥有一个<topic X>-<key>
。
how the naming strategies work.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。