【参天引擎】01 共享存储双活集群 + MySQL 兼容加速:Cantian 引擎全景解析

Cantian 数据存储加速引擎项目整体介绍

适用版本 : Cantian 当前主分支(基于源码目录结构)

阅读时间 : 约 40 分钟

难度等级: ⭐⭐⭐⭐(中高级)

目录


背景

Cantian(Cantian Storage Engine,中文常称"数据存储加速引擎")是由华为开源的一款面向共享存储架构的数据库存储引擎项目,采用木兰宽松许可证第 2 版(Mulan PSL v2)发布。项目以 C 语言为主,围绕"共享存储 + 双节点集群 + 多数据库兼容"的核心理念,提供了一套包含内核存储引擎、SQL 执行层、集群通信、集群管理、客户端工具、MySQL 兼容适配层在内的完整数据库基础设施。

在数据库架构演进的趋势中,共享存储集群(Shared-Storage Cluster)因其能够在多个计算节点之间共享同一份数据、实现读写扩展与高可用,逐渐成为企业级数据库的重要形态。Cantian 的设计目标正是为上层数据库(目前以 MySQL 为主)提供一种高性能、强一致、可扩展的底层存储与事务能力,同时屏蔽分布式事务、缓存一致性、故障恢复等复杂细节。

本文作为 Cantian 项目文档系列的开篇,将从宏观视角系统介绍项目的定位、架构、功能、模块、部署形态、依赖配合、问题限制以及业界对比,为后续各模块的深度解析奠定基础。

文章亮点:

  • 全景视图: 从源码目录到运行态组件的完整映射
  • 模块化解构: 14 大系统模块的职责与边界
  • 部署形态: NAS / dbstore 两种共享存储部署模式
  • 生态对接: MySQL 8.0.26 兼容接入路径
  • 同业对比: 与 Oracle RAC、Aurora、PolarDB、TiDB 的差异定位

一、项目定位与核心价值

1.1 项目定义

Cantian 是一款面向共享存储架构的数据库存储加速引擎,位于上层数据库(如 MySQL)与底层共享存储之间,负责提供:

  1. 数据库存储能力: 表、索引、LOB、表空间、分区等对象的管理与访问。
  2. 事务与并发控制: ACID 事务、多版本并发控制(MVCC)、锁与闩锁、死锁检测。
  3. 持久化与恢复: Redo/Undo 日志、检查点、崩溃恢复、归档与备份恢复。
  4. 集群扩展能力: 双节点共享存储集群(DTC, Distributed Transparent Cluster)、缓存一致性、全局锁、全局事务视图。
  5. 多数据库兼容: 当前主要支持 MySQL 通过 CTC(Cantian Transactional Connector)插件接入。

1.2 核心价值

维度 核心价值
性能加速 通过专用存储引擎替代通用存储引擎(如 InnoDB),在共享存储上实现更高的 OLTP/OLAP 性能
透明扩展 上层应用无需改造,即可享受双节点读写扩展能力
高可用 双节点共享存储 + CMS 集群管理,实现秒级故障切换
数据一致 全局缓存一致性协议、分布式事务、全局 SCN/LSN 同步
生态兼容 通过 CTC 插件与 MySQL 8.0.26 深度集成,降低迁移成本
企业级特性 备份恢复、闪回、审计、数据校验、安全加密等

1.3 典型应用场景

  • MySQL 高性能替代: 将 MySQL 的默认存储引擎替换为 CTC,提升高并发场景下的吞吐与延迟表现。
  • 双活数据库集群: 两个计算节点同时访问共享存储,实现负载分担与故障快速切换。
  • 企业核心系统: 需要强一致、高可用、可扩展的数据库底座,如金融、电信、政务等行业。
  • 云原生数据库底座: 作为共享存储架构下的数据库存储引擎,适配云上的 NAS、SAN、分布式存储。

二、整体架构与技术栈

2.1 技术栈

层次 技术选型
编程语言 C(核心引擎)、Python(部署运维脚本)、Shell(构建与安装脚本)
构建系统 CMake(主工程)+ 辅助 Makefile / Shell 脚本
依赖三方库 OpenSSL、zlib、lz4、Zstandard、protobuf、protobuf-c、pcre2、华为安全函数库(securec)
操作系统 当前明确支持 CentOS 8.2(x86),可参照编译指导适配其他 Linux 发行版
存储协议 NFSv4.0 / NFSv4.1(NAS 模式)、dbstore / RDMA / TCP(dbstore 模式)
上层兼容 MySQL 8.0.26(通过 CTC 插件)

