DM8 MPP集群搭建

MPP集群

MPP系统架构

   当前主流的数据库系统架构有完全共享、共享存储、完全不共享和完全对等不共享几种。 其中完全共享体系如 SMP 服务器,局限于单节点服务器,通常价格比较昂贵,其扩展 性和性能受到相应的限制。 共享存储体系允许系统带有多个服务器实例,这些实例均与共享存储设备相连。这种体 系可实现多机并行,保证系统的高可用性,但需要通过一个数据管道将所有 I/O 信息过滤 到共享存储子系统,对硬件的要求较高,且并非高性能解决方案。 与此相比,基于硬件的数据仓库平台一般采用完全无共享体系。在这种体系下,通讯功 能部署在一个高宽带网络互连体系上,用户通过一个主控制节点执行并行查询。该体系的一 个重要优势就是每个节点都有一个通往本地磁盘的独立通道,不但简化了体系,还提供良好 的扩展性。但主控节点的存在使得系统规模扩张时主控节点可能成为系统瓶颈,且主控节点 一旦发生故障这个系统将无法提供服务。 DM MPP 采用的完全对等无共享体系架构,结合了完全无共享体系的优点,在此基础上 又前进了一步,不采用增加主控制节点来协调所有并行处理的主从式方法,而是各个节点完 全对等,更进一步简化了体系的实现,也消除了系统可能存在的主节点瓶颈问题。

DM MPP 中的每一个 DM 数据库服务器实例作为一个执行节点,简称 EP。客户端可连接 任意一个 EP 节点进行操作,所有 EP 对客户来说都是对等的。 DM MPP 系统内每个 EP 只负责自身部分数据的读写,执行计划在所有 EP 并行执行, 能充分利用各 EP 的计算能力及发挥各 EP 独立存储的优势。数据只在必要时通过 DM 的高 速邮件 MAL 系统在 EP 间传递。当通信代价占整体执行代价的比例较小时,更能体现大规模 并行处理的优势,随着系统规模的扩大,并行支路越多,优势越明显。

原理概述

在 DM MPP 中,数据根据用户指定的分布规则分布在不同的 EP 上。MPP 的核心在于对 用户请求的并行执行,其执行流程可简单描述如下:

 1. 用户选择一个 EP 登录,此时该 EP 就是此用户的主 EP,集群中的其余 EP 都是此 用户的从 EP;

 2. 主 EP 接受用户的 SQL 请求,并生成并行执行计划;

 3. 主 EP 将计划打包后分发给其他从 EP;

 4. 各 EP 并行执行;

 5. 主 EP 收集各 EP(包括自己)的执行结果;

 6. 主 EP 将执行结果汇总后返回给用户。

系统特性

DM MPP 采用完全对等不共享架构,系统中各 EP 的功能完全对等,因此对于用户来说, MPP 系统的处理是完全透明的,用户任意登录 MPP 系统的的任一节点进行操作都可获得完 全的 MPP 支持。 使用 DM MPP 可获得以下功能特性支持:

 n TB/PB 级数据分析

 支持数据的并行装载和操作的并行执行,数据分布式存储在各 EP 中,能支持 TB/PB 级数据分析。

 n 支持绝大部分单机功能

支持绝大部分的 DM 单机版功能,同时支持行、列存储,支持存储过程、触发器、索引、 分区表、多媒体数据类型等。

 n 高性价比

 无需额外配置特殊软、硬件,性价比超高。

 n 高可靠性

 DM MPP 与 DM 数据守护相结合,为 MPP 系统中的每个 EP 配置一个或多个实时备库, 在 EP 发生故障时其对应备库能迅速切换为主库继续提供服务,确保系统的高可用性。

 n 支持超大型集群

 支持最多 1024 个 EP,轻松组建超大型集群。

MPP概念

1.2 主从EP

DM MPP采用完全对等无共享架构,对于整个系统来说,每个EP作用都是一样的,用户可以访问其中任何一个节点进行操作。各EP节点间具有主从之分,用户实际连接的EP称之为主EP,其余的EP都称为从EP。

1.3 数据分布

DM MPP系统中的数据分布在各EP中,支持表数据的哈希分布、随机分布、复制分布、范围分布、LIST分布类型,用户可根据实际情况为表数据选择合适的分布类型。

··························    哈希分布:按照表定义中指定的一列或多列对行数据计算一个哈希值,再根据哈希值和哈希映射表,将该行数据分布到映射的节点上。使用哈希分布时,节点间的数据是否均衡,取决于设置的哈希分布以及表中的数据情况。

     随机分布:随机分布表不存在分布列,插入表数据时会按照一定的随机算法,将数据随机均衡分布到各个节点

     复制分布:复制分布表在每个节点上的本地数据都是一份完整的拷贝,查询该数据时在任意节点都能单独完成,不需要从其他节点获取数据,复制分布一般用于数据量不是很大的表。

     范围分布:按照表定义中一个或多个列的列值范围分布项,决定将一行数据存储导MPP的哪个相应EP上。

     List分布:通过指定表中一个或多个列的离散值,来确定数据存储导MPP的哪个相应的Ep上

