注册
达梦数据库架构设计方案
培训园地/ 文章详情 /

达梦数据库架构设计方案

Jeremy 默 2023/09/21 1194 0 0
  1. 需求理解及分析
    根据需求沟通,确定用户应用场景,峰值用户在线数量,用户进行并发操作数量,是否有数据分析需求,每年产生的数据量多大,分析如下:
    1、数据分流需求:业务在线用户数高,并发量大,可根据业务场景,拆分业务需求;
    2、数据库高并发需求:拆分的数据库需要支持每个点 固定用户并发操作;
    3、数据库 OLAP 需求:总部的数据库需要支持海量数据分析的业务操作;
    4、数据同步需求:拆分后有数据同步,需要汇总全部数据。
    数据库解决方案
    基于以上需求分析,通过部署达梦数据共享集群软件 DMDSC,达梦分析型大规模数据处理集群软件 DMMPP,达梦实时数据同步软件 DMHS 满足上述
    需求,具体如下:
    1、均采用部署 2 节点 DMDSC 集群,支撑并发用户操作,满足数据分流和高并发需求。
    2、采用部署 8 节点 DMMPP 集群,满足数据库 OLAP 需求;
    3、分部和总部之间通过部署 DMHS,配置单向数据同步,把各局数据汇总到总部数据库,满足数据同步需求。
    采用达梦方案原因:达梦数据库 DM8 是达梦数据库有限公司推出的具有完全自主知识产权的大型通用关系型数据库管理系统,是达梦公司在总结 DM 系列产品研发与应用经验 的基础之上,吸收主流数据库产品的优点,采用类 JAVA 的虚拟机技术,重新设 计的数据库产品。DM8 采用全新的体系架构,在保证大型通用的基础上,针对 可靠性、高性能、海量数据处理和安全性做了大量的研发和改进工作,极大提升了达梦数据库产品的性能、语言丰富性、可扩展性,能同时兼顾 OLTP
    关键支撑技术特性
    达梦共享存储集群 DMDSC
    达梦共享存储集群(DMDSC)允许达梦数据库实现在一组集群服务器上运行
    任何程序包,而客户应用不必作任何更改。这种体系提供了最高级别的可用性和最灵活的可伸缩性。如果出现集群其中一个服务器失败,达梦会继续运行在集群中其它服务器上。如果您需要更多的处理能力,您可以很方便地在线增加另外的服务器而不必使用户脱机。为了保持低成本,可以将高端的系统构建在标准化的、低成本的产品上。
    技术架构
    达梦共享存储集群是所有服务器共享磁盘的 Shared Everything 体系,集
    群中的所有服务器共享 RAC 数据库的所有存储设备。这种类型的磁盘存储可以是基于裸设备和文件系统的 2 种共享存储,文件系统的卷管理和文件系统必须是能够支持集群的,例如:NFS、GFS、GFS2。存储选择取决于硬件选择并且要为硬件厂商所支持。关键在于存储系统要选择能为应用程序提供可扩展的 I/O,是一个支持添加服务器到集群中的 I/O 系统。相对于为应用程序连接到数据库服务器的局域网(LAN),集群需要一个额外的网络。集群需要另外一个私有专用网络来进行互联互通。为了高可用目的,达梦推荐使用两个网络接口。一个网络接口用于外部连接,实现故障保护和负载均衡。另一个用来作为节点间互联互通,消息传递。RAC 的缓存交换技术也需要依靠这种连接。对于集群间的节点连接,达梦使用 TCP/IP 协议。
    共享存储集群 DMDSC 系统架构
    集群是由一个或多个服务器构成,每个服务器都有局域网(LAN)连接来互
    联互通,并且都要被连接到共享存储上。集群中的每台服务器在硬件配置上不必 一模一样,但必须采用相同的操作系统和同样的达梦数据库版本。所有服务器必须支持相同架构,例如:要么都是 32 位的,要么都是 64 位的。
    高可用性
    达梦 DMDSC 实现了数据高可用的基础架构,作为达梦高可用体系架构的一个组成部分,提供了最高可用性的数据管理解决方案的最佳实践。达梦 DMDSC 高可用解决方案满足了高可用的主要特征。
    可靠性
    达梦 DMDSC,消除了单点故障。如果一个实例失败了,集群中其它的实例正
    常运转。
    可恢复性
    达梦数据库具有很多恢复特性可以从各种类型的失败中恢复。如果 DMDSC 数 达梦数据库解决方案,数据库集群中的一个实例失败,这会被集群中的其它实例察觉到,恢复自动发生。
    通过应用透明故障切换(Transparent Application Failover),可以使用户感 受不到失败。
    错误检测
    达梦集群组件自动监控 DMDSC 数据库和提供在这种环境下快速的问题检测。在问题发生后还没有人注意到之前,就已经开始自动地从失败中进行恢复。快速集群通知(Fast Application Notification)提供了应用程序接收集群中组件失败的通知的能力,并再次提交用户的事务到集群中一个正常运行的节点,避免用户感知失败。
    持续操作
    达梦 DMDSC 提供了持续服务能力应付计划及非计划的停机。如果一个节点(或实例)失败,数据库依然保持开启,应用照常访问数据。快速应用通知(Fast Application Notification)和快速连接故障切换(Fast Connection Failover) 对用户隐藏了集群中的组件失败,保证了持续服务能力。

