You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MongoDB多集合同步至Kafka Topic:配置源连接器读取每月新增集合oplog至单一Topic的可行性问询

实现方法:MongoDB Kafka源连接器读取动态新增集合并写入同一Kafka Topic

当然可以!MongoDB官方Kafka源连接器完全支持这种动态匹配新增集合并统一写入单个Kafka Topic的场景,核心是利用正则表达式匹配集合名称,再通过配置将所有匹配集合的oplog事件路由到同一个Topic。下面是具体的实现思路和关键配置:

核心配置思路

通过正则表达式匹配所有符合journal_YYMM(比如你示例中的journal_2205、journal_2206)命名规则的集合,然后将这些集合的oplog事件统一映射到指定的Kafka Topic。

关键配置项示例

以下是连接器的核心配置片段(可根据自身环境调整):

# MongoDB连接信息
connection.uri=mongodb://your-mongo-host:27017/
database=your-target-db

# 正则匹配所有journal_开头的月份集合
collection=^journal_\d{4}$

# 将所有匹配集合的事件写入同一个Kafka Topic
topic=mongodb_unified_journal_topic

# 可选:如果需要同步历史数据,设置为true(默认false,仅同步新增oplog)
copy.existing=true

# 可选:如果只需要完整文档内容而非oplog操作类型,设置为true
publish.full.document.only=true

如果你的连接器版本需要更灵活的topic映射,也可以使用topic.namespace.map配置:

topic.namespace.map={"your-target-db.journal_.*": "mongodb_unified_journal_topic"}

注意事项

  • MongoDB环境要求:源连接器依赖oplog捕获数据变更,因此你的MongoDB必须是副本集或分片集群(单节点实例默认无oplog,无法使用该连接器)。
  • 正则表达式准确性:根据实际集合命名规则调整正则,比如如果集合是journal_202205(YYYYMM格式),正则应改为^journal_\d{6}$。
  • 权限配置:确保连接器使用的MongoDB账号具备read(读取目标集合)和clusterMonitor(读取oplog)权限,否则会出现权限不足的错误。
  • 版本兼容性:建议使用最新版的MongoDB Kafka连接器,保证正则匹配和topic映射功能稳定可用。

内容的提问来源于stack exchange,提问作者roman_

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 20:17:34