分布式数据库的高可用实现,Greenplum是如何做到的

本文介绍了分布式数据库Greenplum如何实现高可用性,包括通过同步复制和异步复制确保数据冗余,详细阐述了在primary和mirror节点故障时的恢复机制,并提到了相关运维工具如gpactivatestandby和gprecoverseg。
摘要由CSDN通过智能技术生成

获得技术资料内容,请访问Greenplum中文社区网站

什么是高可用

高可用HA(High Availability)是分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计减少系统不能提供服务的时间。假设系统一直能够提供服务,我们说系统的可用性是100%,很多公司的高可用目标是4个9,也就是99.99%,这就意味着,系统的年停机时间为0.876个小时。

如何做到高可用

高可用系统最大的劲敌就是单点故障。任何一个单点故障都是不可避免的,如果系统是单点架构的,当单点出现故障则会导致系统不可用。所以,实现高可用的本质就是冗余。冗余部署服务,当单点出现故障后,及时发现并用备份系统替换。

Greenplum高可用的实现

Greenplum是一个高可用数据库系统,同样是通过冗余部署来实现高可用。

Greenplum系统中包含了一个主节点和若干个子节点。Greenplum正是通过对每个节点提供冗余来实现高可用。在数据库系统里,通过复制技术来实现冗余。

复制

Greenplum通过复制来实现冗余。在执行写操作时,会产生xlog事务日志。xlog既可以作为数据库Crash时进行数据恢复的依据,同时也可以作为增量更新传递给从节点。xlog存储在数据目录的pg_xlog目录下。

在主节点上会存在wal-sender进程,从节点上会存在wal-receiver进程,wal-sender进程会将产生的写日志同步给wal-receiver进程来实现冗余。

 

d0ee203b-8b0a-450d-8a7f-ed7024ca8ba4.jpg

 

Primary节点和Mirror节点上的wal sender和wal receiver进程可以通过ps命令看到

dead978c-83de-4aee-bc50-71f29199adb7.png

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值