DMDSC手册学习

DM 共享存储数据库集群的英文全称 DM Data Shared Cluster,简称 DMDSC
手册参考地址


1.第二章:DMDSC 概述

DMDSC 集群是一个多实例单数据库的系统。多个数据库实例可以同时访问、修改同一个数据库的数据。用户可以登录集群中的任意一个数据库实例,获得完整的数据库服务。
数据文件、控制文件在集群系统中只有一份,不论有几个节点,这些节点都平等地使用这些文件,这些文件保存在共享存储上。每个节点有自己独立的联机日志和归档日志,其中联机日志保存在共享存储上,归档日志可以保存在本地存储上也可以保存在共享存储上。
DMDSC 集群主要由数据库和数据库实例、共享存储、DMASM 或 DMASM 镜像、本地存储、通信网络、集群控制软件 DMCSS、集群监视器 DMCSSM 组成。下图展示了一个 DMDSC 集群系统结构图。
在这里插入图片描述

1.1 系统特性

😼高可用性 只要集群中有一个活动节点,就能正常提供数据库服务。此外,当出现磁盘损坏或数据丢失时,既可以利用其他镜像副本继续提供数据库服务,又可以使用其他镜像副本进行数据恢复。
😼高吞吐量 多个节点同时提供数据库服务,有效提升集群的整体事务处理能力。
😼负载均衡 一方面,通过巧用服务名,用户的连接请求被平均分配到集群中的各个节点,确保连接负载平衡;另一方面,条带化技术可保证写入的数据均匀分布到磁盘组内的不同磁盘中,实现数据负载均衡。

1.1.1 高可用性

DMDSC 集群通过两种方式提供达梦数据库高可用解决方案。
一 使用集群控制软件 DMCSS
当出现系统故障、硬件故障、或人为操作失误时,DMCSS 可检测故障并自动将故障节点踢出集群,保证数据库服务的正常提供。
故障节点的用户连接会自动切换到活动节点,这些连接上的未提交事务将被回滚,已提交事务不受影响;活动节点的用户连接不受影响,正在执行的操作将被挂起一段时间,在故障处理完成后,继续执行。当 DMCSS 检测到故障节点恢复时,自动启动节点重加入流程,将恢复的故障节点重新加入 DMDSC 集群,将集群恢复到正常的运行状态。因此,通过部署DMDSC 集群,可以在一定程度上避免由软、硬件故障引起的非计划停机,减少这些意外给客户带来的损失。
与同样使用共享存储的双机热备系统相比,DMDSC 具有更快的故障处理速度。双机热备系统故障切换时,需要完整地重做 REDO 日志,所有数据均需重新从磁盘加载;而 DMDSC故障处理时(由 INI 参数 DSC_CRASH_RECV_POLICY 控制),只要重做故障节点的 REDO 日志,并且大部分数据页已经包含在处理节点的 Buffer 缓冲区中,不需要重新从磁盘加载。
二 使用 DMASM 镜像的多副本技术
如果 DMDSC 配置了 DMASM 镜像,镜像功能可提供多副本技术。当出现磁盘损坏或数据丢失时,系统无需人工干预即可利用其他镜像副本继续提供数据库服务,同时又可以自动或手动通过使用其他镜像副本进行数据恢复。

1.1.2 高吞吐量

DMDSC 集群中包含多个数据库实例,数据库实例访问独立的处理器、内存,数据库实例之间通过缓存交换技术提升共享数据的访问速度,每个数据库实例都可以接收并处理用户的各种数据库请求。
与单节点数据库管理系统相比,DMDSC 集群可以充分利用多台物理机器的处理能力,支撑更多的用户连接请求,提供更高的吞吐量。与双机热备系统相比,DMDSC 集群不存在始终保持备用状态的节点,不会造成硬件资源的浪费。

1.1.3 负载均衡

DMDSC 从连接和数据两个层面提供负载均衡特性。
一 通过巧用服务名
通过配置 DM 数据库连接服务名来访问 DMDSC 集群,可以实现节点间的连接自动负载均衡。用户的数据库连接请求会被自动、平均地分配到 DMDSC 集群中的各个节点。并且连接服务名支持 JDBC、DPI、ODBC、DCI、.Net Provider 等各种数据库接口。
二 使用镜像的条带化技术
通过配置 DMASM 镜像,使用镜像的条带化技术可保证写入的数据均匀分布到磁盘组内的不同磁盘中,实现数据负载均衡。

1.2 基本概念

1.2.1 数据库和数据库实例

