1. 首页 > GBase教程 > 正文

GBase教程FG001-GBase产品体系与架构介绍

本文档介绍GBase数据库的产品体系与架构,包括GBase 8a分析型数据库和GBase 8s事务型数据库的核心特性与架构设计。风哥教程参考GBase官方文档GBase 8a系统管理员手册、GBase 8s用户指南等。

通过本文档,您将了解GBase数据库的整体架构、核心特性、部署方案以及生产环境规划建议,为后续的安装配置和日常维护打下基础。

本文档适用于数据库管理员、开发人员和系统架构师,帮助您快速掌握GBase数据库的基本概念和架构原理。

目录大纲

Part01-基础概念与理论知识

1.1 GBase数据库产品体系概述

GBase是天津南大通用数据技术股份有限公司自主研发的数据库产品系列,成立于2004年,始终坚持自主创新,产品的核心技术及底层代码自主可控。GBase构建了覆盖数据管理全生命周期的全技术栈数据产品体系,包括:

  • GBase 8a MPP Cluster:分析型数据库,面向海量数据并行查询、数据仓库、湖仓一体场景
  • GBase 8s:事务型数据库,面向在线交易处理(OLTP)场景
  • GBase 8c:分布式事务型数据库,支持HTAP混合负载
  • GBase 8t:时序数据库,面向物联网、监控等时序数据场景

GBase系列数据库产品及服务范围覆盖全国33个省级行政区域,为金融、电信、政务、能源交通、国防军工等百余个行业上万家用户提供产品和服务,部署节点超过10万个,管理数据总量超过500PB,并远销美国、巴西、墨西哥等五十余个国家及地区。

1.2 GBase 8a分析型数据库架构

GBase 8a MPP Cluster是一款云原生MPP分析型数据库,采用分布式架构设计,主要由以下组件组成:

  • Coordinator节点:负责接收客户端请求,解析SQL语句,生成执行计划,并协调DataNode节点执行任务
  • DataNode节点:负责数据存储和并行计算,每个DataNode管理部分数据
  • 集群管理服务:负责集群状态监控、节点管理、负载均衡等
  • 分布式事务协调器:保证分布式环境下的事务一致性

GBase 8a的核心特性包括:

  • MPP并行计算架构,支持海量数据快速分析
  • 列存储引擎,提高数据压缩率和查询性能
  • 弹性扩展能力,支持在线扩容缩容
  • 高可用设计,支持节点故障自动切换
  • 丰富的SQL语法支持,兼容标准SQL

风哥提示:GBase 8a适合处理TB级甚至PB级的海量数据,在数据仓库、BI分析、报表生成等场景下表现优异。

1.3 GBase 8s事务型数据库架构

GBase 8s是一款高性能事务型数据库,主要面向在线交易处理(OLTP)场景,其架构特点包括:

  • 单实例架构:支持单机部署和主备集群部署
  • 多版本并发控制(MVCC):提高并发处理能力
  • 事务支持:完整支持ACID特性
  • 高可用设计:支持主备复制、故障自动切换
  • 兼容Oracle/Informix:降低应用迁移成本

GBase 8s的核心特性包括:

  • 高性能事务处理,支持高并发
  • 丰富的SQL语法和存储过程支持
  • 完善的安全特性,包括用户权限管理、审计等
  • 灵活的部署方式,支持物理机和虚拟机环境

Part02-生产环境规划与建议

2.1 硬件环境规划

风哥提示:

根据GBase官方文档建议,生产环境的硬件配置应满足以下要求:

组件 GBase 8a推荐配置 GBase 8s推荐配置
CPU 至少8核,推荐16核以上 至少4核,推荐8核以上
内存 至少32GB,推荐64GB以上 至少16GB,推荐32GB以上
存储 SSD,至少1TB,推荐RAID 10 SSD或SAS,至少500GB,推荐RAID 10
网络 万兆网络,推荐InfiniBand 千兆网络,推荐万兆网络

,学习交流加群风哥微信: itpux-com

2.2 操作系统环境配置

GBase支持多种操作系统,推荐使用:

  • Oracle Linux 9.3 / RHEL 9.3
  • Oracle Linux 8.x / RHEL 8.x
  • Oracle Linux 7.x / RHEL 7.x
  • 国产麒麟操作系统 Kylin v10 SP3
  • 欧拉操作系统 openEuler 22.03 LTS

操作系统参数配置建议:

# 关闭透明大页
cat >> /etc/rc.d/rc.local << EOF echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
EOF

# 配置大内存页
echo “vm.nr_hugepages = 16384” >> /etc/sysctl.conf

# 配置系统限制
cat >> /etc/security/limits.conf << EOF * soft nofile 65536 * hard nofile 65536 * soft nproc 65536 * hard nproc 65536 EOF # 配置内核参数 cat >> /etc/sysctl.conf << EOF fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 net.core.netdev_max_backlog = 262144 net.core.somaxconn = 65535 net.ipv4.tcp_max_syn_backlog = 262144 net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1200 net.ipv4.tcp_max_tw_buckets = 5000,学习交流加群风哥QQ113257174 EOF # 使配置生效 sysctl -p

2.3 网络环境规划

网络环境规划建议:

  • 集群内部网络:建议使用万兆网络或InfiniBand,确保节点间通信高效
  • 客户端访问网络:根据实际需求配置,建议千兆以上
  • 网络拓扑:采用星型或树形拓扑,确保网络可靠性
  • 防火墙配置:开放必要的端口,如GBase 8a默认端口5258,GBase 8s默认端口9088

风哥提示:网络性能对GBase 8a集群的整体性能影响较大,建议在生产环境中使用高质量的网络设备和线缆。

