返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

使用EntityFramework 相关问题以及注意事项
............................ 111
11
处理连接异常及常用错误代码
...............................
112

内存

操作系统:Redhat Linux

存储配置:SSD

Benchmark :200 warehouse; 500
terminal
TPC-C 测试:TPMC=50.6 万
资源利
用率高
动态分
配资源
容易
移植
GBase 8s 基于多线程、多进程架构
不依赖于操作系统(AIX, Solaris,
HPUX, Linux, etc)
多线程模式共享CPU
与内存资源, 及时释
放系统资源, 提高系
统资源利用率
根据数据处理量,
动态分配资源,
提高数据的并行
处理能力

22
技术架构:中国移动去“ IOE” 数据库选型测试
来自中移动测试报告
并发增加,性能稳定,优于Oracle

23
高可用架构:架构总览—两地三中心高可用

24
高可用架构:SSC 共享存储集群

所有的节点共享一个存储设备

主节点和辅节点距离非常近,一般在同一个机房


SSC 辅节点可读写

一个集群中可以有多个SSC 辅节点,辅节点下
线对集群无影响

故障切换秒级,一般不超过1 分钟

在容灾备份方面,可以承受服务器软件故障、内
存故障、CPU 故障;不能承受火灾、地震、海
啸、磁盘的故障

25
高可用架构:SSC 共享存储集群

26
高可用架构:Oracle RAC vs GBase 8s SSC
主节点
SSC 辅节点

主辅节点

同步手段 -逻辑日志(redo log)

数据复制 -逻辑日志重做于内存

特点:简单,辅节点容错。

双主节点

同步手段 -共享内存同步

数据复制 -共享内存同步

特点:复杂;高写入时性能下降
内存
内存
GBase 8s SSC
主节点
共享存储
RAM
内存
内存
Oracle RAC
主节点
逻辑日志重做
在SSC 内存
逻辑日志
两节点共享
内存双向同步
两节点共享
内存双向同步
RAM
RAM
RAM
共享存储

27
Oracle RAC 与GBase 8s SSC 的相同点
都是基于共享存储高可用集群
都具有扩展性,可以在一定范围内随业务需要而扩展
节点间关系对等,有节点失败后,集群中其它节点会接管失败节点的工作
Oracle RAC 与GBase 8s SSC 的不同点
工作原理不同
RAC 的不同节点管理不同的资源(数据页),通过内存融合在节点间共享信

SSC 基于LSN 在辅节点上把逻辑日志恢复到缓冲区
节点失败后故障处理的原理和过程不同
RAC 在任何节点失败时均会导致资源重分配
SSC 只有在主节点失败后才会发生故障切换,辅节点失败只影响当前连接
故障切换的效率不同
RAC 进行资源重分配的时间与多种因素有关,在几秒钟到几分钟之间不等
SSC 在主节点失败后进行故障切换的时间通常不超过1 分钟
高可用架构:Oracle RAC vs GBase 8s SSC 简要总结
SSC VS
Oracle RAC

28
高可用架构:HAC 之同城两中心容灾
事务日志复制

同步方式:基于逻辑日志的复制;支持同步模式、异步模式和半同步模式。

高性能:采用缓冲区内存同步方式,然后到辅助服务器回放的方式;

容灾:同步模式下零数据丢失。

29
高可用集群- 多通道传输
是否开启多通道支持配置

灾备集群(HAC ) 采用逻辑日志复制技术保障主备节点数据一致。

通过SMX 通道实现主备节点数据通讯 现有HAC 灾备集群主备节点间通讯只使用了一个SMX 通道。

充分利用带宽,性能提升3 倍以上。

新增发送模块,将
日志切分成多块;

将数据包通过多条SMX 通道发送给
备机,多个SMX 通道可以同时发送
多个数据包,提高日志传输吞吐量;

日志切的块数及通
道条数系统自动设
置识别;

备机的接收模块在接收到数据
包后,恢复成原有日志,保证
数据的正确性。
发送缓冲区
接收缓冲区
发送线程
(主)
(备)
SMX_Send
SMX_Send
SMX_Send
……
SMX_Recv
SMX_Recv
SMX_Recv
……
接收线程

30
高可用集群- 引入RDMA 技术
引入RDMA 技术到现有HAC 灾备集群

现有高可用集群采用传统的TCP/IP 传输技术
,对网络延迟比较敏感、性能较差,需要做
进一步优化;

对现有高可用集群传输技术进行改造,引进
先进的RDMA 技术,提高网络效率并降低
TCO ,大幅提升高可用集群性能;

下一步基于该技术构建多写多读的内存同步
集群(RAC )。

大压力下,主备延时<1 分钟

大压力下,主备延时<1 分钟

适用集群:HAC 主备集群

适用集群:HAC 主备集群

后续将支持共享存储集群、同城灾备集群

后续将支持共享存储集群、同城灾备集群

千兆网延时:约24 微秒

万兆网延时:约16 微秒

Infiniband 延时:约2 微秒;带宽56G~100G

31
读写分离集群
• 适用场景
• 写少读多;
• 读性能线性提升;
• X86 国产化;
• 小机下移。
• 读写分离级别
• 会话级,事务一致;
• 操作级,高性能。
• 自动读写分离
• 对应用透明;
• Select 到从,其他操作到主;
• 接口层实现,支持JDBC 、ODBC


原理:
利用备库提供只读服务、无法修改数据的特性优先将所有操作发送到备库执行,一旦
备库执行报错,则发送到主库重新执行。通过备库“试错” 将只读操作分流到备库
执行。备库“试错”由接口层自动完成, 对应用透明。
应用
应用
应用
应用
读写分离集群
主节点
从节点
数据同步
W
rites
Reads

32
高可用保障- 两地三中心高可用容灾方案

全文检索应用
URI 数据类型只是VARCHAR 数据类型的扩充,因此在全文索引的建立、更新和

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
923
查询方面,都跟VARCHAR 数据类型一致。
示例
示例:全文索引的应用。
建表语句:
CREATE TABLE fturi (fturi varchar (2048) URI);
建立全文索引:
CREATE FULLTEXT INDEX idx_1 ON fturi(fturi);
插入URI 数据
INSERT INTO fturi VALUES
('file:///home/fti/dat/txt/189.txt\r\nContent-Type:
text/plain\r\n\r\n');
INSERT INTO fturi VALUES
('file:///tmp/fulltxt/subdirs_28323/e51029f0-e893-4836-a504-6d67804a6a0e\r\
nContent-Length:5571\r\nLast-Modified:Thu, 18 Oct 2012 11:21:21
GMT\r\nContent-MD5:ce0690d74cad8a310fc769b9ceb00153\r\nContent-Type:
application/xml;charset=utf8\r\n\r\n');
……
更新全文索引:
UPDATE INDEX idx_1 ON fturi;
对全文索引字段进行查询。
SELECT * FROM fturi WHERE contains(fturi,'搜狐');