openGauss分布式数据库

联合创作 · 2023-10-01 02:25

openGauss是一款开源的关系型数据库管理系统(前身为华为 GaussDB),它具有多核高性能、全链路安全性、智能运维等企业级特性。 openGauss内核早期源自开源数据库PostgreSQL,融合了华为在数据库领域多年的内核经验,在架构、事务、存储引擎、优化器及ARM架构上进行了适配与优化。

openGauss架构

高性能

openGauss突破了多核CPU的瓶颈,实现两路鲲鹏128核150万tpmC,内存优化表(MOT)引擎达350万tpmC。

数据分区

内部线程共享的关键数据结构进行数据分区,减少加锁访问冲突。比如CLOG就采用分区优化,解决ClogControlLock锁瓶颈。

NUMA化内核数据结构

关键数据结构NUMA化分配,减少跨CPU访问。比如全局PGPROC数组按照NUMA Node的数目分为多份,分别在对应NUMA Node上申请内存。解决ProcArrayLock锁瓶颈。

绑核优化

把网络中断绑核和后台业务线程绑核区分开,避免运行线程在核间迁移造成的性能不稳定。

ARM指令优化

结合ARM平台的原子操作lse进行优化,实现关键互斥变量原子高效操作。

SQL BY PASS

通过SQL BY PASS优化SQL执行流程,简化CPU执行开销。

高可靠

正常业务负载情况下,RTO小于10秒,降低节点故障导致的业务不可用时间。

并行恢复

主机日志传输到备机时,备机日志落盘的同时,发送给重做恢复分发线程,分发线程根据日志类型和日志操作的数据页发给多个并行恢复线程进行日志重做,保证备机的重做速度跟上主机日志的产生速度。这样备机实时处于ready状态,从而实现瞬间故障切换。

MOT引擎(Beta发布)

内存优化表(MOT)存储引擎是一个专为多核大内存优化的存储引擎,具有极高的联机事务处理(OLTP)性能和资源利用率。MOT的数据和索引完全存储在内存中,通过NUMA感知执行,算法消除闩锁争用以及查询JIT本地编译,提供低时延数据访问及高效事务执行。更多请参考MOT引擎文档

安全

openGauss支持账号管理,账号认证,口令复杂度检查,账号锁定,权限管理和校验,传输加密,操作 审计等全方位的数据库安全能力,保护业务满足安全要求。

易运维

openGauss将AI算法集成到数据库中,减少数据库维护的负担。

  • SQL预测

openGauss根据收集的历史性能数据进行编码和基于深度学习的训练及预测,支持SQL执行时间预测。

  • SQL诊断器

openGauss支持SQL执行语句的诊断器,提前发现慢查询。

  • 参数自动调整

openGauss通过机器学习方法自动调整数据库参数,提高调参效率,降低正确调参成本。

浏览 7
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报