今日,openGauss 3.1.0版本正式上线!

openGauss 3.1.0 版本是openGauss 2022年发布的Preview版本,版本维护生命周期为0.5年。此次发布包含两个数据库服务端安装包:企业版和轻量版。

发行说明请参考官网:

​https://opengauss.org/zh/docs/3.1.0/docs/Releasenotes/Releasenotes.html​

openGauss 3.1.0版本与之前版本特性功能保持兼容,在高可用、高性能、高智能、高安全、工具链、企业级特性、可扩展性等七个方面全面增强。

立即体验openGauss 3.1.0版本!

​https://opengauss.org/zh/download.html​

如果你想要将之前版本升级为openGauss 3.1.0版本,请参考:​https://opengauss.org/zh/docs/3.1.0/docs/UpgradeGuide/upgrade.html​

openGauss 3.1.0版本正式发布 | 七个方面全面增强_mysql

七个方面全面增强快速了解

高可用

1. 两地三中心跨Region容灾

针对两地三中心跨Region容灾特性新增基于流式复制的异地容灾解决方案。

  • 支持灾备数据库failover,满足主备集群异地网络时延<=100ms时,数据库典型配置下灾备升主RTO 分钟级,RPO  0。
  • 支持容灾主备数据库实例计划内switchover,满足主备集群异地网络时延<=100ms时,数据库典型配置下主备倒换,RTO 分钟级,RPO=0。

2. CM支持对外状态查询和推送能力

  • 通过http/https服务远程查询到集群的状态,便于管理人员、运维平台等监控集群状态。
  • 在数据库集群发生切主事件时,通过http/https服务及时地将集群最新的主备信息推送到应用端注册的接收地址,便于应用端及时的感知到集群的主备变化,从而能够快速的连接到新的主机和备机。

3. DCF支持策略化多数派

DCF(Distributed Consensus Framework,分布式共识框架,基于Paxos算法实现数据同步强一致。)支持策略化多数派能力,以多数派为前提,同时根据用户配置的AZ,保证AZ内至少有一个节点同步复制日志。

高性能

基础算子性能提升

  • 新选择率模型典型场景选择率估算准确率提升1X,性能提升1X。
  • 分区表页面估算优化典型场景性能提升20%。
  • Partition Iterator算子优化典型场景性能提升5%。
  • 函数依赖特性支撑多列查询典型场景行数估算准确率提升1X 。
  • SeqScan算子优化典型场景性能提升10%。

高智能

1. DBMind自治运维平台

构建端到端自治运维平台:新增异常检测能力,完善自监控、自诊断、自调优能力。

  • DBMind服务化:提供简易的部署能力、通过新增cmd exporter扩充采集指标;将原有的openGauss-exporter扩展为Agent, 便于获得即时信息;提供多种形式的功能API,便于与用户已有的运维平台对接和集成。
  • 异常检测:通过对监控到的指标进行分析,可以给出系统异常状态波动告警,包括基于规则的和基于算法的两种模式。其中,基于算法的包括对spike, mean shift等典型异常场景进行分析

2. 智能优化器

  • 实现库内Bayes网络算法并基于此实现智能统计信息以提高多列基数估计准确度,进而提升生成的执行计划质量。
  • 计划自适应选择解决因数据倾斜、索引不准、使用Offset查询等引起的计划跳变难题,性能提升1x以上。

高安全

细粒度Any权限增强

Any权限管理,新增支持以下5种对象共12种ANY权限功能:

  • ALTER ANY TYPE、DROP ANY TYPE
  • ALTER ANY SEQUENCE、DROP ANY SEQUENCE、SELECT ANY SEQUENCE
  • ALTER ANY INDEX、DROP ANY INDEX
  • CREATE ANY TRIGGER、ALTER ANY TRIGGER、DROP ANY TRIGGER
  • CREATE ANY SYNONYM、DROP ANY SYNONYM

工具链

1. MySQL全量迁移性能提升,提升全量迁移性能

