Primary - Mirror 分布策略

本文档介绍了 YMatrix 数据库系统中的三种镜像分布策略,包括散列镜像分布(Spread Mirroring)组镜像分布(Group Mirroring)环状镜像分布(Ring Mirroring)

YMatrix 默认使用镜像分布策略(Ring Mirroring)

注意!
Mirror 机制在生产环境中强烈建议开启。

功能简介

在部署 YMatrix 数据库系统时,可以选择在主机上配置镜像节点(Mirror)。

  • 功能:
    • 当数据主节点(Primary)宕机的时候,Mirror 可以将数据库查询转移到备份节点上。
    • Mirror 通过将数据从 Primary 同步到 Mirror 的事务日志复制进程保持同步。
  • 最佳实践:
    • 每个 Mirror 节点实例必须与其对应的 Primary 节点实例部署到不同的机器,以防止单机故障带来的影响。

分布策略介绍

散列镜像分布(Spread Mirroring) 组镜像分布(Group Mirroring) 环状镜像分布(Ring Mirroring)
系统稳定 不稳定 稳定 较稳定
负载均衡 均衡 不均衡 较均衡

1 散列镜像分布(Spread Mirroring)

散列镜像分布(Spread Mirroring)是把每台主机的 Mirror 散布到集群中剩余的主机上,并要求集群中的主机数量大于每台主机上的 Primary 数量。

为确保平均散布,阵列中独立主机的数量必须大于每台主机上的节点示例数量。

  • 下图展示了在四台主机上有三个 Primary 的集群的散列镜像分布配置。

2 组镜像分布(Group Mirroring)

组镜像分布(Group Mirroring)是把同一个主机上的 Primary 的所有 Mirror 看作一组,一同放置在集群中的另一台主机上。

  • 下图展示了在四台主机上有四个 Primary 的集群的组镜像分布配置。

3 环状镜像分布(Ring Mirroring)

环状镜像分布策略(Ring Mirroring)是在至少有两台主机的情况下,将一个主机中的 Primary 序号序列看作一个一维纸带,从中间对折,然后在另外的主机上从对折的中间序号为起点,顺时针均匀排列 Mirror 到其他主机。 扩容增加新的 Primary 不会影响之前已分布完成的镜像闭环,而是开启一个新的镜像环。

下图展示了在三台主机上有四个 Primary 的集群的环状镜像分布配置。

注意!
如果你想要在 YMatrix 中使用除环状镜像分布(Ring Mirroring)以外的镜像分布策略,可以通过自定义配置 mxaddmirrors 实现。