可扩展性
达梦 DMDSC 为应用的可扩展性提供了便捷。传统上,当一台服务器处理能力 都耗尽时,我们会替换成一台新的更强大的服务器。随着服务器处理能力的增强,它们的价值也更昂贵。使用 DMDSC 结构的数据库,可以以另一种方式增加处理能力。传统上运行在大型 SMP 计算机的应用可以被移植到一群小服务器组成的集群上。这种替代使你可以继续维持你在当前硬件的投资,通过增加一个新服务器到集群中(或者把原结构变成集群)来实现处理能力的增强。集群中所有的服务器上必须是同样的操作系统和相同版本的达梦软件,但是这些服务器却不必具备一模一样的处理能力。
达梦 DMDSC 体系架构能自动适应快速变化的业务需求和因而发生的负载变化。 应用程序的用户和中间层应用服务器客户端通过服务名(Service Name)连接到 数据库。达梦自动地在应用中的各个节点上进行负载均衡。在不同节点上的 DMDSC 数据库的实例被规划隶属于数据库的服务或数据库的服务的子集。这种方式给 DBA 们提供了连接灵活性,可以选择让连接某个数据库的特定应用客户端能够连接部分还是全部的数据库节点。当业务需求增长时,管理人员可以轻松通过增加连接节点来增加处理能力。DMDSC 的缓存交换技术可以马上使用新增节点的CPU 和内存资源,DBA 们无需手工地重新划分数据。
负载管理
采用 DMDSC 数据库的应用程序需要在整个集群范围中管理工作量。达梦
DMDSC 拥有管理负载的技术,保证在特定的配置和应用高可用下系统最佳的吞吐量。
在面向交易系统的 OLTP 中,使用专业工具 TPCC 进行测试时,显示出了良的负载均衡能力。服务负载管理依赖于使用服务。服务通过隐藏 DMDSC 数据库的复杂性,提供给用户一个单一的系统影像。应用程序受益于集群的可靠性就是通过服务来实现的。一个服务能包含一个达梦数据库的一个或多个实例,一个实例能支持多个服务。提供给服务的实例的数量是由数据库管理员动态管理的,与应用无关。当某个节点发生故障,服务自动地恢复到其它存在的实例上。
连接负载均衡
达梦提供了数据库连接的负载均衡能力。客户端负载均衡是指在所有的监听
器上均衡所有的连接请求。对于集群,是通过在客户连接串中的地址列表里包含了所有集群中可用服务器的地址列表来实现的。数据库连接会随机选择其中一个服务器来连接。如果被选择的服务器不可用,就尝试连接下一个。服务端的负载 均衡是在监听上实现的。每个监听监控集群中提供每个服务的所有节点。基于对服务定义的目标,监听选择最能满足这个目标的实例,建立连接。
达梦分析型大规模数据处理集群软件 DMMPP
为了支持海量数据存储和处理、高并发处理、高性价比、高可用性等需求,
提供高端数据仓库解决方案,达梦数据库管理系统 DMV8 提供了大规模并行处理 MPP 架构,以极低的成本代价,为客户提供业界领先的计算性能。
DM MPP 的基本特征是由多个数据库服务器节点通过互联网络连接而成,每
个节点只访问自己的本地数据,是一种完全无共享结构,对用户而言是透明的。MPP 系统节点之间的信息交互通过节点内部高速网络实现,MPP 系统不共享 数据,只是在在不同的节点之间传送数据,在内部高速网络的条件下,可以充分发挥资源的优势,达到高效率。
MPP 架构通过分布负载到多个数据库服务器主机,实现存储和处理大规模
的数据,采用的是完全对等的无共享架构,每个数据库服务器称为一个 EP,每个EP 都是独立的数据库。
该架构中各个 EP 节点的功能完全一样,用户可连接 MPP 系统内的任意一个 EP 节点进行数据操作 ,所有 EP 对客户来说都是对等的。
互为镜像的节点是配置了守护进程的主备机,在主机发生故障时守护进程
会自动将镜像备机切换为主机,继续提供对外服务。
EP 节点之间的消息通信和数据移动都是通过嵌入在 DM 数据库系统内部的
MAL 通信系统完成,MAL 系统负责在执行查询计划的过程中在协调任务相关的节点之间高效驱动数据流,完成发送消息、移动数据、收集操作结果等功能。
大规模并行处理
DM 的 MPP 架构最多可以同时部署 1024 个节点,采用统一的并行操作数据库引擎,由于数据分散在不同的数据库节点上,在高速的内部网络环境下,对于海量数据的并发查询可极大地减少 I/O,提高查询效率。
核心的 MPP 架构DM 的 MPP 架构提供数据存储和查询的自动化并行,插入的数据会被自动分区 保存到相应的节点,查询时在各节点的数据库引擎上并行执行查询,并将所有结 果数据自动汇集到主查询节点上,数据无共享、无 I/O 冲突。
可靠的数据保护机制
DM 提供了数据守护系统,满足用户对数据可靠性、安全性的需求,解决由于
硬件故障、自然灾害等原因导致的数据库服务长时间中断问题,提高系统的可用 性。MPP 系统中的每个节点都可配置数据守护系统,增加节点数据的完整冗余镜 像。节点和镜像节点之间可以互相转换成 MPP 中的工作节点。
支持列存储
在数据仓库(OLAP)、数据挖掘等查询密集型应用中可使用列存储表,在查
询只需要少数几个字段的时候,能大大减少 I/O,同时列存储也利于使用设计更 好的压缩/解压算法,进一步减少存储空间。
3.2.2.5 功能齐全
DM 的 MPP 系统和单节点数据库相比,几乎没有任何功能上的限制,支持各种约束,支持触发器,支持存储过程、系统函数、复杂查询等。由于功能齐全,配 达梦数据库解决方案配置也不繁琐,从用户的体验来看,整个系统显得更加透明、简单、易用。
高速数据加载
数据加载可完全并行,所有节点可同时读取数据,然后根据散列算法,将属
于自己的数据留下,将其他节点的数据通过网络直接传送给目标节点,实现高速
数据加载。
达梦实时数据同步软件 DMHS
达梦实时数据同步软件 DMHS,通过秒级数据实时同步可以有效避免传统备
份系统导致的无法完全满足企业对于信息系统不中断服务的问题;通过变化日志 捕捉可以有效降低传统 ETL 工具因创建触发器、影子表等对业务系统带来的性能 影响;通过可读写的备机数据库系统可以解决传统备机系统仅作为后备而无法对 外提供数据服务的问题。

