自定义主题自动创建
设置Kafka Connect
Kafka Connect,因为Kafka 2.6.0支持主题创建:
topic. create .enable = true
如果不希望允许连接器自动创建主题,可以将此值设置为 |
配置
主题自动创建基于组。每个自定义组都有一个包括
和一个排除
属性,这些正则表达式以逗号分隔,与应包含或排除的主题名称匹配。
你可以同时指定两者, |
您不必指定任何自定义组。当没有已注册的自定义组或已注册的组时包括
模式与要创建的主题不匹配,则将使用默认配置。
你可以指定所有主题级配置参数自定义创建主题的方式。
看到配置Debezium主题开云体育官方注册网址章节中关于通用主题配置注意事项开云体育官方注册网址的介绍。
默认组配置
默认配置可以像这样在连接器配置JSON中传递:
{…“topic.creation.default.replication.factor”:3,(1)“topic.creation.default.partitions”:10(2)“topic.creation.default.cleanup.policy”:“紧凑”,(3):“topic.creation.default.compression.type lz4”(4)...}
项 | 描述 |
---|---|
1 |
|
2 |
|
3. |
|
4 |
|
如你所见,你可以使用每一个主题级配置参数作为财产。
请注意, |
自定义组配置
可以指定多个组。类似于默认的
根据组名将属性分组。在连接器JSON中就像这样:
{…(1)“topic.creation.inventory。包括": "dbserver1\\.inventory\\.*",(2)“topic.creation.inventory。分区": 20, "topic.creation.inventory.cleanup.policy": "compact", "topic.creation.inventory.delete.retention.ms": 7776000000,(3)“topic.creation.applicationlogs。包括": "dbserver1\\.logs\\.applog-.*",(4)“topic.creation.applicationlogs。排除": "dbserver1\\.logs\\.applog-old-.*",(5)“topic.creation.applicationlogs.replication。因子“:1,”topic.creation.applicationlogs。分区": 20, "topic.creation.applicationlogs.cleanup.policy": "delete", "topic.creation.applicationlogs.retention.ms": 7776000000, "topic.creation.applicationlogs.compression.type": "lz4", ... }
项 | 描述 |
---|---|
1 |
属性的配置 |
2 |
|
3. |
然后定义的配置 |
4 |
|
5 |
|
注册自定义组
最后,我们需要注册两个已定义的自定义组库存
而且applicationlogs
与topic.creation.groups
属性:
{…“topic.creation。组":"目录,应用程序日志",…}
一个完整的连接器JSON配置如下所示:
{…"topic. create .default.replication.factor": 3, "topic. create .default.partitions": 10, "topic. create .default.cleanup.policy": "compact", "topic. create .default.compression.type": "lz4"组:"inventory,applicationlogs", "topic.creation.inventory. log . "包括”:“dbserver1 \ \ .inventory \ \ *”,“topic.creation.inventory。replication.factor": 3, "topic.creation.inventory.partitions": 20, "topic.creation.inventory.cleanup.policy": "compact", "topic.creation.inventory.delete.retention.ms": 7776000000, "topic.creation.applicationlogs.include": "dbserver1\\.logs\\.applog-.*", "topic.creation.applicationlogs.exclude": "dbserver1\\.logs\\.applog-old-.*", "topic.creation.applicationlogs.replication.factor": 1, "topic.creation.applicationlogs.partitions": 20, "topic.creation.applicationlogs.cleanup.policy": "delete", "topic.creation.applicationlogs.retention.ms": 7776000000, "topic.creation.applicationlogs.compression.type": "lz4" }
额外的资源
有关主题自动创建的更多信息,您可以查看这些资源:
开云体育官方注册网址Debezium博客:自动创建Debezium更改开云体育官方注册网址数据主题
Kafka关于在Kafka Connect中添加主题自动创建的改进建议:KIP-158 Kafka Connect应该允许源连接器为新主题设置特定主题的设置