目前业务的数据都存在 mysql 中,为了做一个搜索模块,故需要将数据冗余一份至 es. mysql 中的数据可以理解为星型模型, 由一个主表 跟 多个副表 关联而成。比如:主表是用户基本信息,副表 1:用户爱好; 副表 2:用户课程; 副表 3:用户历史购物记录。副表跟主表根据 user_id 关联,且副表跟主表都会独自更新。
期望是在 es 中维护一份 mysql 的逻辑视图,因为要做搜索,所以相当于 es 中是一张大宽表。 为了不影响现有业务逻辑,不期望在代码逻辑中双写,可能走数据同步的策略(监听 binlog,做增删改 es 逻辑)
这样的话,如何保证这两份数据的一致性,以及 mysql 更新时 es 的更新时延。大佬们有类似的经验么,望不吝赐教。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.