AWS MSK Connect多主题通配符配置语法咨询
AWS MSK S3 Sink Connector 批量匹配主题的正确配置方式
你当前使用的topics参数仅支持逗号分隔的具体主题名称,不支持通配符匹配。要批量匹配上千个主题,需要改用topics.regex配置项,通过正则表达式来指定匹配规则。
常用正则匹配规则示例
- 匹配集群内所有主题:
topics.regex=.* - 匹配以
MSK开头的所有主题:topics.regex=MSK.* - 匹配名称中包含
Topic的所有主题:topics.regex=.*Topic.*
修改后的完整配置示例
将原配置中的topics=MSKTutorialTopic替换为对应的topics.regex规则,以下是匹配所有主题的配置:
connector.class=io.confluent.connect.s3.S3SinkConnector s3.region=us-east-1 format.class=io.confluent.connect.s3.format.json.JsonFormat flush.size=100 schema.compatibility=NONE tasks.max=2 topics.regex=.* partitioner.class=io.confluent.connect.storage.partitioner.DefaultPartitioner storage.class=io.confluent.connect.s3.storage.S3Storage s3.bucket.name=name-of-bucket
注意事项
- 确保MSK Connector关联的IAM角色拥有访问所有匹配主题的权限(包括主题的读取权限)
- 针对上千个主题的场景,建议适当调高
tasks.max的值,提升数据导出的并行处理能力,避免任务过载 - 如果需要排除特定主题,可以使用负向正则表达式,例如匹配除
exclude-topic之外的所有主题:topics.regex=(?!exclude-topic).*
内容的提问来源于stack exchange,提问作者Piyush Patil
相关产品推荐
相关产品推荐

