1、GBase 8a MPP Cluster介绍
全称“南大通用大规模分布式并行数据库集群系统”。它是为超大规模数据量而设计的通用计算平台,具备高性能、高可用、高扩展特性。
2、核心技术
2.1 数据存储
2.1.1 列存储技术
- 表的每一列物理上分开存储;
- 数据已DC(数据单元)为单位进行组织,存成DC文件;
- DC文件依据操作系统的文件大小限制进行分裂和存储;
- DC是基本I/O单位,只有查询所涉及到的列才产生I/O;
- 每个DC包含65536行数据,数据行数不足时已DC尾块形式单独存放;
- DC尾块不封装不压缩;
2.1.2 高效压缩
GBase 8a MPP Cluster数据库内置多种压缩算法,基于一列内同类型数据,实现高压缩比存储
- 较高的压缩比,为海量数据的存储节省了存储投资和电能消耗;
- 压缩态数据使得数据处理过程中,大幅降低磁盘IO;
- 压缩比可达
1:20
,远远高于行存储; - 实现库级、表级、列级
三级压缩选项
; - 压缩算法按数据类型和数据分布不同而优化,
自动选择最优压缩算法
,灵活平衡性能与压缩比关系; - 可以对压缩方式进行修改;
2.1.3 粗粒度智能索引
粗粒度
:轻量级索引,索引的建立和维护对系统资源的占用和性能影响几乎为0;通明性
:索引自动建立,并且随数据变化自动更新,无需人工干预;有效性
:大大缩小查询和数据物化的范围,迅速定位目标数据集;
2.2 并行计算
2.2.1 单节点多线程并行计算
2.2.2 MPP多节点并行计算
集群采用MPP大规模集群架构,每个节点都有独立的CPU、内存和磁盘,因此每个节点都是独立运算,最终将结果进行汇总返回给最开始的Hash节点。
2.3 集群高可用
2.3.1 管理节点高可用
元数据自动同步,避免单点故障
– 所有调度集群节点的元数据都在后台自动同步,对用户透明;自动故障倒换,SQL持续运行
– GCware服务实时探测节点失效并且马上启动故障倒换机制;多类日志保障,节点信息同步
– 重新恢复调度节点根据GCware日志信息恢复到最新的元数据;限定故障规模,保证数据安全
– 当调度集群大规模节点故障,达到或超过调度集群节点总数的1/2时,集群为保护元数据安全将停止工作;
2.3.2 数据节点高可用
指表数据按照一定的规则分别存储在不同的节点上,各节点根据预先设定的分片规则进行备份
数据高可用
– 支持多副本,最多两个;
– 支持指定副本存放位置;多分片机制
– 实现负载均衡;
– 解决木桶效应;
2.4 数据集成
2.4.1 数据集成
- GBase 8a MPP支持多种数据源的加载和同步操作;
- 通过和Kafka系统无缝集成,GBase 8a MPP实现和主流关系型,非关系型数据库的实时接入流式加载;
2.4.2 批量加载
- 简单易用
– sql方式下发加载命令;
– 支持ftp、http、hadoop等多种数据源; - 高性能
– 加载只写主分片,副本内部自动同步,性能大幅提升;
– 加载速度:30T+/小时 - 可扩展
– 集群整体加载吞吐能力随节点数增加而线性提升;
2.4.3 数据导出 - 查询数据导出
– 通过select语句的形式导出数据;
– 支持普通文本、定长文本、压缩文件、HDFS文件导出;
– 支持远程导出; - 表结构导出
– 导出表结构;
– 导出存储过程;
– 导出自定义函数;
2.5 集群扩展
2.5.1 在线扩容/缩容
分片搬移方式扩容和缩容,扩容和缩容过程中无需停止服务器。
2.5.2 VC管理
- 业务和数据减少,在线弹性缩容;
- 释放节点进入到Free Nodes 列表;
2.5.3 线性动态拓展
2.6 安全管理
2.6.1 动态数据脱敏
- 用户权限控制
- 指定脱敏属性字段
- 多种脱敏方式
– 默认脱敏 default();
– 随机脱敏 random(start,end) ;
– 自定义脱敏 partial(prefix,padding,suffix);例:设定prefix=3,suffix=6,padding=“XXXX”
– 哈希脱敏 sha();
2.6.2 高效透明加密
- 透明加密/解密
– 数据在后台自动加密和解密; - 轻量级数据加密/解密
– 加解密负载对整体性能影响小于5% - 面向数据列的加密/解密
– 根据数据字段的安全级别进行加密;
2.6.3 图形化管理监控系统
- 监控集群运行状态
- 监控资源利用情况
- 监控网络通询情况