1.4 MAL系统

MAL系统是达梦数据库实例间的高速通信系统,是基于TCP协议的一种内部通信机制,具有可靠、灵活、搞笑的特性,DM通过MAL系统实现实例间的消息通讯。

1.5全局连接与本地连接

MPP系统中数据分布在各个EP中,用户主需要登录某个EP,系统自动建立这个EP与其余EP的连接,因此用户建立的实际是与整个MPP系统的全局连接,使用全局连接时,要求MPP系统的所有EP都正常提供服务,否则无法建立连接。

DM MPP 本地连接:当使用本地连接时,用户登录到某个EP后,这个EP不再建立与其余EP的连接,用户的所有操作仅在这个EP上进行,如select、update和delete语句中where条件的子查询都仅仅查询本地EP的数据,而insert语句如果插入的数据根据分布定义应分布在其余EP时系统会报错。通常在MPP系统正常运行时都是用全局连接,只有在快速装载和动态扩容使用到本地连接,在MPP系统中有EP故障时也可以使用本地连接。

   

1.6 MPP并行执行计划

    MPP并行执行计划是在单节点执行计划的基础上增加MPP通讯操作符生成的,DM MPP相关通讯操作符有5个

1.7 数据分布与并行执行

在MPP环境中,建表时指定的数据分布类型决定了表数据的分布,数据插入或装载时系统会根据表的分布类型自动将数据发送到对应的EP,哈希、范围分布、list分布在建表时用户指定一个或多个列作为分布列,系统会针对每个插入的数据行计算这些对应列的值确定数据所属EP,随机分布和复制分布不需要指定分布列。

DM MPP搭建

系统规划

实例名

MAL_INST_HOST

MAL_INST_PORT

MAL HOST

MAL PORT

MPP_SEQNO

WZP

192.168.0.11

5236

192.168.0.11

5237

0

WZP2

192.168.0.12

5236

192.168.0.12

5237

1

配置dm.ini

INSTANCE_NAME    =  WZP

PORT_NUM         =  5236

MAL_INI            =  1

MPP_INI            =  1

实例2上的dm.ini参数修改如下

INSTANCE_NAME    =  WZP2

PORT_NUM         =  5236

MAL_INI            =  1

MPP_INI            =  1

配置dmmal.ini

为两个EP配置dmmal.ini,配置完全一样,EP间可以互相拷贝,dmmal.ini与dm.ini放在相同目录下。

[MAL_INST1]

MAL_INST_NAME      =WZP

MAL_HOST            =192.168.0.11

MAL_PORT            =5237

MAL_INST_HOST       =192.168.0.11

MAL_INST_PORT        =5236

[MAL_INST2]

MAL_INST_NAME       =WZP2

MAL_HOST            =192.168.0.12

MAL_PORT            =5237

MAL_INST_HOST       =192.168.0.12

MAL_INST_PORT        =5236

配置dmmpp.ctl

Dmmpp是一个二进制文件,用户不能直接配置,需要先配置dmmpp.ini

配置dmmpp.ini如下:

[SERVICE_NAME1]

MPP_SEQ_NO           =0

MPP_INST_NAME        =WZP

[SERVICE_NAME2]

MPP_SEQ_NO           =1

MPP_INST_NAME        =WZP2

使用 DM 提供的工具 dmctlcvt 将 dmmpp.ini 转换成 dmmpp.ctl,dmctlcvt 工具 在 DM 安装目录的“bin”子目录中。 转换生成的 dmmpp.ctl 需要放在与 dm.ini 同一个目录。假设 DM 的安装路径为 c 盘 根目录,下面的命令将 dmmpp.ini 转换为 dmmpp.ctl,命令中的“TYPE=2”参数表示将 文本文件转换成控制文件,也可以使用“TYPE=1”参数进行逆向转换

Dmctlcvt  type=2  SRC=/dm8/data/DAMENG/dmmpp.ini  DEST=/dm8/data/DAMENG/dmmpp.ctl

将生成的dmmpp.ctl拷贝至另一个EP,保证mpp系统中所有EP的dmmpp.ctl完全相同。

运行MPP

经过前面四个步骤,DM MPP环境已经配置完成,分别启动WZP和WZP2的DM数据库实例,DM MPP系统即能正常运行,用户就可以登录任一EP进行数据库操作了。

达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值