DM MPP集群原理与配置管理

MPP集群

概述
为了支持海量数据存储和处理、高并发处理、高可用性等需求,提供高端数据仓库解决方案,DM提供了大规模并行处理MPP架构。
基本概念MPP:Massive Parallel Processing即大规模并行处理。
EP:Executive Point。MPP 环境内每个实际运行的实例节点称为一个执行节点(基于主备的 MPP 环境内备机除外 )。
主/从EP:MPP 是对等无共享架构,对整个系统来说,每个节点作用都是一样的,用户可以连接到其中的任何一个进行操作。对每个用户会话来说,执行节点具有主从之分。用户会话实际连接的那个节点称为主 EP,其余的节点都称为从 EP。

系统架构

在这里插入图片描述

数据分布

在这里插入图片描述

并行计划

在这里插入图片描述
在这里插入图片描述

MPP数据导入

MPP_CLIENT参数用来设置在DM MPP环境下使用dmfldr进行数据装载时的数据分发方式。
客户端分发模式下,数据在dmfldr客户端分发好后直接往指定站点发送数据。
本地分发模式下,导入时,dmfldr直接将数据发送到连接的站点,数据最终在连接的站点;导出时,dmfldr只导出连接站点的数据。

配置模式

DM MPP环境包含两种配置模式:
普通配置:当用户对系统的可靠性要求不高、系统可中断、能保证节点安全或进行简单的MPP测试时,只需使用普通配置。
基于主备的配置:用于数据冗余,保证系统的可靠性。

数据冗余

基于主备的MPP集群在运行过程中,主机对外提供服务,备机则保持主备之间的数据同步,当主机出现故障时,备机替换主机,继续对外提供服务,保证系统的不中断和可靠性。

配置普通MPP集群环境

硬件环境

部署4节点的普通MPP环境,硬件需求:
4台服务器
高速网络(千兆网以上)
在这里插入图片描述

普通MPP框架

MPP框架需要考虑分配节点IP、节点实例名、节点端口号、节点MAIL端口号、节点编号。

IP实例名端口号MAIL端口号节点编号
192.168.0.1EP01523653470
192.168.0.2EP02523653471
192.168.0.3EP03523653472
192.168.0.4EP04523653473

步骤1:初始化数据库

进入到DM安装路径的bin目录下执行初始化脚本。

IP初始化命令
192.168.0.1./dminit path=…/data instance_name=EP01 db_name=EP01
192.168.0.2./dminit path=…/data instance_name=EP02 db_name=EP02
192.168.0.3./dminit path=…/data instance_name=EP03 db_name=EP03
192.168.0.4./dminit path=…/data instance_name=EP04 db_name=EP04

步骤2:配置dm.ini参数

修改每个节点的dm.ini,开启MPP参数。

EP01:

INSTANCE_NAME = EP01
PORT_NUM = 5236
MAIL_INI = 1
MPP_INI = 1

EP02:

INSTANCE_NAME = EP02
PORT_NUM = 5236
MAIL_INI = 1
MPP_INI = 1

EP03:

INSTANCE_NAME = EP03
PORT_NUM = 5236
MAIL_INI = 1
MPP_INI = 1

EP04:

INSTANCE_NAME = EP04
PORT_NUM = 5236
MAIL_INI = 1
MPP_INI = 1

步骤3:配置dmmpp.ini参数

在dm.ini的所在目录下增加dmmpp.ini文件,配置如下:

[service_name1]
mpp_seq_no    = 0
mpp_inst_name = EP01
[service_name2]
mpp_seq_no    = 1
mpp_inst_name = EP02
[service_name3]
mpp_seq_no    = 2
mpp_inst_name = EP03
[service_name4]
mpp_seq_no    = 3
mpp_inst_name = EP04

步骤4:配置dmmpp.ctl

通过在DM安装目录下bin目录中执行dmctlcvt进行转换,将dmmpp.ini转换为dmmpp.ctl文件。