2.2 源码目录结构

复制代码
cantian/
├── Cantian/                 # 主工程入口,顶层 CMakeLists.txt
├── build/                   # 编译构建脚本
├── common/                  # 管控面脚本与公共逻辑
├── ct_om/                   # 安装部署相关脚本
├── pkg/                     # 源代码主目录,按模块解耦
│   ├── src/
│   │   ├── common/          # 公共基础库(cm_*)
│   │   ├── cmd/             # SQL 引擎层(zesql 静态库)
│   │   ├── driver/          # 客户端驱动(GSC)
│   │   ├── kernel/          # 内核存储引擎
│   │   ├── server/          # 服务端进程框架(cantiand)
│   │   ├── protocol/        # 通信协议层(TCP/UDS/SSL/RDMA)
│   │   ├── mec/             # 集群消息通信子系统(MES)
│   │   ├── rc/              # 重构/恢复控制相关
│   │   ├── cms/             # 集群管理服务器(CMS)
│   │   ├── cluster/         # 分布式集群核心(DTC)
│   │   ├── tse/             # MySQL 兼容适配层(TSE)
│   │   ├── utils/           # 工具集(gsql、gspe)
│   │   ├── gstbox/          # 安全可信工具箱
│   │   └── version/         # 版本信息
│   ├── deploy/              # 部署与运维脚本
│   └── cfg/                 # 配置文件模板
├── open_source/             # 开源依赖组件源码与头文件
├── library/                 # 编译好的第三方库
└── README.md                # 项目说明与编译部署指南

2.3 运行态架构

复制代码
┌─────────────────────────────────────────────────────────────────────────┐
│                           上层数据库层                                   │
│  ┌─────────────────────────────────────────────────────────────────┐   │
│  │                    MySQL 8.0.26 + CTC 插件                       │   │
│  │  (CTC: Cantian Transactional Connector / ha_ctc.so)             │   │
│  └────────────────────────────────┬────────────────────────────────┘   │
└────────────────────────────────────┼────────────────────────────────────┘
                                     │ SQL / 事务 / DDL 请求
                                     ▼
┌─────────────────────────────────────────────────────────────────────────┐
│                           Cantian 引擎层                                 │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐    │
│  │   TSE 适配层 │  │   SQL 引擎   │  │  服务端进程  │  │  集群通信层  │    │
│  │  (pkg/tse)  │  │ (pkg/cmd)   │  │(pkg/server) │  │  (pkg/mec)  │    │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘    │
│         │                │                │                │          │
│         └────────────────┴────────────────┴────────────────┘          │
│                                    │                                    │
│                                    ▼                                    │
│  ┌─────────────────────────────────────────────────────────────────┐   │
│  │                      内核存储引擎 (pkg/kernel)                    │   │
│  │  ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐   │   │
│  │  │  事务层  │ │ 缓冲池  │ │ 持久化  │ │ 表/索引  │ │ 复制层  │   │   │
│  │  │ (xact)  │ │(buffer) │ │(persist)│ │(table/  │ │(replicat│   │   │
│  │  │         │ │         │ │         │ │ index)  │ │  ion)   │   │   │
│  │  └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘   │   │
│  └─────────────────────────────────────────────────────────────────┘   │
│                                    │                                    │
│         ┌──────────────────────────┼──────────────────────────┐        │
│         ▼                          ▼                          ▼        │
│  ┌─────────────┐            ┌─────────────┐            ┌─────────────┐ │
│  │  集群管理    │            │  分布式集群  │            │  共享存储    │ │
│  │   (CMS)     │◄──────────►│   (DTC)     │◄──────────►│  NAS/dbstore │ │
│  └─────────────┘            └─────────────┘            └─────────────┘ │
└─────────────────────────────────────────────────────────────────────────┘

2.4 关键运行态组件

组件名 对应产物 主要职责
cantiand pkg/src/server 编译产出 Cantian 主数据库服务器进程
cms pkg/src/cms 编译产出 集群管理服务器,负责节点心跳、资源调度、故障检测
gsql / ctclient pkg/src/utils/gsql 编译产出 命令行 SQL 客户端
gspe pkg/src/utils/gspe 编译产出 密码与密钥管理工具
gsc pkg/src/driver/gsc 编译产出 C 语言客户端驱动库
ha_ctc.so 外部 MySQL 插件 MySQL 的 Cantian 存储引擎插件

