SCDF注册MongoDB等Kafka连接器及MongoDB源启动器机制问询
Spring Cloud Data Flow相关问题解答
1. Kafka连接器注册到SCDF的可行性
- 完全可以。SCDF原生支持注册任意符合流处理角色(source/processor/sink)的第三方应用,Kafka连接器也不例外,常见有两种实现方案:
- 方案一:将Kafka连接器封装为Spring Boot应用,通过Spring Cloud Stream Kafka Connector绑定器做适配后,直接以
maven://、docker://等资源坐标的形式注册到SCDF的应用仓库即可使用。 - 方案二:直接利用SCDF内置的Kafka Connect集成能力,将MongoDB等Kafka连接器部署在和SCDF关联的Kafka Connect集群上,SCDF可以自动发现这些连接器实例,直接作为流的端点参与流水线编排。
- 方案一:将Kafka连接器封装为Spring Boot应用,通过Spring Cloud Stream Kafka Connector绑定器做适配后,直接以
- 上述方案对所有类型的Kafka连接器都适用,没有额外的组件限制。
2. SCDF MongoDB Source Starter的变更检测逻辑
- 官方维护的SCDF MongoDB Source Starter默认采用*MongoDB变更流(Change Streams)*实现变更检测,和MongoDB官方Kafka Source连接器的底层逻辑一致,同样要求MongoDB部署为副本集或者分片集群,依赖oplog生成变更事件。
- 如果你的MongoDB是独立实例,不支持变更流,可以手动修改starter的配置,切换为定时轮询指定集合的工作模式,这种模式下会直接从MongoDB数据库查询增量数据,缺点是数据时效性更低,同时会增加MongoDB的查询压力。
内容的提问来源于stack exchange,提问作者NineFingers
相关产品推荐
相关产品推荐

