GaussDB关键技术原理:高弹性(五)

GaussDB关键技术原理:高弹性(五)

目录

4.2 日志多流

4.2.1 日志多流总体流程

4.2.2 基线数据传输

4.2.3 日志传输与回放

4.2.3.1 日志流的处理

4.2.3.2 回放的处理

4.2.4 CBI索引相关处理

4.3 事务相关

4.3.1 CLOG拆分

4.3.1.1 事务ID分配及CLOG/CSNLOG

4.3.1.2 CLOG拆分背景

4.3.1.3 CLOG拆分处理可见性判断

4.3.2 xid调整

4.3.2.1 xid调整背景

4.3.2.2 xid调整流程

4.3.3 bucket锁


4.2 日志多流

本节介绍日志多流技术,hashbucket扩容的思路仍然是基线数据加增量数据,其中基线数据为bucket物理文件和bucket级CLOG文件,增量数据采用搬迁增量XLOG并回放日志的方式进行追增。日志多流只在hashbucket扩容期间动态的产生和使用,扩容框架会根据当前正在搬迁的bucket列表,解析并生成对应的日志流用来进行后续的数据追增。

日志多流总体流程由gs_redis_bucket工具下发的MOVE BUCKETS语句触发,

ALTER DATABASE database_name MOVE BUCKETS (bucket_list) FROM sender_dn TO receiver_dn;

MOVE BUCKETS语句中包含如下信息:正在进行扩容重分布的库database_name,本批搬迁bucket列表的bucketlist,老节点为sender_dn,新节点receiver_dn。

如图所示为日志多流示意图。主要涉及三个角色:老节点主DN(下简称老DN),新节点主DN(简称新DN),新节点备DN(简称备DN)。CN收到MOVE BUCKETS命令后转发给老DN和新DN。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值