Elasticsearch 跨集群同步
高可用架构
ZSearch是目前公司内最大的Elasticsearch服务平台,随着业务的深入,越来越多的关键链路用户对数据的可用性和容灾能力提出更高的需求,而在这块领域 社区一直没有完整的解决策略,原生的 Snapshot And Restore 只能做快照的恢复,不能做到实时同步;业内主流的队列分发模式(通过消息队列缓存请求数据,多个集群消费数据实现请求复制)也只能做到请求的同步,一个不可预期的操作如delete_by_query 集群间便会产生数据差异。归根到底我们需要一个类似Mysql的binlog同步方案, 从底层机制上保证数据的最终一致性,为此 ZSearch核心团队经过数月源码研究 精心打造了Elasticsearch-XDCR,一款基于translog原生复制协议的跨集群同步产品。