./dmctlcvt t2c ../data/EP01/dmmpp.ini
../data/EP01/dmmpp.ctl

转换成功后将dmmpp.ctl文件复制到四个节点的dm.ini所在目录下。

步骤5:配置dmmal.ini参数

在dm.ini所在目录下增加dmmal.ini文件,配置如下:
4个节点的dmmai.ini内容一样

[mal_inst1]
mal_inst_name = EP01
mal_host = 192.168.0.1
mal_port = 5347
[mal_inst2]
mal_inst_name = EP02
mal_host = 192.168.0.2
mal_port = 5347
[mal_inst3]
mal_inst_name = EP03
mal_host = 192.168.0.3
mal_port = 5347
[mal_inst4]
mal_inst_name = EP04
mal_host = 192.168.0.4
mal_port = 5347

步骤6:启动数据库服务

启动每个节点上的数据库服务,即可完成普通MPP环境搭建。

IP启动脚本
192.168.0.1./dmserver …/data/EP01/dm.ini
192.168.0.2./dmserver …/data/EP02/dm.ini
192.168.0.3./dmserver …/data/EP03/dm.ini
192.168.0.4./dmserver …/data/EP04/dm.ini

配置基于主备的MPP集群环境

硬件环境

搭建2节点基于主备的MPP集群,硬件需求:
4台服务器:两台用于主机,两台用于备机
高速网络(千兆网以上)
在这里插入图片描述

基于主备的MPP框架

EP01和EP02是两台主机;EP11是EP01的备机;EP12是EP02的备机;监控器可配置在任一机器上,本次在主机1上进行配置。

IP实例名端口号MAIL端口号节点编号节点类型
192.168.0.1//5280/监控器
192.168.0.1EP01523652470主机1
192.168.0.2EP02523652471主机2
192.168.0.3EP1152365247/备机1
192.168.0.4EP1252365247/备机2

步骤1:初始化数据库

基于主备的MPP配置,要求主备机数据严格一致,配置主备时通过初始化主机节点,然后拷贝主机数据到备机数据,保证它们的初始状态数据是一致的。

节点IP初始化脚本
192.168.0.1./dminit path=/opt/dmdbms/data instance_name=EP01 db_name=EP01
192.168.0.2./dminit path=/opt/dmdbms/data instance_name=EP02 db_name=EP02
192.168.0.3scp –r root@192.168.0.1:/opt/dmdbms/data/EP01 /opt/dmdbms/data/EP01
192.168.0.4scp –r root@192.168.0.2:/opt/dmdbms/data/EP02 /opt/dmdbms/data/EP02

步骤2:配置dm.ini参数

EP01:

INSTANCE_NAME = EP01
PORT_NUM = 5236
MAIL_INI = 1
ARCH_INI = 1
MPP_INI = 1

EP02:

INSTANCE_NAME = EP02
PORT_NUM = 5236
MAIL_INI = 1
ARCH_INI = 1
MPP_INI = 1

EP11:

INSTANCE_NAME = EP11
PORT_NUM = 5236
MAIL_INI = 1
ARCH_INI = 1
MPP_INI = 1

EP12:

INSTANCE_NAME = EP12
PORT_NUM = 5236
MAIL_INI = 1
ARCH_INI =1
MPP_INI = 1

步骤3:配置dmpp.ini参数

只需要配置两个主机节点,不需要配置备机节点。

 [service_name1]
  mpp_seq_no    = 0
  mpp_inst_name	= EP01
[service_name2]  
  mpp_seq_no    = 1
  mpp_inst_name	= EP02

步骤4:配置dmmpp.ctl

通过在DM安装目录下bin目录中执行dmctlcvt进行转换,将dmmpp.ini转换为dmmpp.ctl文件。
./dmctlcvt t2c …/data/EP01/dmmpp.ini
…/data/EP01/dmmpp.ctl
转换成功后将dmmpp.ctl文件复制到四个节点的dm.ini所在目录下。

步骤5:配置dmmal.ini参数

4个节点的dmmal.ini内容是一样的。对比普通配置,新增mpp_monitor配置。

[mal_inst1]
mal_inst_name = EP01
mal_host = 192.168.0.1
mal_port = 5347
[mal_inst2]
mal_inst_name = EP02
mal_host = 192.168.0.2
mal_port = 5347
[mal_inst3]
mal_inst_name = EP11
mal_host = 192.168.0.3
mal_port = 5347
[mal_inst4]
mal_inst_name = EP12
mal_host = 192.168.0.4
mal_port = 5347
[monitor]
mal_inst_name = monitor
mal_host = 192.168.0.1
mal_port = 5280

步骤6:配置dmarch.ini参数

EP01:

[ARCHIVE_LOCAL1]
ARCH_TYPE  = LOCAL 
ARCH_DEST  = /opt/dmdbms/data/EP01/arch
ARCH_FILE_SIZE	= 128 
ARCH_SPACE_LIMIT	= 0	
[ARCHIVE_MPP1]
ARCH_TYPE  = MARCH 
ARCH_DEST  = EP11

EP02:

[ARCHIVE_LOCAL1]
ARCH_TYPE  = LOCAL 
ARCH_DEST  = /opt/dmdbms/data/EP02/arch
ARCH_FILE_SIZE	= 128 
ARCH_SPACE_LIMIT	= 0	
[ARCHIVE_MPP1]
ARCH_TYPE  = MARCH 
ARCH_DEST  = EP12

EP11:

[ARCHIVE_LOCAL1]
ARCH_TYPE  = LOCAL 
ARCH_DEST  = /opt/dmdbms/data/EP01/arch
ARCH_FILE_SIZE	= 128 
ARCH_SPACE_LIMIT	= 0	
[ARCHIVE_MPP1]
ARCH_TYPE  = MARCH 
ARCH_DEST  = EP01

EP12:

[ARCHIVE_LOCAL1]
ARCH_TYPE  = LOCAL 
ARCH_DEST  = /opt/dmdbms/data/EP02/arch
ARCH_FILE_SIZE	= 128 
ARCH_SPACE_LIMIT	= 0	
[ARCHIVE_MPP1]
ARCH_TYPE  = MARCH 
ARCH_DEST  = EP02

步骤7:MOUNT状态启动服务

节点IP启动命令
192.168.0.1./dmserver /opt/dmdbms/data/EP01/dm.ini mount
192.168.0.2./dmserver /opt/dmdbms/data/EP02/dm.ini mount
192.168.0.3./dmserver /opt/dmdbms/data/EP01/dm.ini mount
192.168.0.4./dmserver /opt/dmdbms/data/EP02/dm.ini mount

步骤8:设置主机和备机的模式

节点IPdisql连接设置命令
192.168.0.1./disql SYSDBA/SYSDBA@192.168.0.1SQL> alter database primary;
192.168.0.2./disql SYSDBA/SYSDBA@192.168.0.2SQL> alter database primary;
192.168.0.3./disql SYSDBA/SYSDBA@192.168.0.3SQL> alter database standby;
192.168.0.4./disql SYSDBA/SYSDBA@192.168.0.4SQL> alter database standby;

步骤9:启动数据库服务

启动步骤同步骤7:MOUNT状态启动服务。

步骤10:启动dmmpp_monitor

dmmpp_monitor启动需要dmmpp.ctl和dmmal.ini两个文件,拷贝这两个文件到一个目录,如/opt/monitor;然后启动dmmpp_monitor即完成基于主备的MPP集群环境。
./dmmpp_monitor /opt/monitor

dmmpp_monitor使用

启停次序
启动服务按照先主机节点和备机节点,最后dmmpp_monitor的次序启动;
停止服务则按照先停止dmmpp_monitor,再停止备机节点和主机节点的次序。

命令:帮助help
在这里插入图片描述
命令:查看状态status
在这里插入图片描述

命令:详细信息details
在这里插入图片描述
感谢各位!
技术博客社区地址
https://eco.dameng.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值