Part03-生产环境项目实施方案

3.1 部署方案选择

根据业务需求和规模,选择合适的部署方案:

  • GBase 8a部署方案
    • 单机部署:适用于测试环境或小规模应用
    • 集群部署:适用于生产环境,推荐3节点以上
    • 虚拟集群:适用于云环境或资源共享场景
    • 双活部署:适用于高可用要求较高的场景
  • GBase 8s部署方案
    • 单机部署:适用于测试环境或小规模应用
    • 主备集群:适用于生产环境,提供高可用性

,更多视频教程www.fgedu.net.cn

3.2 集群规划与设计

GBase 8a集群规划建议:

  • 节点数量:至少3个节点,推荐奇数节点以避免脑裂
  • 节点角色:
    • Coordinator节点:至少2个,实现高可用
    • DataNode节点:根据数据量和性能需求确定,推荐至少3个
  • 数据分布:采用哈希分布或范围分布,确保数据均匀分布
  • 容错设计:配置副本数,推荐3副本

3.3 存储规划与配置

存储规划建议:

  • GBase 8a
    • 数据路径:/gbase/fgdata
    • 日志路径:/gbase/fglog
    • 备份路径:/gbase/fgbackup
    • 建议使用SSD存储,提高I/O性能
  • GBase 8s
    • 数据路径:/gbase/fgdata
    • 日志路径:/gbase/fglog
    • 备份路径:/gbase/fgbackup
    • 建议使用RAID 10,确保数据安全和性能

Part04-生产案例与实战讲解

4.1 环境检查与准备

更多学习教程公众号风哥教程itpux_com

在部署GBase数据库之前,需要进行环境检查和准备工作:

# 检查系统版本
cat /etc/redhat-release

Oracle Linux Server release 8.6

# 检查CPU核数 nproc

16

# 检查内存大小
free -h

total used free shared buff/cache available
Mem: 62G 2.3G 58G 152M 1.6G 59G
Swap: 8.0G 0B 8.0G

# 检查磁盘空间
df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 5.2G 45G 11% /
/dev/sdb1 500G 45G 455G 9% /gbase

4.2 架构验证与测试

部署完成后,需要验证架构是否正确:

# 检查GBase 8a集群状态 gcadmin

CLUSTER STATE: ACTIVE
CLUSTER MODE: NORMAL

====================================================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
====================================================================================
| NodeName | IPAddress |gcware |gcluster |DataState | NodeState |,from DB视频:www.itpux.com
———————————————————————————–
| coordinator1 |192.168.1.10| OPEN | OPEN | OK | ACTIVE |
| coordinator2 |192.168.1.11| OPEN | OPEN | OK | ACTIVE |
====================================================================================

====================================================================================
| GBASE DATA CLUSTER INFORMATION |
====================================================================================
|NodeName | IPAddress |gnode |gbase |DataState | NodeState |
———————————————————————————–
| node1 |192.168.1.20| OPEN | OPEN | OK | ACTIVE |
| node2 |192.168.1.21| OPEN | OPEN | OK | ACTIVE |
| node3 |192.168.1.22| OPEN | OPEN | OK | ACTIVE |
====================================================================================

4.3 性能基准测试

进行性能基准测试,验证系统性能:

# 创建测试表
CREATE TABLE fgedu_test ( id INT PRIMARY KEY, name VARCHAR(100), age INT, salary DECIMAL(10,2) ) DISTRIBUTED BY HASH(id);

# 插入测试数据
INSERT INTO fgedu_test VALUES (1, ‘张三’, 25, 5000.00), (2, ‘李四’, 30, 8000.00), (3, ‘王五’, 35, 12000.00);

# 执行查询测试
SELECT *
FROM fgedu_test
WHERE age > 28;

id | name | age | salary
—+——+—–+——–
2 | 李四 | 30 | 8000.00
3 | 王五 | 35 | 12000.00
(2 rows)

Part05-风哥经验总结与分享

5.1 架构设计最佳实践

  • GBase 8a架构设计
    • 根据数据量和查询需求确定节点数量,推荐至少3个DataNode节点
    • Coordinator节点建议与DataNode节点分离部署,提高稳定性
    • 合理配置数据分布策略,避免数据倾斜
    • 根据业务特点选择合适的压缩算法和编码方式
  • GBase 8s架构设计
    • 生产环境建议部署主备集群,提高可用性
    • 合理规划表空间和数据文件,避免单点故障
    • 配置合适的日志模式和归档策略

5.2 部署常见问题与解决方案

  • 网络问题
    • 症状:节点间通信失败
    • 解决方案:检查网络连接、防火墙设置,确保端口开放
  • 存储问题
    • 症状:磁盘空间不足
    • 解决方案:定期清理日志和备份文件,监控磁盘使用情况
  • 性能问题
    • 症状:查询速度慢
    • 解决方案:优化SQL语句,创建合适的索引,调整系统参数

5.3 性能优化建议

  • GBase 8a优化建议
    • 合理设计表结构,选择合适的数据类型
    • 创建适当的索引,提高查询性能
    • 使用分区表,提高数据管理效率
    • 优化SQL语句,避免全表扫描
    • 调整内存参数,提高缓存命中率
  • GBase 8s优化建议
    • 合理配置共享内存参数
    • 优化事务管理,减少长事务
    • 定期更新统计信息
    • 合理配置日志缓冲区

风哥提示:性能优化是一个持续的过程,需要根据实际业务场景和数据特点进行调整。

本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html

联系我们

在线咨询:点击这里给我发消息

微信号:itpux-com

工作日:9:30-18:30,节假日休息