Es 订单系统
2021-09-02 09:39:41 10 举报
ES订单系统设计三种架构模型
作者其他创作
大纲/内容
canal
详情
定时任务
更新
查询数据
业务服务
同步服务
ElasticSearch
1/不将订单及其扩展字段全量同步到ES,会影响检索效率,只同步有强搜索需求的字段;2/将订单及其关联表聚合成一张宽表,提升ES查询时的效率;
es更新服务
同时更新数据到数据库和ES中
数据库
下单
查询
更新数据
将订单及其关联表聚合成一张宽表,全量同步到ES
优点:简洁明了,能够灵活控制数据的写入缺点:1/与业务耦合严重,强依赖于业务系统的写入方式2/数据表被更改,比如修数据情况,业务消息不会触发,3/可能因为增加链路而影响业务
DB
优点:业务与ES数据耦合低,业务逻辑中不需要关心es数据的写入缺点:binglog模式只能使用row模式,引入了新的同步服务,增加开发量以及维护成功,增大了ES同步的风险
数据变更信息
1/扫描表fail_es_update
搜索
写入数据
binlog
如果更新ES失败(发生错误或异常),记录数据到数据库中fail_es_update
2/扫描出来的数据和es对比,如果不存在查询订单表重新更新es
收藏
收藏
0 条评论
回复 删除
下一页