openGauss与GaussDB系统架构对比

openGauss与GaussDB系统架构对比

系统架构对比

openGauss架构

openGauss是集中式数据库系统,业务数据存储在单个物理节点上,数据访问任务被推送到服务节点执行,通过服务器的高并发,实现对数据处理的快速响应。同时通过日志复制可以把数据复制到备机,提供数据的高可靠和读扩展。

组件名称 描述
OM 运维管理模块(Operation Manager)。提供数据库日常运维、配置管理的管理接口、工具。
CM 数据库管理模块(Cluster Manager)。管理和监控数据库系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行。
DN Datanode主备实例节点。负责存储业务数据、执行数据查询任务以及向客户端返回执行结果。openGauss实例包含主、备两种类型,支持一主多备。建议将主、备openGauss实例分散部署在不同的物理节点中。
客户端驱动 客户端驱动(Client Driver)。负责接收来自应用的访问请求,并向应用返回执行结果。客户端驱动负责与openGauss实例通信,发送应用的SQL命令,接收openGauss实例的执行结果。
Storage 服务器的本地存储资源,持久化存储数据。

GaussDB架构

GaussDB是华为自主创新研发的关系型数据库,既支持分布式部署,也支持集中式部署。

组件名称 描述
OM 运维管理模块(Operation Manager)。提供数据库日常运维、配置管理的管理接口、工具。
CM 集群管理模块(Cluster Manager)。管理和监控分布式系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行。
CN 协调节点(Coordinator),负责接收来自应用的访问请求,并向客户端返回执行结果;负责分解任务,并调度任务分片在各DN上并行执行。
GTM 全局事务管理器(Global Transaction Manager),负责生成和维护全局事务ID、事务快照、时间戳、Sequence信息等全局唯一的信息。
DN 数据节点(Datanode),负责存储业务数据、执行数据查询任务以及向CN返回执行结果。
ETCD 分布式键值存储系统(Editable Text Configuration Daemon)。用于共享配置和服务发现(服务注册和查找)。
Storage 服务器的本地存储资源,持久化存储数据。

⭐️各组件的在openGauss和GaussDB不同部署形态中的情况如下:

组件名称 OM CM CN GTM ETCD DN
openGauss主备
Gauss集中式
Gauss分布式

GaussDB集群管理组件

GaussDB集群管理组件(CM)包含以下模块:

  • OMM :对应的二进制文件为om_monitor。管理服务组件,由crontab定时任务控制拉起(周期为1min)。OMM组件主要负责OMM、etcd、cm_agent进程的保活和启停。
  • etcd :对应的二进制文件为etcd。管理服务组件,由OMM组件拉起(周期为1s)。etcd是集群高可用的顶层组件,负责协助CMS选主、持久化集群仲裁信息。etcd组件故障会导致CMS无主,进而导致无法查看集群状态、无法进行高可用切换。
  • CM Agent :对应的二进制文件为cm_agent 。管理服务组件,由OMM组件拉起(周期为1s)。CMA主要负责CMS、DN进程的保活和启停,仲裁指标采集、仲裁命令执行等。CMS组件故障会导致以下影响:
    • CMS、DN进程和保活能力丢失;
    • 节点脱管,实例级故障检测能力丢失,被管理实例状态未知。
  • CM Server :对应的二进制文件为cm_server 。管理服务组件,由CMA组件拉起(周期为1s)。CMS是集群的仲裁中心,依赖etcd(或启用DCC)实现自助选主。CMS组件故障会导致以下影响:
    • 集群状态无法查看;
    • 整个集群的高可用切换能力丢失(DCF自仲裁模式除外);
    • 容灾barrier无法推进;
    • DCC模式下,无法持久化集群信息。
  • DN :对应的二进制文件为gaussdb 。数据服务组件,由CMA组件拉起(周期为1s)。DN组件故障会产生以下影响:
    • 单异步备故障:集群无影响;
    • 单同步备故障:数据服务卡顿,卡顿时间取决于异步备到同步的日志量;
    • 主故障:数据服务不可用;
    • 多数派故障:数据服务卡顿直至恢复多数派或者降副本。

组件相关的日志路径如下:

复制代码
$GAUSSLOG/cm/cm_ctl/cm_ctl*.log
$GAUSSLOG/cm/cm_agent/*.log
$GAUSSLOG/cm/cm_server/*.log
$GAUSSLOG/cm/om_monitor/*.log

Reference

【1】https://docs.opengauss.org/zh/docs/5.0.0/docs/AboutopenGauss/系统架构.html

【2】https://support.huaweicloud.com/productdesc-gaussdb/gaussdb_01_003.html

【3】https://blog.csdn.net/HCIS_HENGCHI/article/details/133774888

相关推荐
aiguangyuan3 小时前
前端开发性能优化概要
系统架构·vue·react·前端开发
Gauss松鼠会6 小时前
华为云DRS实现Oracle到GaussDB数据库迁移的全流程技术方案
数据库·sql·安全·华为云·database·gaussdb
夜影风1 天前
分布式系统中的缓存设计与应用
缓存·系统架构·分布式系统
王ASC2 天前
Oracle迁移到高斯,查询字段默认小写,解决办法
数据库·oracle·gaussdb
aiguangyuan2 天前
前端开发 React 状态优化
系统架构·前端开发
蝸牛ちゃん2 天前
主流软件开发方法综述:从敏捷到开源
系统架构·软考高级
地平线here2 天前
华为云数据库 GaussDB的 nvarchar2隐式类型转换的坑
数据库·华为云·gaussdb
小云数据库服务专线2 天前
GaussDB null的用法
java·前端·gaussdb
geovindu2 天前
ArKTS: DAL,Model,BLL,Interface,Factory using SQLite
数据库·系统架构·sqlite
liupengfei-iot2 天前
物联网后端系统架构:从基础到AI驱动的未来 - 第八章:AI赋能的部署与运维
人工智能·物联网·系统架构