1. 程式人生 > 其它 >DM MPP大規模並行叢集部署

DM MPP大規模並行叢集部署

  1. 簡介

MPP (Massively Parallel Processing),即大規模並行處理,在資料庫非共享叢集中,每個節點都有獨立的磁碟儲存系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺數據節點通過專用網路或者商業通用網路互相連線,彼此協同計算,作為整體提供資料庫服務。非共享資料庫叢集有完全的可伸縮性、高可用、高效能、優秀的價效比、資源共享等優勢。

簡單來說,MPP是將任務並行的分散到多個伺服器和節點上,在每個節點上計算完成後,將各自部分的結果彙總在一起得到最終的結果(Hadoop相似)

  1. 部署環境

2‑1 部署環境

系統版本

Centos7.9

CPU型號

Intel(R) i5-7200U CPU (2核)

磁碟空間

40G

記憶體大小

2G

2‑2 磁碟規劃

資料

/dev/mapper/vg_dm-lv_dmdata

備份

/dev/mapper/vg_dm-lv_dmbak

歸檔

/dev/mapper/vg_dm-lv_arch

2‑3 目錄規劃

資料庫軟體安裝目錄

/home/dmdba/dmdbms

例項安裝目錄

/dmdata

歸檔存放目錄

/dmdata/arch

備份存放目錄

/dmdata/dmbak/

2‑4 IP埠規劃

例項名

IP

例項埠

MAL

mpp1

192.168.254.144

5236

7236

mpp2

192.168.254.145

5236

7236

  1. DM MPP大規模並行叢集部署

    1. 安裝DM 8並初始化例項

安裝過程本文略

./dminit path=/dmdata db_name=dmmpp1 instance_name=dmmpp1 page_size=32 extent_size=16 charset=1 log_size=2048 SYSDBA_PWD="SYSDBA" SYSAUDITOR_PWD="SYSDBA"

  1. 配置例項的配置檔案 dm.ini

//修改dmmpp1例項的dm.ini檔案引數,執行以下命令:

vi /home/dmdba/dmdbms/dmmpp1/dm.ini

INSTANCE_NAME = dmmpp1

MAL_INI = 1

MPP_INI = 1

//修改dmmpp2例項的dm.ini檔案引數,執行以下命令:

vi /home/dmdba/dmdbms/dmmpp2/dm.ini

INSTANCE_NAME = dmmpp2

MAL_INI = 1

MPP_INI = 1

  1. 配置MAL系統配置檔案dmmal.ini

//執行以下命令,在例項目錄下新建檔案dmmal.ini,所有節點檔案內容要相同

MAL_CHECK_INTERVAL = 5 #MAL 鏈路檢測時間間隔

MAL_CONN_FAIL_INTERVAL = 5 #判定 MAL 鏈路斷開的時間

[MAL_INST1]

MAL_INST_NAME = dmmpp1

MAL_HOST = 192.168.254.144

MAL_PORT = 7236

MAL_INST_HOST = 192.168.56.11

MAL_INST_PORT = 5236

[MAL_INST2]

MAL_INST_NAME = dmmpp2

MAL_HOST = 192.168.254.145

MAL_PORT = 7236

MAL_INST_HOST = 192.168.254.145

MAL_INST_PORT = 5236

31 修改dmmal配置檔案

  1. 配置 MPP 控制檔案 dmmpp.ctl

//在其中一個節點新建dmmpp.ini配置檔案,執行以下命令:

vi /home/dmdba/dmdbms/dmmpp/dmmpp.ini

[SERVICE_NAME1]

MPP_SEQ_NO = 0

MPP_INST_NAME = dmmpp1

[SERVICE_NAME2]

MPP_SEQ_NO = 1

MPP_INST_NAME = dmmpp2

//使用 dmctlcvt 工具將dmmpp.ini檔案轉化為dmmpp.ctl,在資料庫安裝的 bin 目錄下執行以下命令:

./dmctlcvt TYPE=2 SRC=/dmdata/dmmpp/dmmpp.ini DEST=/dmdata/dmmpp/dmmpp.ctl

//將生成的dmmpp.ctl控制檔案複製到另一個節點的例項目錄下:

scp -r /dmdata/dmmpp/dmmpp.ctl [email protected]:/dmdata/dmmpp

32 SCP傳送dmmpp.ctl到其他節點下

  1. 啟動叢集

//正常啟動例項即可,需要所有節點都啟動後,叢集才能訪問。

systemctl start DmServicedmmpp

  1. 驗證叢集

//客戶端登入任意節點

./disql SYSDBA/'"SYSDBA"'

SQL> select instance_name from v$instance;

33 檢視MPP所有節點資訊