Kafka生产者vs Kafka连接读取MySQL数据源



我创建了一个kafka生成器,它可以从MySQL数据库中读取网站点击数据流,并且运行良好。我发现我也可以使用kafka-connect或debezium将kafka连接到MySQL数据源。我的目标是使用kafka获取数据,并将其发送给Storm进行消费和分析。看起来这两种方法都可以实现我的目标,但使用kafka-productor可能需要我构建一个不断读取数据源的kafka服务。

对于我的数据管道,这两种方法中哪一种更有效?

我建议不要重新发明轮子并使用Debezium(免责声明:我是它的项目负责人(。

它具有丰富的功能(支持的数据类型、配置选项、可以进行初始快照等(,并且在生产中经过了良好的测试。另一个需要记住的关键方面是,Debezium是基于读取DB的日志而不是轮询的(你可能会在你的生产者中做同样的事情,这个问题还不清楚(。与轮询相比,这提供了许多优势:

  • 低频轮询无延迟,高频轮询无CPU负载
  • 可以捕获所有更改,而不会错过两次轮询之间的一些更改
  • 可以捕获删除
  • 对模式没有影响(不需要列来标识更改的行(

最新更新