0 GBase 8a MPP Cluster 数据库核心技术
2021-08-25 20:05 那个,我 阅读(305) 评论(0) 编辑 收藏 举报正在参与南大通用线上培训,记笔记如下
数仓系统:南大通用大规模分布式数据库集群系统,NewSQL分析性数据库
培训地址 https://edu.gbase.cn/detail/term_610770517282c_OZ0qR5/25
一、数据存储
1. 列式存储
以DC为存取单位;
存为DC文件;
DC文件以操作系统文件大小限制分裂和存储;
查询涉及到的DC才产生I/O;
每个DC包含65536行;
行数不足则以DC尾块形式存放,不封装为DC,且不压缩。
2. 压缩存储,压缩比可达1:20;实现库、表、列三种压缩选项;自动选择最有压缩算法;压缩方式可修改;
3. 智能索引,粗粒度智能索引;自动建立和更新;索引表记录每个DC的最大,最小,和值,空值等信息。
二、并行计算
1. 节点内多线程并行
2. 多节点并行
三、集群高可用
1. 管理节点高可用
GCcluster元数据自动同步;
GCware实时探测失效节点,并自动故障切换,SQL不中断;
重新拉起的调度节点读取GCware日志,恢复元数据并重新作为主节点;
故障节点数达到或超过1/2时,集群停止。
称为联邦架构
2. 数据节点高可用
数据高可用:支持最多2副本,支持指定副本位置。
多分片机制:负载均衡,解决木桶效应。防止某节点故障,另一个节点承担双倍压力。
场景:1节点有3主分片,2节点保存a副分片,3节点保存b副分片,4节点保存c副分片,1节点宕机,其他节点平均承担压力
四、数据集成
1. 数据集成,支持多种数据源加载
关系型数据库通过CDC+Kafka实时消费到8a
手机,平板,IoT通过Flume流式加载到Kafka消费到8a
FTP/HTTP/HDFS 批量加载到8a
2. 数据加载
Load data infile 'ftp://' into table xxx data_format 3 Fields Terminated by '|';
管理节点GCcluster调用数据加载SQL,数据节点并行批量加载,再内部协调数据归属,走内部数据高速交换网络
加载只写主分片,副本后台自动同步
加载速度:30T+/小时
集群加载速度随节点数增加而增加
3. 数据导出
select方式所有节点并行导出
支持远程导出数据,表结构,过程,函数。
支持普通文本,定长文本,压缩文件,HDFS文件导出
Select into outfile 'HDP://'
五、集群扩展
1. 在线扩、缩容
分片搬移
重建分布信息表,重新分布数据
不停服务
2. VC管理
虚拟集群
集群独立,互访
VC弹性扩缩容:HR_VC释放Nodes -> Free Nodes -> Finance_VC
3. 线性动态扩展
增加节点 Scale Out(MPP)
节点升级、替换 Scale Up(SMP)
六、安全管理
1. '动态'数据脱敏
权限控制
指定脱敏字段
多种脱敏方式
默认default()
随机random(start,end)
自定义partial(prefix,padding,suffix)
哈希sha()
2. 透明加密
后台自动加解密
性能影响<5%
面向数据列
3. 监控工具
集群状态
会话信息
资源利用率
网络监控
等
学习如茶,需细细品味。