咨询一个 mysql 两个表更新同步到 es 的问题

165 天前
 op1sreal

mysql 有两个表 article 和 articlecontent,两个表有关联,但不会同步变更,两个表的变更也互不影响,需求是使用 flink 整合两个表(join)为一个大宽表保存到 es,希望任何一个表变更时 es 都能同步变更,问下 flinkcdc+双流 join 如何能处理这种场景呢?两个表都不是很大,形成两个动态表是不是可以?或者是不是 flinkapi 写更方便一些?目前没有 redis 和 hbase,怎么样既能满足实时性,又可以不对 mysql 造成压力?谢谢大家

1648 次点击
所在节点    数据库
3 条回复
iamzcr
165 天前
找监听 binlog 的插件去监听变更,让插件直接同步到就到消息中间件

监听插件推荐使用 debezium ,支持监听多种数据库的变更日志到 kafka ,再消费到对应的下游,目前再用,暂时没发现有什么问题 https://github.com/debezium/debezium
iamzcr
165 天前
@iamzcr 宽表在消费端做清洗,而且后面想换 OLAP 的时候,可以平滑去切换,只需要处理消费端的东西就好了。
MIUIOS
165 天前
debezium 或者 canal ,canal 速度更快一点也灵活一点,另外如果你上了 es ,就不用考虑实时性这个问题了,因为 es 本身就是准实时的,伪命题了, 你如果对查询实时性要求非常高的场景,这套方案肯定不行的,如果你是做准实时性检索那就没啥问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1126007

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX