GreenPlum中的镜像的分步策略介绍(group、spread和Block Mirroring)

0    165    2

Tags:

👉 本文共约3451个字,系统预计阅读时间或需13分钟。

简介

在 Greenplum 数据库中,镜像(mirroring)是一种用于确保数据高可用性的机制。每个数据分片(segment)都有一个主节点(primary)和一个或多个镜像节点(mirror),当主节点出现故障时,镜像节点可以接管工作。

Greenplum 提供了两种标准的镜像分布策略:group 和 spread。

  • Group mirroring — 每台主机镜像另外机器的主segment。这是 gpinitsystem和gpaddmirrors的默认选项。
  • Spread mirroring — 镜像分散分布在另外的机器上。这要求集群中的主机数量多于每台主机上的 segment实例数量。

在下面的架构中,每个节点有8个主实例和8个备实例,采用GROUP策略(默认),将8个备实例全部放在另一台服务器上,如果一台服务器down了,另一台服务器上的镜像就会启动工作,这样的话该节点就相当于16个数据库实例在运行。相比其他运行8个数据库实例的节点,性能下降一半

如果是采用SPREAD策略,则3个备实例是分别处于其他3台服务器上,这种策略相对于GROUP策略的性能下降没有那么严重,但是发生主备同时down的几率更大,更容易导致数据库不可用(只要有1对主备实例都down了就会不可用),相对没有那么稳定,这就需要根据实例需要选择某一个策略。

下面的图显示了一个在四台主机上带有八个主segment的group mirroring配置。

GROUP策略:

img

除非同一个segment实例的主segment和镜像都出现故障,最多可以有一半的主机故障并且集群将继续运行,只要 资源(CPU、内存和IO)足以满足需求。

任何主机故障将会让性能退化一半以上,因为具有镜像的主机将承担两倍的活动主segment。如果用户的资源利用 通常会超过50%,用户将不得不调整其负载,直至故障主机被恢复或者替换。如果用户通常的资源利用低于50%,则 集群会继续以退化的性能水平运行,直至故障被修复。

SPREAD策略:

通过spread mirroring,每台主机的主要Segment的镜像被散布在若干台主机上,涉及到的主机数量与每台主机上 segment数量相同。在集群初始化时设置spread mirroring很容易,但是要求集群中的主机数至少为每台主机上的 segment数加一。

下面的图展示了一个在四台主机上有三个主segment的集群的spread mirroring配置。

img

扩展使用spread mirroring的集群要求更多的规划并且可能会花费更多时间。用户必须要么增加一组数量等于每台 主机上主segment数加一的主机,要么在group mirroring配置中增加两个节点并且在扩展完成后移动镜像来重建 spread mirror配置。

对于单主机故障,spread mirroring的性能影响最小,因为每台主机的镜像都散布在多台主机上。负载的增加是 1/Nth,其中N是每台主机上主segment的数量。如果两台以上主机同时故障,spread mirroring 是最有可能遭受到灾难性故障的配置方案。

Group 策略

Group 策略将镜像节点和其对应的主节点放在同一个故障组(failure group)内。一个故障组通常对应于同一台物理主机或者相同的机架。使用这种策略的主要目的是为了数据的本地化和优化 I/O 性能。

Spread 策略

Spread 策略将镜像节点分布到不同的故障组中。故障组可以是不同的物理主机、机架,甚至是数据中心。这种策略的主要目的是提高数据的容错性和可用性。

现有集群查询镜像模式

Block mirroring

Block mirroring是一种自定义镜像配置,它把集群中的主机划分成相等尺寸的块并且在块内的主机上均匀 地分布镜像。如果一个主segment故障,其在同一个块的另一主机上的镜像会变成活动的主segment。如果一台segment 主机故障,在该块中其他每一台主机上的镜像segment都会变成活动segment。

对于block mirroring,节点被划分成块,例如具有四台或者八台主机的块,而每台主机上segment的镜像被放置在 块中的其他主机上。根据块中主机的数量以及每台主机上主segment的数量,每台主机会为其他每一台主机的segment 维护超过一个镜像。

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复