三、核心功能与已有特性

3.1 存储引擎能力

  • 表与索引组织: 支持堆表、B+ 树索引、分区表、临时表、外部表等。
  • 表空间管理: 数据文件、临时表空间、undo 表空间、表空间扩展与收缩。
  • 大对象(LOB): 独立 LOB 存储与日志机制。
  • 缓存管理: 多缓冲区池、页面读取/写入、脏页刷写、一致性读取。
  • 数据校验: 支持页面级校验和,检测静默数据损坏。

3.2 事务与并发

  • ACID 事务: 完整的事务开始、提交、回滚语义。
  • MVCC: 多版本并发控制,通过 SCN/SSN 实现一致性读。
  • 锁机制: 行锁、表锁、分布式锁(DLS)、闩锁(Latch)等。
  • 死锁检测: 本地与分布式死锁检测(MES 中的死锁相关消息)。
  • 隔离级别: 支持读已提交、可重复读等等级。

3.3 持久化与恢复

  • Redo/Undo 日志: 物理 Redo 日志用于崩溃恢复,Undo 用于事务回滚与 MVCC。
  • 检查点(Checkpoint): 周期性或触发式检查点,缩短恢复时间。
  • 崩溃恢复: 基于 Redo 日志的前滚恢复。
  • 归档与备份: 归档日志管理、物理备份与恢复。
  • 闪回(Flashback): 支持表闪回、数据恢复等能力。

3.4 集群与高可用

  • DTC 双节点集群: Distributed Transparent Cluster,两个节点共享同一份存储。
  • 全局缓存一致性: 通过 MES 消息实现页面所有权、失效通知、主从转换。
  • 全局 SCN/LSN: 集群级系统变更号与日志序列号同步。
  • CMS 集群管理: 节点心跳、资源监控、故障检测、IOFENCE 隔离。
  • 复制能力: Redo 日志发送、接收、回放,支持高可用扩展。

3.5 兼容与生态

  • MySQL 兼容: 通过 CTC 插件让 MySQL 使用 Cantian 作为存储引擎。
  • DDL 广播: 跨节点 DDL 变更同步(TSE 中的 DDL Broadcast)。
  • 统计信息: CBO(Cost-Based Optimizer)统计信息收集与同步。
  • 客户端工具: gsql 命令行客户端、GSC 驱动、gspe 安全工具。

3.6 安全与运维

  • 安全加密: SSL/TLS 通信、AES/KMC 密钥管理、SCRAM-SHA-256 认证。
  • 审计: gstbox 中的审计相关能力。
  • 巡检: 部署脚本中包含 inspection_task.py 等巡检工具。
  • 黑匣子: 崩溃信息收集(blackbox 机制)。

四、系统模块划分

根据源码目录结构与功能职责,Cantian 可划分为以下 14 个核心系统模块。后续文档将针对每个模块进行独立深度解析。

序号 模块 源码位置 核心职责 对应深度文档
1 服务端进程架构 pkg/src/server cantiand 主进程的启动、生命周期、参数管理、会话管理、监听器、Reactor 模型 cantian_server_architecture.md
2 SQL 引擎 pkg/src/cmd SQL 解析、函数、JSON 处理、查询执行(zesql 静态库) cantian_sql_engine.md
3 内核存储引擎总览 pkg/src/kernel 数据库内核的入口与整体协调、数据库创建/修改、接口封装 cantian_storage_engine.md
4 缓冲池与页面管理 pkg/src/kernel/buffer Buffer Pool、页面访问、日志页面、一致性读取 cantian_buffer_pool.md
5 事务与并发控制 pkg/src/kernel/xact 事务生命周期、Undo、锁、闩锁、死锁、MVCC cantian_transaction.md
6 持久化与恢复机制 pkg/src/kernel/persist Redo 日志、检查点、崩溃恢复、归档、日志文件管理 cantian_persistence_recovery.md
7 复制与高可用 pkg/src/kernel/replication Redo 发送/接收/回放、复制状态、GBP、Raft 相关 cantian_replication_ha.md
8 表与索引组织 pkg/src/kernel/table + pkg/src/kernel/index 堆表/索引的 CRUD、分区、PCR/RCR 索引、统计信息 cantian_table_index.md
9 集群通信子系统 pkg/src/mec 节点间消息通信(MES)、消息队列、消息池、TCP/UDS 传输 cantian_cluster_communication.md
10 分布式集群管理 pkg/src/cluster + pkg/src/cms DTC 分布式集群、缓存一致性、全局锁、CMS 资源调度 cantian_cluster_management.md
11 MySQL 兼容适配层 pkg/src/tse MySQL 与 Cantian 的适配、会话映射、DDL 广播、消息队列 cantian_tse_mysql_adapter.md
12 客户端协议与工具 pkg/src/protocol + pkg/src/driver + pkg/src/utils 通信协议、GSC 驱动、gsql/gspe 工具 cantian_client_protocol_tools.md
13 安全可信工具箱 pkg/src/gstbox 数据修复、日志挖掘、审计、页面分析 cantian_security_gstbox.md
14 部署与运维体系 common/ + ct_om/ + pkg/deploy/ 安装部署、配置管理、巡检、升级、卸载 cantian_deployment_ops.md

