在开始DMDSC的学习之前,需要先了解以下6个概念。
裸设备是一种没有经过格式化,不被Unix/Linux通过文件系统来读取的特殊字符设备,是一种允许直接访问磁盘而不经过操作系统的高速缓存和缓冲器。
达梦自动存储管理器(DM Auto Storage Manager,DMASM)是达梦数据库专用的分布式文件系统。支持多个节点同时访问、修改数据文件,并减少直接使用裸设备存在的诸多限制。
达梦集群注册表(DM Clusterware Registry,DCR)用于存储和维护集群配置的详细信息,如DMDSC、DMASM、DMCSS的资源、实例名、监听端口,以及集群中故障节点信息等。DM8目前仅支持将DCR磁盘存在裸设备中。注意,一个集群环境中只能配置一个DCR磁盘。
VOTE磁盘记录了集群成员信息,DM集群通过VOTE磁盘进行心跳检测,确定集群中节点的状态,判断节点是否出现故障。当集群中出现网络故障时,使用VOTE磁盘来确定哪些DMDSC节点被踢出集群。VOTE磁盘还用来传递命令,在集群的不同状态(启动、节点故障、节点重加入等)下,DMCSS通过VOTE磁盘传递控制命令,通知节点执行相应命令。同DCR磁盘一样,达梦数据库目前版本仅支持将VOTE磁盘存储在裸设备中。一个集群环境只能配置一个VOTE磁盘。集群中各实例启动时,通过访问DCR磁盘获取集群配置信息。被监控实例从VOTE磁盘读取监控命令,并向VOTE磁盘写入命令响应及自身心跳信息;DMCSS也向VOTE磁盘写入自己的心跳信息,并从VOTE磁盘访问各被监控节点的运行情况,并将监控命令写入VOTE磁盘,供被监控实例访问执行。
达梦集群同步服务(DM Cluster Synchronization Services,DMCSS)负责集群环境中节点启动、故障处理、节点重加入等操作。DMDSC和DMASM的运行都依赖DMCSS。DMCSS的心跳机制是通过VOTE磁盘的Disk Heartbeat实现的。DMASM实例和DMServer实例使用独立的MAL系统,当MAL链路异常时,DMCSS会进行裁定,并从集群中踢出一个节点,保证集群环境的正常运行。
达梦集群监视器(DM Cluster Synchronization Services Monitor,DMCSSM)与DMCSS相互通信,获取并监控整个集群系统的状态信息。DMCSSM提供了一系列的命令来管理、维护集群。同一个集群中,最多允许同时启动10个监视器
DMDSC的工作原理在于:把数据库实例(运行在服务器上的、用来访问数据的进程和内存结构)与数据库(在存储设备上的实际数据的物理结构,也就是通常所说的数据文件)进行分离,从而使一个DMDSC数据库可以为多个实例提供访问服务,其架构如图所示
DMASM文件系统将物理磁盘格式化后,变成可识别、可管理的DMASM磁盘,再通过DMASM磁盘组将一个或多个DMASM磁盘整合成一个整体提供文件服务。DMASM磁盘被格式化后,会逻辑划分为若干簇(Extent),簇是管理DMASM磁盘的基本单位,DMASM文件的最小分配单位也是簇。这些逻辑划分的簇根据用途可以分为描述簇、inode簇和数据簇。创建、删除DMASM文件的操作,在DMASM系统内部转换成修改、维护inode AU的具体动作,而扫描全局的inode AU链表就可以获取磁盘组上所有DMASM文件的信息。
文章
阅读量
获赞