数据库(Database)是一个文件集合(包括数据文件、临时文件、重做日志文件和控制文件等),保存在物理磁盘或文件系统中。
数据库实例(Dmserver)就是一组操作系统进程(或一个多线程的进程)以及一些内存。通过数据库实例,可以操作数据库,一般情况下,我们访问、修改数据库都是通过数据库实例来完成的。

1.2.2 共享存储

DMDSC 集群中,为了实现多个实例同时访问、修改数据,要求将数据文件、控制文件、日志文件保存在共享存储上。
DMDSC 使用 DMASM 文件系统管理共享存储设备。DMASM 有两个版本:一是早期版本,提供基础的磁盘组操作、文件操作等,详细用法请参考 10 DMASM 介绍;二是 ASM 镜像版本,在早期版本的基础上增加了 ASM 文件镜像功能、文件条带化功能、DCRV 多磁盘功能等,详细用法请参考 11 DMASM 镜像介绍。两种版本的 ASM 文件互不兼容。
本地归档日志既可以保存在普通磁盘上也可以保存在共享存储上。如果保存在共享存储上会占用较为宝贵的共享存储资源,因此建议放在普通磁盘上即可。
一台共享存储上,只能搭建一套 DMASM 文件系统,多套会导致系统启动失败。

1.2.3 本地存储

DMDSC 集群中,本地存储用来保存配置文件(记录数据库实例配置信息的 DM.INI、DMARCH.INI、DMMAL.INI),本地归档日志、远程归档日志。

1.2.4 通信网络

DMDSC 集群中,网络分为对外服务网络、MAL 高速内网和高速共享存储网络三部分。
对外服务网络用于对外提供数据库服务,用户使用公共网络地址登录 DMDSC 集群,访问数据库。
MAL 高速内网用于数据库实例之间交换信息和数据。MAL 链路即为 MAL 高速内网。
高速共享存储网络用于数据库实例和共享存储之间的通信。常见的两种方式为通过光纤通道实现或通过网络 SCSI 实现。高速共享存储网络搭建工作一般由存储设备厂商完成,不是本书讨论的内容,具体实施方案请咨询共享存储设备厂商或达梦DBA。

1.2.5 集群和集群组

集群(Cluster)是由两个或多个节点(服务器)构成的一种松散耦合的计算机节点集合,这个集合在整个网络中表现为一个单一的系统,并通过单一接口进行使用和管理。大多数模式下,集群中的所有计算机都拥有一个相同的名称,集群内任意一个系统都可以被所有的网络用户使用。每个集群节点都是运行其自己进程的独立服务器,因此每个节点都有自己的运算能力。这些进程间彼此通信进行协调,协同起来向用户提供应用程序、系统资源和数据以及计算能力。
本文档中涉及到的集群有三种:DMDSC 集群,DMCSS 集群和 DMASM 集群。一个 DMDSC 集群由多个 DMSERVER 服务器共同构成;一个 DMCSS 集群由多个 DMCSS 服务器共同构成;
一个 DMASM 集群由多个 DMASM 服务器共同构成。
集群又称为集群组。集群组的概念在配置 DMDCR_CFG.INI 文件中使用,用于配置一个集群中的组内成员节点的公用和专用信息。DMDSC 集群,DMCSS 集群和 DMASM 集群的集群组类型分别为 DB、CSS 和 ASM。例如:一个 DMDSC 集群中共含有 5 个 DMSERVER 节点,则在 DMDCR_CFG.INI 中,该 DMDSC 集群的组类型为 DB,组中成员的个数为 5。

1.2.6 DMDSC 集群

DMDSC 集群由若干数据库实例组成,这些实例间通过网络(MAL 链路)连接,通过一个特殊的软件(DMCSS,集群同步服务)的协助,共同操作一个数据库。从外部用户视角来看,他们看到的只是一个数据库。数据文件、控制文件等文件在集群中只有一份,所有节点平等地使用这些数据文件。这份数据存放在共享存储上,每个服务器通过高速共享存储网络连接到共享存储上。

1.2.7 DM 自动存储管理器

DM 自动存储管理器(DM Auto Storage Manager,简称 DMASM)是一个专用用来为块设备管理文件的分布式文件系统。使用 DMASM 文件系统可以灵活地在块设备上创建、删除、扩展、截断文件,不用担心空间不足(可以通过在线增加块设备的磁盘来扩展空间)或空间浪费;不用考虑文件个数限制;可以方便地查看空间使用情况。
DMDSC 支持多个节点同时访问、修改 DMASM 中的数据文件。
DMASM 不是一个通用的文件系统,应用程序只能通过 DMASMAPI 接口访问。理论上通过 DMASMAPI 接口可以存放任何文件,但在 DMDSC 集群中,一般只建议将需要在节点间共享访问的文件存在 DMASM 中,如数据文件、联机 REDO 日志文件、控制文件等。归档REDO 日志文件、备份集文件也可以考虑保存到 DMASM 中,避免还原、恢复等操作时节点间的文件拷贝,简化备份、还原操作。其他的一些本地配置文件比如 DM.INI 等建议保存在本地磁盘中。
DMDSC 集群中若配置 DMASM,则要求 DMASM 站点数和 DMCSS 站点数一致,且只能存在一个 DMCSS 组和一个 DMASM 组。