通过支持表级并行迁移,提升MySQL全量迁移性能,基于sysbench测试模型,在Kunpeng-920 2p服务器上,10张表(单表容量三百万以上)使用10并发迁移,可达到大于300M/s的迁移性能。

2. MySQL增量迁移支持事务级并行消费,提升增量迁移性能

  • 基于开源三方件mysql-binlog-connector-java解析mysql的binlog,并根据mysql主备并行复制的原理,对可并行的事务在openGauss端采用多线程进行并行回放,以实现MySQL到openGauss的在线迁移。
  • 利用sysbench对MySQL压测,在10张表30个线程并发情况下,IUD混合场景下,在Kunpeng-920 2p服务器上测试整体增量迁移性能可达3w tps。

3. 支持基于默克尔树的数据校验

实现基于默克尔树的数据实时校验工具,支持MySQL数据迁移到openGauss时,源端与目的端数据全量和增量校验。

4. 支持openGauss到MySQL迁移,满足MySQL反向迁移要求

  • 特性基于openGauss的逻辑复制实现,在openGauss端开启逻辑复制,使用JDBC获取逻辑解码,对逻辑解码进行SQL解析,通过多线程并发迁移到MySQL端,满足用户数据从MySQL迁移到openGauss后,两个数据库并行运行或迁移后逃生的诉求。
  • sysbench对openGauss进行压测,在100张表100个线程并发情况下,针对insert场景,在Kunpeng-920 2p服务器上测试整体迁移性能可达3w tps。


企业级特性

1. 行存表压缩能力增强

  • 通过对行存数据进行压缩的操作,改变数据页面的存储状态。通过增加一个映射管理层将压缩页面分块落盘。整体过程发生在数据库脏页刷盘过程,对数据库的上层逻辑不影响,对用户不感知。
  • 满足TPCC测试模型中,压缩率2:1以上,且性能劣化小于5%。

2. 发布订阅能力增强

发布订阅功能增强,支持异地双活解决方案。

  • 轻量化版本支持发布订阅功能,满足边云协同场景需求。
  • 支持发布端主备切换后订阅关系不断开。
  • 支持同步订阅关系创建前的基础数据。
  • 支持备份恢复后复制槽不丢失,保证发布订阅的连接正常。
  • 支持以二进制格式发送数据。

3. 细粒度滚动升级

在灰度升级下,提供一种升级指定部分节点的功能。保证在不中断业务的情况下,先升级部分节点再升级剩余节点,减少升级场景业务中断时间。

4. statement_history视图诊断能力增强

  • 备机支持statement_history视图,满足备机慢SQL诊断要求。
  • statement_history增加对waitevents的统计,记录慢SQL执行时等待事件耗时和次数。

可扩展性

1. 集成openLookeng,提供分布式OLAP能力

基于openLookeng实现分布式分析能力,openLookeng复用shardingsphere中间件的分库分表能力,使openLookeng可以获取openGauss数据进行分析运算。加上shardingSphere搭配openGauss形成的分布式OLTP能力一起组合成分布式的HTAP能力。

注: openLooKeng: 面向大数据库的数据虚拟化引擎,详情 https://openlookeng.io/zh/

ShardingSphere:将任何数据库转换为分布式数据库系统的生态系统,并通过分片、弹性扩展、加密功能等对其进行增强。详情:https://shardingsphere.apache.org/

2. CM支持管理shardingSphere Proxy和注册中心

CM支持自定义资源管理,支持管理shardingSphere Proxy和注册中心,支持异常情况自动拉起。

感谢openGauss社区所有贡献者

独行快,众行远。感谢来自社区1005名参与openGauss3.1.0版本贡献的开发者。


openGauss 3.1.0版本正式发布 | 七个方面全面增强_数据库_02


同样感谢积极参与本次版本贡献的华为、海量数据、云和恩墨、中国联通、电子科技大学计算机科学与工程学院、宁夏大学信息工程学院、华南理工大学软件学院、兰州大学信息科学与工程学院