GaussDB数据库介绍
1 GaussDB数据库介绍
1.1 GaussDB 概述
(一)产品定位
GaussDB 是华为基于 openGauss 自研生态推出的企业级分布式关系型数据库,是鲲鹏生态中的主力场景之一,契合数据库云化、分布式、多模处理的未来趋势。其具备企业级复杂事务混合负载能力,支持分布式事务强一致、同城跨 AZ 部署、数据 0 丢失,可提供 1000 + 计算节点扩展能力与 4PB 海量存储,同时兼具云上高可用、高可靠、高安全、弹性伸缩、一键部署、快速备份恢复、监控告警等核心能力,为企业提供功能全面、稳定可靠、扩展性强、性能优越的数据库服务。
(二)全栈自研特性
GaussDB 基于鲲鹏生态,是国内唯一实现全栈自主可控的国产品牌。依托华为在数据库内核的研发积累,融合传统关系型数据库的企业级能力与互联网分布式数据库的优势,在高可用、数据安全、高扩展、高性能方面形成综合优势,并可借助硬件底层优化进一步提升产品综合性能。
(三)核心产品优势
高性能:32 节点规模下事务处理能力高达 1500 万 tpmc;3 节点 TPCH 标准性能压测中,500GB 数据处理耗时 < 200s,100GB 数据处理耗时 < 500s,单集群最大数据量超 4PB。
高可用:支持跨机房、同城、异地、多活部署,保障分布式强一致,实现数据 0 丢失(RPO=0),恢复时间目标 RTO<30 秒。
高扩展:通过分布式全局事务一致性优化打破传统性能瓶颈,实现计算与存储自由水平扩展;支持新增分片数据在线重分布,节点扩展可同步提升存储、查询和加载性能。
高安全:具备访问控制、加密认证、数据库审计、动态数据脱敏、全密态等安全特性,提供端到端全方位数据安全保护。
1.2 GaussDB 体系结构
(一)核心架构:Shared-Nothing 架构
GaussDB 采用 Shared-Nothing(无共享)架构,区别于 Oracle RAC 等共享磁盘架构,具备显著优势:
高扩展能力:适配 BI 和数据分析的高并发、大数据量计算场景,支持通过增加节点扩展性能;
并行处理机制:内部处理自动化并行,数据分布于所有并行节点,每个节点仅处理部分数据,无 I/O 冲突;
优化 I/O 处理:所有节点同步并行处理,节点间无共享资源,避免 I/O 竞争。
(二)逻辑架构与关键角色
|
角色名称 |
英文全称 |
核心功能 |
|
OM |
Operation Manager |
运维管理模块,提供集群日常运维、配置管理的管理接口与工具 |
|
CM |
Cluster Manager |
集群管理模块,管理和监控分布式系统中各功能单元及物理资源运行状态,保障系统稳定 |
|
GTM |
Global Transaction Manager |
全局事务管理器,生成并维护全局事务 ID、事务快照、时间戳等全局唯一信息 |
|
CN |
Coordinator Node |
协调节点,接收应用访问请求并返回执行结果,分解任务并调度分片在各 DN 并行执行 |
|
DN |
Data Node |
数据节点,存储业务数据(支持行存、列存、混合存储),执行数据查询任务并向 CN 返回结果 |
|
ETCD |
Editable Text Configuration Daemon |
分布式键值存储系统,用于共享配置和服务发现(服务注册与查找) |
|
Storage |
- |
服务器存储资源,实现数据持久化存储 |
(三)部署形态
主备部署:支持 1+1(最大可用)或 1+2(最大保护)模式,基于数据库日志复制实现热备,适用于单机性能可满足需求的场景,提供高可用保障。
全分布式部署:数据按 shard 划分,读写负载准线性扩展,适配大规模业务场景;支持同城双活、两地三中心等高可用部署方案,兼顾扩展性与可靠性。
(四)数据存储与分布
数据库逻辑结构:以数据库集群为顶层,包含多个数据库,每个数据库下涵盖表、索引、分区、视图、序列、存储过程等对象,支持行存储、列存储及混合存储方式。
数据分布策略:
Replication(复制):表的每一行数据存储于所有 DN,每个节点均有完整表数据;
Hash(哈希):对指定列进行 Hash 运算,通过映射将数据分布到指定 DN;
Range(范围):按指定列的数值范围映射数据至对应 DN;
List(列表):按指定列的具体值映射数据至对应 DN。
1.3 GaussDB 关键技术
(一)语法兼容与接口支持
兼容 SQL:2011 标准大部分核心特性及部分可选特性,降低应用开发学习成本与新业务开发周期;
支持 JDBC、ODBC、Python、C-API 等标准接口,其中 ODBC 支持 SUSE Linux、Win32、Win64 平台,JDBC 无平台差异,同时支持 Libpq(C 应用程序接口)、PyGreSQL(Python 驱动接口)。
(二)分布式事务处理
ACID 特性保障:支持全局强一致的分布式事务,确保原子性(操作全完成或全不完成)、一致性(事务前后系统状态一致)、隔离性(并发事务互不干扰)、持久性(事务更改永久保存)。
事务隔离级别:
READ UNCOMMITTED:读未提交,仅建议应急只读使用;
READ COMMITTED:读已提交,仅能读取已提交数据;
REPEATABLE READ:可重复读,仅可见事务开始前提交的数据,不支持 SERIALIZABLE(等同于 REPEATABLE READ)。
GTM 模式:
GTM-Lite 模式:采用 CSN 技术优化事务流程,提升并发处理能力,降低中心节点负载,支持分布式事务强一致性读;
GTM-Free 模式:中心事务管理节点不参与事务管理,消除 GTM 单点瓶颈,提升事务处理性能,不支持分布式事务强一致性读。
(三)高可用与容灾技术
多层级冗余:通过硬件冗余(存储 RAID、双交换机、多网卡、UPS 电源)、实例冗余(CN 多活、DN/GTM/CM Active-Standby)、数据冗余实现无单点故障。
容灾方案:
同城跨 AZ 双活:同城部署,应用分担,近实时故障切换,RPO=0 秒,RTO<60 秒,无法抵御大型自然灾害;
两地三中心容灾:AB 中心同城双活,C 中心异地冷备,双集群对生产影响小,RPO=10 秒,RTO=10 分钟,灾备站点资源利用率较低。
(四)扩展与负载均衡
在线横向扩展:支持 Scale-out 扩展,新增节点组与原集群组成新节点组,扩容流程包括集群加节点(分钟级)、数据重分布(小时级,支持增删改查及 DDL 操作)、表切换(秒级,阻塞所有操作),实现性能和容量线性增长。
负载均衡:多 CN 提供统一入口,均匀分发客户端请求,均衡负载并充分利用计算能力;支持故障隔离,内网 JDBC Client 模式下 CN 故障感知约 30 秒,外网 ELB 模式下默认 3 秒(可配置)。
(五)备份恢复与在线升级
备份恢复:支持全量备份(如一周一次)、差量备份(如 30 分钟一次),备份数据存储于 OBS,单分片 2T 数据备份约 4 小时,每 5 分钟差量备份产生 200M 数据(40% 负荷);支持指定差量备份点恢复,10 小时内可恢复至故障前 15 分钟状态,备份保留期限默认 7 天。
在线升级:
热补丁升级:业务零中断加载 / 卸载补丁,缩短紧急问题响应速度;
灰度升级:支持大 / 小版本升级,优先升级部分节点,升级节点闪断 10 秒内;
滚动升级:按 DN 分片滚动升级,支持大 / 小版本升级,每个分片升级业务中断不超过 10 秒。
(六)核心技术指标
|
技术指标 |
最大值 |
|
|
集群 DN 分片数 |
256 |
|
|
单表大小 |
32TB× 节点数 |
|
|
单行数据大小 |
1600×1GB |
|
|
单字段大小 |
1GB |
|
|
单表记录数 |
2²³ |
|
|
单表最大列数 |
1600 |
|
|
单表索引个数 |
2³² |
|
|
单表索引包含列数 |
32 |
|
|
单表约束个数 |
2³² |
|
|
对象名长度 |
63 字节 |
|
|
并发连接数 |
10W |
|
|
AZ 内 RPO/RTO |
RPO=0、RTO<10s |
|
|
AZ 间 RPO/RTO |
RPO=0、RTO<60s |
|
1.4 GaussDB 客户端工具
(一)gsql
特性:命令行交互式数据库连接工具,运行于 Linux 操作系统,支持直接执行 SQL 查询并返回结果,提供丰富元命令用于快速交互。
核心操作:
安装配置:需上传工具包至 Linux 服务器,解压后配置环境变量(PATH、LD_LIBRARY_PATH);
连接命令:gsql -d 数据库名 -h 服务器 IP -U 用户名 -p 端口 -W 密码;
常用元命令:\l(列出所有数据库)、\d(查看表结构)、\h(SQL 语法帮助)、\c(连接新数据库)、\q(退出)等。
(二)DAS(Data Admin Service)
特性:华为云可视化专业数据库管理工具,默认开通 GaussDB 连接权限,支持 SQL 操作、高级数据库管理、智能化运维,易用性强、安全智能。
核心功能:
数据库管理:新建 / 删除数据库、Schema 管理(新建 / 打开 / 删除);
SQL 操作:执行 SQL 语句、查看执行计划、保存常用 SQL、格式化 SQL、SQL 提示;
数据导入导出:支持本地文件 / OBS 桶导入(单文件最大 1G,不支持二进制类型),支持 SQL 结果集导出(最大 5M,系统库不支持导出);
库信息查看:显示实例信息、数据库列表(用户库 / 系统库)、对象列表(表、视图、存储过程等)。
(三)DBeaver
特性:开源通用数据库管理工具与 SQL 客户端,支持 MySQL、PostgreSQL、GaussDB 等兼容 JDBC 的数据库,提供图形化界面用于查看数据库结构、执行 SQL、浏览导出数据等。
连接配置:
安装驱动:下载 GaussDB JDBC 驱动包,解压后将 gsjdbc4.jar 放入 DBeaver 安装目录;
驱动配置:通过 “数据库→驱动管理器” 新增 GaussDB 驱动,配置 URL 模板(jdbc:postgresql://host:port/database)、类名(org.postgresql.Driver);
连接建立:输入服务器 IP、端口、用户名、密码、数据库名,完成连接。
核心功能:对象浏览器(树状展示数据库对象及管理操作)、SQL 编辑窗口(自动联想补全)、查询结果窗口(排序、筛选、导出、编辑)。
1.5 关键缩略语说明
SQL:Structured Query Language(结构化查询语言)
DBMS:Database Management System(数据库管理系统)
OBS:Object Storage Service(对象存储服务)
RTO:Recovery Time Objectives(恢复时间目标)
RPO:Recovery Point Objective(恢复点目标)
ODBC:Open Database Connectivity(开放式数据库连接)
JDBC:Java Database Connectivity(Java 数据库连接)
- 点赞
- 收藏
- 关注作者
评论(0)