内存
操作系统: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
高可用保障- 两地三中心高可用容灾方案