达梦分布式集群DPC_架构详解_yxy

1 DPC核心架构介绍

1.1 架构图

在这里插入图片描述

1.2 DPC核心架构组件

DMDPC 架构由三部分组成
SP(SQL Processor):计算节点
MP(Metadata Processor):元数据节点
BP(Backend Processor):数据存储节点

SP
①对外提供分布式数据库服务,用户可以登录到任意一个 SP 节点,获得
完整的数据库服务;
②不存储数据,所以SP都是单机,可以横向扩展(多个SP节点),不能多副本;

BP
①负责存储表真实数据,一般是多副本;
②执行 SP 的调度指令并将执行结果返回给 SP;

MP
①负责存储元数据(表结构等信息),一般是多副本;
②向 SP、BP 提供元数据服务;

2 多副本

2.1 多副本架构图

在这里插入图片描述

2.2 多副本示例

DPC基于 RAFT 协议实现了一套全新的达梦多副本(DM Multiple Copy)系统架构。
类似于主备系统,主库挂了备库能立即切换为主,实现高可用性;

例如:
①单机架构

服务器1服务器2服务器3服务器4
SPMPBP1BP2
Ⅰ.其中BP节点可以横向扩展(MP不行),比如新增BP3,4,5...,BP越多,表数据分配到所有BP节点后,能利用的资源越多,性能就越高;

这里举个例子:
一个分区表TEST,通过ID列做HASH分区,分成5个子表,建表语句为:

create table TEST(
"ID" INT,
"NAME" VARCHAR2(20),
)
PARTITION BY HASH("ID")
PARTITIONS 5;

如果把5个子表分配到5个BP上,那么通过ID列去查询数据时,就能利用5台服务器资源;

Ⅱ.单机架构MP和BP都只有一份数据,如果其中一个节点发生故障,整个集群就不能正常提供服务,所以可以部署多副本架构,给MP和BP1,BP2都新增两个副本;

②多副本架构

服务器1服务器2服务器3服务器4
SPMPBP1BP2
MP_备1BP1_备1BP2_备1
MP_备2BP1_备2BP2_备2
新增备库后,当主库BP1实例挂掉,BP1_备1或者BP1_备2就能选举为主库来提供服务,实现高可用性

2.3 RAFT组概念

拥有相同数据的一个或多个节点共同构成一个 RAFT组。RAFT 组中的节点个数为奇数。

当 RAFT 组中只有 1 个节点时,则该节点称为单副本系统(单机)。

例如
①比如上述例子中的的BP1,BP1_备1,BP1_备2就构成一个RAFT组(MP和BP2同理),它们数据完全一致,一个RAFT组内的实例数据完全相同;

②一个RAFT组内只有一个为主库提供服务;

③类似于一个RAFT组 = 一个主备系统(RAFT内是异步同步);

2.4 表空间与RAFT组的关系

每个表空间必须关联一个RAFT组,创建时指定存储位置。
相当于表空间要指定存储在哪个BP上

例如

CREATE TABLESPACE TS_1 DATAFILE 'TS_1.DBF' SIZE 128 STORAGE(ON RAFT_1);
--表空间TS_1存储在RAFT_1上(BP1上);

CREATE TABLESPACE TS_2 DATAFILE 'TS_2.DBF' SIZE 128 STORAGE(ON RAFT_2);
--表空间TS_2存储在RAFT_2上(BP2上);

后续建表时,才能每个子表单独指定不同的表空间,实现数据分布在多台BP上(不同数据节点上)

CREATE TABLE "TEST01"
(
"ID" VARCHAR2(36) NOT NULL,
"DATE" TIMESTAMP(0) NOT NULL)
PARTITION BY HASH("ID")
(
PARTITION  "DMHASHPART0"   STORAGE(ON "TS_1") ,
PARTITION  "DMHASHPART1"   STORAGE(ON "TS_2") 
) STORAGE(HASHPARTMAP(1), ON "TS_1") ;

更多其他数据库相关专栏:
数据库性能优化(sql优化)_基本思路_yxy
数据库性能优化(sql优化)_索引详解01_yxy(共4篇)
数据库性能优化(sql优化)_SQL执行计划01_yxy(共3篇)
数据库性能优化(sql优化)_统计信息_yxy

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值