DM8大规模并行处理MPP产品介绍

DM8大规模并行处理MPP产品介绍

DM8 MPP是一种并行数据库。并行数据库要求可能并行执行所有的数据库操作,从而提高数据库系统的性能。根据所在计算机的处理器、内存及存储设备的相互关系,并行数据库可归纳为三种基本的体系架构:共享内存结构(Shared-Memory)、共享磁盘结构(Shared-Disk)和无共享资源结构(Shared-Nothing)。
 Shared-Memory
简单的说,Shared-Memory是指一套系统中有多个处理器、一个共享内存以及多个磁盘存储,所有的处理器通过高速通信网络连接共享内存和磁盘存储。在并行数据库领域,Shared-Memory结构很少被使用。
 Shared-Disk
在Shared-Disk结构中,同样包含多个处理器,每个处理器有自身独立的内存,各个处理器之间不同过内存产生信息和数据交换。处理器与磁盘存储通过高速网络进行通信。Oracle的RAC集群就是典型的Shared-Disk结构。
 Shared-Nothing
Shared-Nothing结构由多个完全独立的处理节点构成,每个处理节点有自己处理器、内存和磁盘存储,各个节点之间采用高速网络通信。该结构的典型代表有Greenplum、MySQL集群等。DM8 MPP也使用了这种结构。
通常,采用Shared-Nothing结构的MPP数据库由控制节点(Master)和计算节点(Segment)构成,控制节点和计算节点在系统运行期间不可改变身份。而DM MPP数据库采用了完全对等无共享架构体系,没有设立独立的控制节点,当客户连接到某个计算节点时,这个计算节点在本次连接中,会承担起控制节点的事务。DM MPP的请求执行流程如下:
用户选择一个计算节点(在DM中称为EP)登录,此时这个EP就是这次连接中的主EP,集群中的其他EP都是从EP,主EP也是自身的从EP;

  1. 主EP接收用户的SQL请求,生成执行计划
  2. 主EP将执行计划分发给从EP
  3. 从EP各自执行,并在必要的时候与其他节点进行数据交换
  4. 主EP收集各个从EP的执行结构
  5. 主EP对结果进行必要的排序、聚集等操作后,返回结果给用户
    对于分布式数据库,必然存在数据分布的问题。DM MPP数据库支持哈希分布、随机分布、复制分布、范围分布和LIST分布,用户可根据应用的实际情况为表数据选择合适的分布类型。各个分布策略的介绍和优缺点如下:
     哈希分布
    哈希分布按照表定义中指定的一列或多列对行数据计算一个哈希值,再根据哈希值和哈希映射表,将该行数据分布到映射的节点上。
    当表的连接查询中使用的连接键为哈希分布列时,MPP 下的查询计划会进行优化,比如可能减少计划中通讯操作符个数、使用索引、对分组计划优化等,减少数据在节点间的分发,提高查询效率。
    使用哈希分布时,节点间的数据是否均衡,取决于设置的哈希分布列以及表中的数据情况。当节点个数变动时,各个节点的数据需要按照新的哈希映射表重新进行分发。
     随机分布
    随机分布表不存在分布列,插入表数据时会按照一定的随机算法,将数据随机均衡分布到各个节点。
    随机分布的优点是数据和节点间不存在映射关系。节点个数变动后,如果没有节点数据均衡的要求,可以不用对节点现有的数据进行变动。
    一般来说,随机分布对于复杂查询及存在较多的节点间数据分发情况,性能不如哈希分布高。
     复制分布
    复制分布表在每个节点上的本地数据都是一份完整的拷贝,查询该表数据时在任意节点上都能单独完成,不需要从其他节点获取数据。
    复制分布一般用于数据量不是很大的表。
     范围分布
    范围分布按照表定义中指定的一个或多个列的列值范围分布项,决定将一行数据存储到MPP 的哪个相应 EP 上。
     LIST分布
    LIST 分布通过指定表中的一个或多个列的离散值集,来确定将一行数据存储到 MPP 的哪个相应 EP 上。此分布用于表中列值可列举的情况。
    DM8大规模并行处理MPP产品介绍
    DM8 MPP是一种并行数据库。并行数据库要求可能并行执行所有的数据库操作,从而提高数据库系统的性能。根据所在计算机的处理器、内存及存储设备的相互关系,并行数据库可归纳为三种基本的体系架构:共享内存结构(Shared-Memory)、共享磁盘结构(Shared-Disk)和无共享资源结构(Shared-Nothing)。
     Shared-Memory
    简单的说,Shared-Memory是指一套系统中有多个处理器、一个共享内存以及多个磁盘存储,所有的处理器通过高速通信网络连接共享内存和磁盘存储。在并行数据库领域,Shared-Memory结构很少被使用。
     Shared-Disk
    在Shared-Disk结构中,同样包含多个处理器,每个处理器有自身独立的内存,各个处理器之间不同过内存产生信息和数据交换。处理器与磁盘存储通过高速网络进行通信。Oracle的RAC集群就是典型的Shared-Disk结构。
     Shared-Nothing
    Shared-Nothing结构由多个完全独立的处理节点构成,每个处理节点有自己处理器、内存和磁盘存储,各个节点之间采用高速网络通信。该结构的典型代表有Greenplum、MySQL集群等。DM8 MPP也使用了这种结构。
    通常,采用Shared-Nothing结构的MPP数据库由控制节点(Master)和计算节点(Segment)构成,控制节点和计算节点在系统运行期间不可改变身份。而DM MPP数据库采用了完全对等无共享架构体系,没有设立独立的控制节点,当客户连接到某个计算节点时,这个计算节点在本次连接中,会承担起控制节点的事务。DM MPP的请求执行流程如下:
    用户选择一个计算节点(在DM中称为EP)登录,此时这个EP就是这次连接中的主EP,集群中的其他EP都是从EP,主EP也是自身的从EP;
  6. 主EP接收用户的SQL请求,生成执行计划
  7. 主EP将执行计划分发给从EP
  8. 从EP各自执行,并在必要的时候与其他节点进行数据交换
  9. 主EP收集各个从EP的执行结构
  10. 主EP对结果进行必要的排序、聚集等操作后,返回结果给用户
    对于分布式数据库,必然存在数据分布的问题。DM MPP数据库支持哈希分布、随机分布、复制分布、范围分布和LIST分布,用户可根据应用的实际情况为表数据选择合适的分布类型。各个分布策略的介绍和优缺点如下:
     哈希分布
    哈希分布按照表定义中指定的一列或多列对行数据计算一个哈希值,再根据哈希值和哈希映射表,将该行数据分布到映射的节点上。
    当表的连接查询中使用的连接键为哈希分布列时,MPP 下的查询计划会进行优化,比如可能减少计划中通讯操作符个数、使用索引、对分组计划优化等,减少数据在节点间的分发,提高查询效率。
    使用哈希分布时,节点间的数据是否均衡,取决于设置的哈希分布列以及表中的数据情况。当节点个数变动时,各个节点的数据需要按照新的哈希映射表重新进行分发。
     随机分布
    随机分布表不存在分布列,插入表数据时会按照一定的随机算法,将数据随机均衡分布到各个节点。
    随机分布的优点是数据和节点间不存在映射关系。节点个数变动后,如果没有节点数据均衡的要求,可以不用对节点现有的数据进行变动。
    一般来说,随机分布对于复杂查询及存在较多的节点间数据分发情况,性能不如哈希分布高。
     复制分布
    复制分布表在每个节点上的本地数据都是一份完整的拷贝,查询该表数据时在任意节点上都能单独完成,不需要从其他节点获取数据。
    复制分布一般用于数据量不是很大的表。
     范围分布
    范围分布按照表定义中指定的一个或多个列的列值范围分布项,决定将一行数据存储到MPP 的哪个相应 EP 上。
     LIST分布
    LIST 分布通过指定表中的一个或多个列的离散值集,来确定将一行数据存储到 MPP 的哪个相应 EP 上。此分布用于表中列值可列举的情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值