在前文《南大通用GBase 8a MPP Cluster 产品技术简介(一)》和《南大通用GBase 8a MPP Cluster 产品技术简介(二)》中分别给大家介绍了GBase 8a MPP Cluster的架构以及单节点列存储技术,今天给大家介绍下基于这种架构的并行计算技术。

前文参考:

https://www.gbase.cn/community/post/4209

https://www.gbase.cn/community/post/4218

 MPP大规模并行计算技术

GBase 8a MPP Cluster为非对称部署的联邦架构,三大核心组件均可单独部署,其中GCluster调度集群和GCWare管理最大节点数为64,GNode 计算集群支持1000个以上的节点部署,可处理100PB以上的结构化数据。

1.1大规模并行计算

GBase 8a MPP Cluster采用MPP技术,主要特点有:

1)分布式并行计划器,结合集群特征,对算子行进分布式处理,生成适合的分布式执行计划;

2)通过基于规则和基于代价的优化,保证执行计划的高效;

3)调度器采用异步I/O等技术,确保调度的高效、可靠;

1.2高可用能力

GBase 8a MPP Cluster通过冗余机制来保证集群的高可用特性:

1)可提供1个或3个副本数据冗余(3个副本表示1个主分片和2个备份分片);

2)副本间数据自动同步;

3)复制引擎自动管理数据同步;

4)多分片机制降低节点故障的木桶效应;

5)节点发生故障时,系统自动切换至其它节点进行工作,保证业务连续性;

6)支持双活集群部署。

集群副本数和分片数可进行灵活配置,可配置副本分片到集群的任意一个节点上,可以根据配置在主机性能高和存储空间大的节点分配更多的主本和副本。
当节点出现异常时,可以将异常服务器的负载均匀分布在副本所在的几台正常的服务器上。这样就最大限度防止由于故障切换后木桶效应而引起的显著的性能抖动。
节点故障对应用透明,不会中断正在执行业务,一旦故障节点恢复正常,GBase 8a MPP Cluster会从其他节点上的数据恢复该节点数据,在完成更新后立即提供服务。

南大通用GBase 8a MPP Cluster 产品技术简介(三)_数据

1.3高性能扩展能力

GBase 8a MPP Cluster能够通过增加服务器节点对系统的计算和存储能力进行扩容,支撑成百上千个节点规模的集群,且扩展过程可进行监控、暂停、恢复、取消等灵活的监控及管理;系统支持在线扩展,性能线性提升,无需中断当前系统的运行,且支持一次扩展多个节点;可支持实例级、库级、表级等多级别灵活扩展方式。
GBase 8a MPP Cluster具备高性能扩展能力:

1)在线动态扩展集群节点;

2)每个节点可以处理100TB有效数据,同时提供计算和存储能力;

3)执行调度节点和数据计算节点可以按需独立扩展。

南大通用GBase 8a MPP Cluster 产品技术简介(三)_数据_02

上图中最后一个“执行调度节点”和“数据存储及计算节点”是在原有节点基础上新扩展的节点,可以扩展调度节点,也可以扩展存储和计算节点。因为GBase 8a MPP Cluster采用高性能单节点的MPP架构,因此进行集群扩展时,可以保证平滑扩展和性能的线性增长特性,如下图所示:

南大通用GBase 8a MPP Cluster 产品技术简介(三)_8a_03

1.4高性能数据加载能力

GBase 8a MPP Cluster数据加载功能实现了所有数据计算节点并行处理数据及副本转发技术,具备很高的加载性能:

1)在单台数据服务器的情况下,集群加载可以达到数据服务器硬件资源性能的上限;

2)随着数据服务器和集群节点数的增加,集群加载性能可以持续提升。

南大通用GBase 8a MPP Cluster 产品技术简介(三)_8a_04

1.5 多租户能力

GBase 8a MPP Cluster可以通过虚拟集群技术实现租户间的物理或者逻辑隔离。
在虚拟集群内对计算节点进行分组,形成多个虚拟子集群,每个虚拟子集群在资源上物理隔离,在命名空间上逻辑隔离。虚拟集群为所有子集群提供统一的访问入口、元数据视图、执行调度、认证和权限管理。在一个虚拟子集群的每个计算节点上,通过资源管理和资源组灵活配置不同应用和用户的资源配额和查询优先级。
通过完善的权限授权管理机制下,使得不同的应用运行在不同的虚拟子集群中;同一个应用的不同类型的任务运行在同一个子集群中,但具有不同的资源配额和优先级,相互之间又得到必要的隔离。就好像运行在透明的“沙箱”一样。

1.6 备份和恢复

大数据不仅仅对数据处理和分析查询的性能带来挑战,对备份和恢复的要求也更高。因为数据量巨大,如果备份和恢复的速度跟不上,在意外、故障或灾难发生时,无法及时使数据库得到恢复,系统和业务的可用性就无法得到保障。 
GBase 8a MPP Cluster提供全面的基于实例级、库级、表级的备份和恢复功能,包括: 

1)全量备份和恢复;

2)增量备份和恢复:允许基于任意一个备份点进行数据恢复;

3)支持将数据备份到Hadoop及从Hadoop中恢复数据。

1.7 多实例部署

在一个物理服务器上部署多个data计算节点,每个计算节点称为一个数据库实例。多实例部署示意图如下:

南大通用GBase 8a MPP Cluster 产品技术简介(三)_8a_05

在一个物理机上安装多个计算节点,每个计算节点对应服务器的一个NUMA节点,通过NUMA节点绑定实现CPU、内存等资源隔离和充分使用,规避跨NUMA节点运算带来的性能损耗。通过多实例部署可以有效发挥高配置服务器以及NUMA架构服务器的性能,相比于在一个物理服务器上只部署一个计算节点,能够提升1倍以上的计算性能。

1.8 服务注册机制

随着集群规模的不断扩大,用于集群管理的成本会越来越高。GBase 8a MPP Cluster支持data计算节点服务状态注册机制,data计算节点定期主动向gcware管理集群中注册本地服务状态。该机制可提高data计算节点状态监测的准确性和时效性,降低少量计算节点异常对集群带来的影响。Data节点向gcware注册的信息用途包括:

  • Data节点所属的vc;
  • 用于data节点状态监测的长连接sessionid和节点nodeid;通过注册的sessionid跟踪data节点心跳,心跳中断后gcware管理集群设置该data节点状态为异常;
  • 注册全局一致的重点参数取值,如gbase_compression_str_method、gbase_compression_num_method和gbase_segment_size,同一个VC内的重点参数不一致时无法启动data计算节点的服务。

相信今天的文章能让大家对南大通用GBase 8a MPP Cluster 产品技术有进一步的了解,后续还会为大家介绍一些高级功能或周边工具的使用,大家请期待后续文章,谢谢!