集群的高可用机制说明

数据高可用的保障机制包括主副本机制、gcrecover机制、failover机制等,它们共同确保GBase 8a MPP的数据高可用。

1. 主副本机制:
存储层提供的高可用保障,是数据高可用的基础。

2. gcrecover机制:
执行层提供的数据高可用保障,是一种事务补偿机制,保障数据的最终一致性;与基于事务日志的强一致系统不同,8a MPP采取的是最终一致性(2PC+事务补偿),以获得更好的执行效率。

3. failover机制:
一致性服务层(corosync)提供的数据高可用保障,属于集群层的末端保护,确保集群写操作在极端异常情况下的数据一致性;failover是一种数据高可用的保障机制,用来保障集群异常(发起节点gclusterd crash、发起节点掉电、集群整体crash等)情况下的数据一致性。

GBase的索引及原理

GBase 8a分别支持智能索引与Hash索引

智能索引
智能索引为数据库自动维护,智能索引是每个DC包中记录的该DC包中数据的检索信息,包括null值个数、最大最小值等信息;

HASH索引
HASH索引可以根据业务场景需求自定义

GBase的数据块分布原理以及数据倾斜度计算

支持三种数据分布方式:Hash分布、随机分布、复制表。

HASH分布
对于HASH分布,数据按照HASH桶分堆的方式进行,对分布列取HASH值后均匀的分为65536个HASH桶,然后将65536个HASH桶再均分到各集群节点。
随机分布
为数据均匀的分布到各集群节点;复制表,为所有节点上都存储一份完整数据。
数据倾斜
通常是由于某些HASH取值的占比较大,造成存储这些HASH取值数据的节点上存储了较多数据。
数据倾斜度计算:按照表在各节点的数据文件大小比值来计算倾斜度。