VastbaseG100

基于openGauss内核开发的企业级关系型数据库。

Menu

资源池化特性介绍

特性简介

资源池化特性主要提供主备机共享一份存储的能力,提供一种新的高可用部署形态,解决传统的高可用部署下存储容量较单机翻倍的问题,满足降低存储容量及成本的诉求,同时备机支持实时一致性读。

架构介绍

资源池化整体架构图如图1所示。

图 1 资源池化架构图

  • 读写节点和只读节点共享一份底层存储。

  • 读写节点和只读节点之间通过TCP或RDMA协议使用DMS组件共享Shared Buffer Pool中的热数据页。

  • 读写节点和只读节点通过DSS API和DSS Server的协同访问底层共享存储中的持久化的数据。

资源池化依赖于以下两个组件:

  • 分布式存储服务DSS(Distributed Storage Service)

    DSS组件分为DSSAPI和DSSSERVER。DSSSERVER是独立进程,直接管理磁阵裸设备,并对外提供类似分布式文件系统的能力;DSSAPI是动态库,集成在数据库内部。DSS组件通过共享内存和客户端API动态库,为数据库提供创建文件、删除文件、扩展和收缩文件、读写文件的能力。

  • 分布式内存服务DMS(Distributed Memory Service)

    DMS是动态库,集成在数据库内部,通过TCP / RDMA网络传输PAGE内容,将主备内存融合,提供内存池化能力,以此实现备机实时一致性读功能。

磁阵,磁盘阵列。把多块独立的硬盘按不同的方式组合起来形成一个硬盘组,从而提供比单个硬盘更高的存储性能。

功能特点

  • 主备共享一份数据,显著降低传统高可用方案的存储容量。
  • 主备之间去除了日志复制功能,增加了主备页面交换功能,备机支持实时一致性读。
  • 默认情况下,主备之间是通过TCP网络进行页面实时交换。为了降低页面交换的延迟,可选通过OCK RDMA动态库加速备机实时一致性的性能。

主备页面交换通过RDMA加速,依赖CX5网卡,并且依赖OCK RDMA动态库。

适用场景与限制

  • 要求存储设备是磁阵,磁阵的LUN需要支持SCSI3的PR协议(包括PR OUT(“PERSISTENT RESERVE OUT”)PR IN(“PERSISTENT RESERVE IN”)和INQUIRY), 用于实现集群IO FENCE;除此之外, 还需要支持SCSI3的CAW协议(COMPARE AND WRITE),用于实现共享磁盘锁。如Dorado 5000 V3磁阵设备。
  • 最高支持1主7备部署。
  • 由于资源池化依赖类似分布式文件系统的功能来实现备机实时一致性读能力,因此要求文件元数据变更越少越好。基于性能考虑,本特性只支持段页式表。
  • 只支持主备部署在同一磁阵设备上,不支持容灾部署,也不支持主备混合部署(如主和备部署在不同的磁阵设备上)。
  • 主备页面交换可选通过RDMA加速,依赖CX5网卡,并且依赖计算提供的OCK RDMA动态库。
  • 暂不支持备机重建及节点替换、节点修复等能力。
  • 不支持传统模式数据库和资源池化模式数据库相互升级。

更多约束(限制)内容请参考资源池化当前架构特性约束