DMHS 的技术原理
DMHS 采用基于日志的结构化数据同步技术,实时数据同步不依赖主机上源
数据库的触发器或者规则,对主机源数据库系统几乎无影响。
DMHS 采用并行处理体系,能够实时读取主机源数据库日志,以较低的资源
占用实现大批量的数据实时同步。
在源端,DMHS 采用优化的日志扫描算法实现目标数据的快速抽取。在目的
端,DMHS 使用数据库本地 ODBC 接口访问备机数据库系统,同时可以通过事务重组、分批加载等技术加快数据装载的速度和效率,降低备机数据库系统的资源占用。
DMHS 对网络带宽无特殊要求。在传输过程中,DMHS 直接通过 TCP/IP 进行网络传输,无需依赖于数据库自身的传递方式,通过对传输对数据进行筛选和压缩,还可以进一步降低带宽需求。
体系结构高可扩展
DMHS 的开放式体系结构使其能够适应各种异构数据平台。系统安装部署简
单但功能强大,可以根据用户需求采用非常灵活的方式配置出各种拓扑结构,包括一对一同步 、一对多广播型同步 、多对一聚合型同步 、多对多同步以及级联同步等多种数据同步形式,满足用户的各种复杂数据同步需求。 达梦数据库解决方
确保业务系统高可用
DMHS 采用基于日志的结构化数据同步技术,实时数据同步不依赖主机上源
数据库的触发器或者规则,对主机源数据库系统几乎无影响。
DMHS 提供业务连续性支持,备机数据库系统始终出于活动状态。在非计划
性停机导致主机业务系统无法工作时,可在 DMHS 的备机数据库系统上及时接管业务,实现业务系统快速切换和恢复,保持业务连续并使数据损失最小化。
高效的数据实时同步
DMHS 采用并行处理体系,能够实时读取主机源数据库日志,以较低的资源
占用实现大批量的数据实时同步。
在源端,DMHS 采用优化的日志扫描算法实现目标数据的快速抽取。在目的
端,DMHS 使用数据库本地 ODBC 接口访问备机数据库系统,同时可以通过事务重 组、分批加载等技术加快数据装载的速度和效率,降低备机数据库系统的资源占用。传输过程中,DMHS 直接通过 TCP/IP 进行网络传输,无需依赖于数据库自身的传递方式,通过对传输对数据进行筛选和压缩,还可以进一步降低带宽求。