五、可达到实用的程序与部署形态

5.1 可独立运行的程序

Cantian 项目编译完成后,可产生以下实用程序/库:

程序/库 说明 实用性
cantiand Cantian 主服务器 ⭐⭐⭐⭐⭐ 核心数据库进程
cms 集群管理服务器 ⭐⭐⭐⭐⭐ 集群高可用调度
gsql / ctclient 命令行 SQL 客户端 ⭐⭐⭐⭐⭐ 日常运维与开发
gspe 密码与密钥管理工具 ⭐⭐⭐⭐ 安全运维
libgsc.so / 静态库 C 客户端驱动 ⭐⭐⭐⭐ 应用接入
ha_ctc.so MySQL 存储引擎插件 ⭐⭐⭐⭐⭐ 与 MySQL 对接
静态库群 zeserver、zekernel、zemes、zecluster 等 ⭐⭐⭐⭐ 被主程序链接

5.2 典型部署形态

形态 1: NAS 共享存储双节点集群
复制代码
┌─────────────┐              ┌─────────────┐
│   Node 0    │              │   Node 1    │
│  cantiand   │◄──心跳网络──►│  cantiand   │
│    cms      │              │    cms      │
└──────┬──────┘              └──────┬──────┘
       │                            │
       └────────┬───────────────────┘
                │ NFSv4.0 / NFSv4.1
                ▼
       ┌─────────────────┐
       │   共享存储 NAS   │
       │  (数据/共享/归档/元数据)
       └─────────────────┘

特点:

  • 两台数据库服务器共享 NAS 存储。
  • 使用 NFSv4.0 挂载 cms 共享文件系统。
  • 使用 NFSv4.1 挂载数据、归档、元数据文件系统。
  • 通过心跳网络实现节点间通信与 CMS 仲裁。
形态 2: dbstore 部署模式
复制代码
┌─────────────┐              ┌─────────────┐
│   Node 0    │              │   Node 1    │
│  cantiand   │◄──RoCE/RDMA──►│  cantiand   │
│    cms      │              │    cms      │
└──────┬──────┘              └──────┬──────┘
       │                            │
       └────────┬───────────────────┘
                │ RDMA / TCP
                ▼
       ┌─────────────────┐
       │   dbstore 存储   │
       │ (华为分布式存储)  │
       └─────────────────┘

特点:

  • 使用 dbstore 协议(RDMA/TCP)访问后端存储。
  • 需要配置 cantian_vlan_ipstorage_vlan_iplink_type 等参数。
  • 适合对接华为企业级存储,获得更高 I/O 性能。
形态 3: MySQL + Cantian 集成
复制代码
┌─────────────────────────────────────┐
│           MySQL 8.0.26              │
│  ┌─────────────────────────────┐   │
│  │  CTC 插件 (ha_ctc.so)       │   │
│  │  - ctc_ddl_rewriter         │   │
│  │  - CTC 存储引擎              │   │
│  └─────────────────────────────┘   │
└─────────────────┬───────────────────┘
                  │ 共享内存 / 消息队列
                  ▼
┌─────────────────────────────────────┐
│         Cantian 引擎 (cantiand)      │
│    TSE 适配层 + 内核存储引擎         │
└─────────────────────────────────────┘

接入方式:

  • 在 MySQL 中执行 install plugin ctc_ddl_rewriter soname 'ha_ctc.so'
  • 执行 install plugin CTC soname 'ha_ctc.so'
  • 或通过 mysqld --plugin_load 启动参数加载。

六、依赖组件与外部配合

6.1 第三方依赖库