1.2.8 DM 集群同步服务

DM 集群同步服务(DM Cluster Synchronization Services,简称 DMCSS)是一款集群控制软件,是 DMDSC 集群应用的基础。DMCSS 专门负责监控集群中各个节点的运行状态,主要功能包括集群环境中节点的启动、故障处理、节点重加入等操作。
每个 DMDSC 集群或 DMASM 集群节点都必须配置一个 DMCSS 服务。这些 DMCSS 服务又共同构成一个 DMCSS 集群。单节点应用时,可以不配置 DMCSS。

1.2.9 DM 集群监视器

DM 集群监视器(DM Cluster Synchronization Services Monitor,简称DMCSSM)用来监控整个集群的状态信息。
DMCSSM 与 DMCSS 相互通信,从 DMCSS 处获取整个集群系统的状态信息。DMCSSM 提供一系列管理维护集群的命令。
配置了 DMCSS 的集群中,可配置 0~10 个 DMCSSM。为了防止硬件损坏导致 DMCSSM 和其他服务器同时故障,建议用户将 DMCSSM 和其他服务器分开放置,DMCSSM 可单独放置在一台机器上。

1.2.10 心跳机制

DMCSS 的心跳机制(Heartbeat)是通过 VOTE 磁盘(非镜像环境下)或 DCRV 磁盘(镜像环境下)的 Disk Heartbeat 实现。
心跳机制有最大时延,只有超过最大时延,才认为监测对象故障。

1.2.11 MAL 链路

MAL 系统是达梦数据库基于 TCP 协议实现的一种内部通信机制,具有可靠、灵活、高效的特性。使用 DMASM 文件系统的 DMDSC 集群中存在两套 MAL 系统,DMASM 服务器之间配置一套 MAL 系统,DMSERVER 服务器之间配置一套 MAL 系统。两套 MAL 系统工作原理相同:一旦 MAL 链路出现异常,DMCSS 会进行裁定,并从集群中踢出一个节点,保证集群环境正常运行。

1.2.12 共享内存

共享内存是一种快速、高效的进程间通信手段。所谓共享内存,就是同一块物理内存被映射到多个进程的地址空间,进程 A 可以即时看到进程 B 对共享内存的修改,反之亦然。DMASM 服务器进程和 DMASM 客户端进程之间通过共享内存方式共享 ASM 文件到实际磁盘的映射关系。

1.3 暂不支持功能

目前 DMDSC 在功能上与单机版 DM 相比存在一定限制,具体功能限制如下:

  1. 支持定时器,但只有控制节点上配置的定时器生效。只支持脱机配置定时器,不支持联机配置。
  2. 支持作业,但只有控制节点上支持执行作业。
  3. 不支持 HUGE 表和外部表。
  4. 不支持 table 级别的 space limit 功能。
  5. 支持全文索引,但仅支持默认词库,需要将默认词库文件 SYSWORD.UTF8.LIB 放到 ASM 文件系统中。
  6. 不支持 DBMS_ALERT、DBMS_LOCK 包。
  7. 不支持数据复制。
  8. 不能与 MPP 集群混合使用。
  9. 不支持为表空间文件指定 mirror_path。

2.第三章:DMDSC 使用的环境

2.2 硬件环境

🙂主机 N 台,N 为 DMDSC 节点数量和 DMCSSM 节点数量的总和。用于部署数据库实例 DMSERVER、DMCSS、DMCSSM、DMASMSVR。其中,DMCSSM 为可选项,其他为必选项。DMCSSM 单独部署在一台机器上。内存大小要求:至少 2GB。
🙂共享存储。N 台主机可以同时访问到的,可以划分为块设备的磁盘。
🙂网卡。每台主机至少准备 2 块网卡。提供 MAL 高速内网和对外服务网络。

2.3 软件环境

😁操作系统。Linux、Unix、Windows 等。
😁达梦数据库软件。安装好 DM 数据库软件之后,将拥有配置和管理 DMDSC 所需的所有软件:DMSERVER、DMINIT、DMASMCMD、DMASMSVR、DMASMTOOL、DMCSS、DMCSSM、DMASMCMDM、DMASMSVRM、DMASMTOOLM 等。这些软件位于安装目录/dmdbms/bin 中.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值