VastbaseG100-集群介绍

时间:2022-08-12 00:35:14

高可用介绍

数据库高可用集群是一组计算机,他们作为一个整体向用户提供数据库服务,
当主服务器出现故障时,可以将该服务器中的服务、资源、IP等转移到另一台服务器上,从而满足业务的持续性。
Vastbase利用HAS+DCS组件,基于流复制方式同步主库数据应用wal日志,最终持久化存储。部署形态:一主一备,一主两备

逻辑架构 VastbaseG100-集群介绍

最佳实践

最佳实践:建议使用一主两备架构,使用同步复制+异步复制

组件介绍 HAS V2.0 新特性 1、支持使用配置文件自动化部署Vastbase或openGauss高可用集群 2、支持集群内主备关系切换时自动切换 VIP 绑定关系 3、支持集群内部署级联备 VastbaseG100-集群介绍

流复制

一、优势
    1.实例级别复制
    2.DDL复制
    3.一致性、可靠性高
二、核心线程
    1.主库walsender线程是用来发送WAL日志记录
    2.备库walreceiver线程是用来接收WAL日志记录
    3.备库startup线程用于从库apply日志

逻辑图 VastbaseG100-集群介绍

流复制启动过程 1.数据库启动,备库启动startup,walreceiver线程,wal线程向主库发送连接请求。 2.主库收到连接请求后启动walsender线程,并与walreceiver线程建立tcp连接。 3.备库walreceiver线程发送最新的wal lsn给主库。 4.主库进行lsn对比,定期向备库发送心跳信息来确认备库可用性,并且将没有传递的wal日志进行发送, 同时调用SyncRepWaitForLSN()函数来获取锁存器,并且等待备库响应,锁存器的释放时机和主备同步模式的选择有关。 备库调用write()函数将wal写入缓存,然后调用fsync()函数将wal刷新到磁盘,然后进行wal回放。 5.备库向主库返回ack信息,ack信息中包含write_lsn、flush_lsn、replay_lsn用以告知主库当前wal日志在备库的应用位置及状态

复制模式

异步流复制:主库提交的事务不会等待备库接收WAL日志流并返回ACK,因此会存在一定的处理延迟(毫秒级)该模式为默认模式。 
同步流复制:主库把WAL日志写入磁盘,同时等待WAL日志记录复制到备库、并且WAL日志记录在任意一个备库写入磁盘后返回Commit结果。
          一旦所有备库故障,在主库的应用操作则会被挂起,所以此方式建议是1主2备。

VastbaseG100-集群介绍