组件 版本示例 用途
OpenSSL 1.1.1n SSL/TLS、加密、哈希
zlib 1.2.11 数据压缩
lz4 1.9.3 高速压缩
Zstandard 1.5.2 高压缩比压缩
protobuf 3.13.0 协议序列化(TSE 与 MySQL 通信)
protobuf-c 1.4.1 C 语言 protobuf 绑定
pcre2 10.40 正则表达式处理
华为 securec - 安全函数库

6.2 基础设施配合

配合项 说明
操作系统 CentOS 8.2(x86)为官方支持版本
编译工具 CMake >= 3.14.1、automake、libtool、g++、libaio、pkgconfig、rpmbuild
网络 至少两个网络平面:心跳网络、NAS/RoCE 存储网络
共享存储 NAS(NFSv4.0/4.1)或华为 dbstore 存储
文件系统 数据文件系统、cms 共享文件系统、元数据文件系统、归档文件系统(可选)
Kerberos 可选,用于 NFS 安全认证(krb5 / krb5i / krb5p)
MySQL MySQL 8.0.26(如需其他版本需适配)

6.3 部署配置关键参数

config_params.json 中的关键参数:

参数 含义
deploy_user 数据库运行用户,如 ctdba:ctdba
cluster_id / cluster_name 集群标识
node_id 节点 ID,双节点为 0 / 1
cms_ip 节点间心跳 IP
storage_*_fs 各类存储文件系统名称
deploy_mode --nas--dbstore
link_type 0=TCP, 1=RDMA, 2=RDMA_1823
db_type 0=性能模式, 1=归档模式

七、当前问题、限制与注意事项

7.1 已知限制

限制项 说明
操作系统支持 当前仅明确支持 CentOS 8.2(x86),其他系统需自行适配
MySQL 版本 当前仅支持 MySQL 8.0.26,其他版本需适配
节点规模 当前 DTC 架构主要面向双节点共享存储集群
构建复杂度 需要准备 open_source、library、platform 三个依赖目录,步骤较多
硬件依赖 dbstore 模式需要华为存储或兼容设备支持 RDMA/RoCE

7.2 使用注意事项

  1. 证书私钥密码加密 : 当前使用 base64 编码保存私钥密码,如需替换算法需修改 pkg/deploy/action/install.shpkg/src/mec/mes_tcp.c
  2. 共享内存文件权限 : MySQL 与 Cantian 需能共同访问 /dev/shm 下的共享内存文件。
  3. NFS 协议匹配: 不同文件系统需使用正确的 NFS 版本(cms 共享用 v4.0,数据/归档/元数据用 v4.1)。
  4. 卸载方式 : 支持 override(彻底卸载)和 reserve(保留数据卸载重装)两种方式。
  5. 巡检依赖: 部分巡检项需要连接 zsql 数据库,需正确输入账号密码。

八、业界同类技术比较

8.1 与 Oracle RAC 比较

维度 Cantian Oracle RAC
架构 共享存储双节点集群(DTC) 共享存储多节点集群(RAC)
上层兼容 MySQL(CTC 插件) Oracle 自有协议
缓存一致性 MES 消息 + 页面所有权 Cache Fusion
集群管理 CMS Clusterware / Grid Infrastructure
成熟度 新兴开源项目 几十年企业级积累
生态 开源、木兰许可证 商业软件

差异点: Cantian 的定位更偏向于"为 MySQL 等开源数据库提供共享存储集群能力",而 Oracle RAC 是完整的企业级 Oracle 数据库集群。

8.2 与 Amazon Aurora 比较

维度 Cantian Amazon Aurora
架构 计算存储分离 / 共享存储 计算存储分离,日志即数据库
部署 私有化 / 本地 NAS / dbstore AWS 托管云服务
副本 双节点共享存储读写 一个写节点 + 多个读副本
存储 NFS / dbstore 自研分布式存储
开源 是(Mulan PSL v2)

差异点: Aurora 是云原生托管数据库,强调日志下推和存储层计算;Cantian 是开源引擎,强调与 MySQL 的兼容和私有化共享存储部署。

8.3 与 PolarDB 比较

维度 Cantian PolarDB
架构 共享存储集群 共享存储集群(PolarStore)
兼容 MySQL MySQL / PostgreSQL
部署 私有化 / 本地存储 阿里云托管 / 私有部署
开源 部分开源
节点数 当前双节点为主 一写多读,可扩展多个只读节点

差异点: PolarDB 是云厂商产品,拥有成熟的云管控和扩展能力;Cantian 提供开源的底层引擎,用户可自主构建集群。

8.4 与 TiDB 比较