高可靠的数据传输
DMHS 的数据同步以源数据库的事务为单位,严格按照主机业务系统事务顺
序实施数据同步,保障备机数据库与主机数据库的事务级完整性和一致性,确保备机数据库符合主机业务系统事务逻辑。通过这种事务级粒度的数据一致性维护,使得备机数据库系统分担主机数据库系统上的业务负载成为可能。 数据在传输过程中可能因为网络故障而导致传输中止。为保障数据传输的 无丢失,DMHS 使用检查点机制实现断点续传。断点包括两个部分,即 DMHS 前置 的变化数据捕捉模块数据抽取位置检查点和 DMHS 主程序的数据装载模块的已装载位置检查点。
DMHS 的前置模块与主程序模块采取完备的消息应答机制来保障数据传输的
可靠性和数据完整性。前置模块只有在得到确认消息后才认为数据传输完成,否则将自动重新传输数据。

可读写的备机系统
与传统仅作为后备而无法对外提供数据服务的备机系统不同,DMHS 的备机
数据库系统是一套独立的可读写数据库系统。通过高可靠的数据传输,DMHS 备机数据库系统中的数据可以在业务处理逻辑上与主机系统完全保持一致。应用系统通过简单配置,就可以使用 DMHS 的备机系统分担主机业务系统上的负载,提高业务系统效率。同时,根据实际业务需要,还通过 DMHS 的备机系统还可以实现生产型业务与分析型业务的完全隔离双业务中心,提高应用系统整体性能。

数据同步内容可定制
DMHS 支持同步数据可筛选、数据过滤和简单的数据转换,实现满足业务需
求的按需同步,有效的降低网络通信代价和存储成本。DMHS 数据筛选通过用户 在需要同步的表上定义过滤和转换规则来实现。未来 DMHS 还将和 DMETL结合, 实现更为复杂的数据清洗。DMHS 还支持传输数据压缩和加密,在进一步降低网 络传输代价的同时,提高传输安全性,防止数据库数据在传输过程中被非法窃取。

轻量级设计实现快捷部署
DMHS 采用轻量级框架设计,能够方便项目实施人员快速部署并极大的减少
系统管理员工作压力和负担。同时 DMHS 支持初次数据装载全同步功能,能够在 不中断业务的情况下,将主机数据库中的当前数据平滑的装载到备机数据库中。

跨平台软硬件支持
DMHS 面对日趋复杂的计算机环境具有极好的适应性,能够在目前流行的各
种软硬件平台和数据库环境下传输数据,在同一解决方案架构下,实现企业不同平台上的多个信息系统的统一同步的支持。目前主机源数据库支持 DM6、DM

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服