weekly icon indicating copy to clipboard operation
weekly copied to clipboard

【开源软件自荐】redis跨集群/实例 实时数据同步工具

Open ikenchina opened this issue 1 year ago • 0 comments

经常会有一些需求需要进行跨集群,跨实例进行数据实时同步、数据迁移、数据拆分与合并。 我们开源了公司基础架构团队开发的一款这样的redis数据治理的产品。 仓库地址:https://github.com/mgtv-tech/redis-GunYu 欢迎大家star,PR

从产品需求上,对redis-GunYu和几个主流工具进行比较

功能点 redis-shake/v2 DTS xpipe redis-GunYu
断点续传 Y(无本地缓存) Y Y Y
支持分片不对称 N Y N Y
拓扑变化 N N N Y
高可用 N N Y Y
过滤 Y Y Y Y
数据一致性 最终 最终(分片对称) + 弱(不对称)

大禹还有哪些优势呢?

  • 对稳定性影响更小

    • 复制优先级:可指定优先从从库进行复制或主库复制
    • 本地缓存 + 断点续传:最大程度减少对源端redis的影响
    • 可以对RDB中的大key进行拆分同步
    • 更低的复制延迟:在保证一致性的前提下,并发地进行数据回放
  • 数据安全性与高可用

    • 本地缓存支持数据校验
    • 工具高可用:支持主从模式,以最新记录进行自主选举,自动和手动failover;工具本身P2P架构,将宕机影响降低到最小
  • 对redis限制更少

    • 支持源和目标端不同的redis部署方式,如cluster或单实例
    • 兼容源和目的redis不同版本,支持从redis4.0到redis7.2
  • 数据一致性策略更加灵活,自动切换

    • 当源端和目标端分片信息一致时,采用伪事务方式批量写入,实时更新快照信息,最大可能地保证一致性
    • 当源端和目标端分片不一致时,采用定期更新快照信息
  • 运维更加友好

    • API:可以通过http API进行运维操作,如强制全量复制、同步状态、暂停同步等
    • 监控:监控指标更丰富,如时间与空间维度的复制延迟指标
    • 数据过滤:可以对key、db、命令等进行过滤
    • 拓扑变化监控:实时监听源和目标端redis拓扑变更(如加减节点,主从切换等等),以更改一致性策略和调整其他功能策略

ikenchina avatar May 22 '24 01:05 ikenchina