维度 Cantian TiDB
架构 共享存储集群 分布式 NewSQL(计算/存储/调度分离)
一致性 共享存储 + 缓存一致性 Raft 协议 + Spanner-like 时间戳
兼容 MySQL 存储引擎层 MySQL 协议层
扩展性 垂直扩展 + 双节点 水平扩展,多节点
数据分布 共享一份数据 数据分片(Region)

差异点: TiDB 是 Share-Nothing 分布式数据库,强调水平扩展;Cantian 是 Share-Storage 集群,强调共享存储下的强一致和低延迟。

8.5 定位总结

复制代码
┌─────────────────────────────────────────────────────────────┐
│                     数据库架构谱系                           │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  Share-Nothing 分布式        │   Share-Storage 集群        │
│  ─────────────────────────   │   ──────────────────────     │
│  TiDB / CockroachDB          │   Oracle RAC / Cantian      │
│  水平扩展、数据分片           │   共享存储、缓存一致性        │
│                                                             │
│  云原生托管                   │   私有化 / 混合云             │
│  ─────────────────────────   │   ──────────────────────     │
│  Amazon Aurora / PolarDB     │   Cantian / 自建 RAC        │
│  日志下推、存储计算分离       │   本地 NAS/dbstore、自主可控  │
│                                                             │
└─────────────────────────────────────────────────────────────┘


九、总结与展望

9.1 核心要点回顾

本文从项目定位、整体架构、核心功能、模块划分、部署形态、依赖配合、问题限制、业界对比等维度,对 Cantian 项目进行了全景式介绍:

维度 关键结论
项目定位 面向共享存储架构的数据库存储加速引擎,主打 MySQL 兼容与双节点集群
核心架构 cantiand + CMS + MES + DTC + TSE + 内核存储引擎的多层架构
关键能力 存储引擎、事务并发、持久化恢复、集群一致性、MySQL 兼容
部署形态 NAS 模式 / dbstore 模式,双节点共享存储集群
主要依赖 OpenSSL、lz4、Zstandard、protobuf、protobuf-c、pcre2、securec
生态对比 介于 Oracle RAC 与 Aurora/PolarDB 之间,走开源 + 私有化共享存储路线

9.2 当前成熟度评估

Cantian 已经具备一套相对完整的数据库存储引擎能力,包括:

  • ✅ 完整的内核存储引擎(表、索引、事务、日志、恢复)
  • ✅ 双节点共享存储集群架构(DTC)
  • ✅ 集群消息通信与管理(MES + CMS)
  • ✅ MySQL 8.0.26 兼容接入(CTC 插件)
  • ✅ 部署运维脚本与巡检工具

但仍处于持续演进阶段,主要挑战包括:

  • ⚠️ 操作系统与硬件平台支持范围有待扩展
  • ⚠️ 上层数据库兼容目前以 MySQL 为主,PostgreSQL 等兼容尚在探索
  • ⚠️ 大规模集群(多节点)能力相比商业产品仍有差距
  • ⚠️ 社区生态、文档、案例仍在建设中

附录 A: 关键术语表

术语 全称 说明
DTC Distributed Transparent Cluster 分布式透明集群,Cantian 的双节点共享存储集群架构
CMS Cluster Management Service / Component 集群管理服务,负责心跳、资源调度、故障检测
MES Message Exchange Service / Component 集群消息交换服务,负责节点间通信
TSE Tianchi Storage Engine / Transactional Storage Engine MySQL 兼容适配层
CTC Cantian Transactional Connector MySQL 的 Cantian 存储引擎插件
GSC GaussDB / Cantian C Client C 语言客户端驱动
GSQL 命令行 SQL 客户端 类似 psql / mysql 的交互式工具
GSPE 密码/密钥管理工具 用于加密、密钥生成、KMC 转换等
GSTBox 安全可信工具箱 审计、修复、日志挖掘等工具集合
SCN System Change Number 系统变更号,用于 MVCC 与一致性读
LSN Log Sequence Number 日志序列号,用于恢复与复制
PCR Primary Cluster Row / Persistent Cluster Row 与索引/表组织相关的术语
RCR Row Cluster Row / 类似概念 索引组织形式

文档版本 : v1.0

最后更新 : 2026-06-18

适用范围: Cantian 当前主分支

声明: 本文基于 Cantian 开源项目的源码与 README 进行分析,部分内部实现细节可能随版本迭代而变化。建议读者结合具体版本的源码进行对照学习。