通过kafka与mysql事件进行复制

kqqjbcuj  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(422)

我需要维护一个外部数据库的副本(包括一些额外的派生数据)。对于同一组硬件,以下哪种解决方案可以提供更快的一致性(低延迟)和高可用性?假设以每秒1000条记录的速度更新外部数据库。
a) 使用mysql 5.7复制(二进制日志文件机制)创建外部数据库的本地mysql副本。

b) 从外部系统获取实时kafka事件,执行httpget获取更新的对象细节,并使用这些细节来维护本地mysql副本。

7z5jn7bk

7z5jn7bk1#

我不喜欢用“用这个奇怪的东西来代替”来回答问题,但我确实担心你的装备有点太重了,可能你需要——或者你需要,我看错了。
考虑一下像serf.io这样的八卦工具。它几乎完成了,可以给你什么,你可能需要的东西比Kafka集群或mysql对轻。

bogh5gae

bogh5gae2#

第一种方法几乎肯定会降低滞后(因为只有两个系统而不是三个)。可用性大致相同—kafka是高可用性,但两边都有两个数据库。
如果您认为您希望将数据实时发送到其他系统,那么第二种方法更好。即:mysql1->kafka->(mysql2+elastic search+cassandra+…)

相关问题