openGauss 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
openGauss 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: MulanPSL-2.0
开发语言: C/C++ 查看源码 »
操作系统: 跨平台
开发厂商: 华为
收录时间: 2019-08-09
提 交 者: 红薯

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通过机器学习方法自动调整数据库参数,提高调参效率,降低正确调参成本。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

openGauss 的相关博客

GaussDB系列数据库简介

官网下载地址: https://support.huawei.com/enterprise/zh/software/index.html GaussDB 支持哪些数据库的迁移? GaussDB目前...

实操:从Oracle到GaussDB的数据迁移

本文转载自dbaplus社群(dbaplus) 作者介绍 莫熙钟,新炬网络数据库运维专家。精通Oracle、MySQL、PostgreSQL等数据库运维技...

GaussDB数据dump实现完全同步

问题背景:搭建服务后端容灾集群,服务正常时容灾DB需要从业务DB完全同步数据,服务异常时,容灾DB停止抽取数据,自动从探针采...

实操:从Oracle到GaussDB的数据迁移

https://dbaplus.cn/news-10-2973-1.html 作者介绍 莫熙钟,新炬网络数据库运维专家。精通Oracle、MySQL、PostgreSQL等数据库...

实操:从Oracle到GaussDB的数据迁移

https://dbaplus.cn/news-10-2973-1.html 作者介绍 莫熙钟,新炬网络数据库运维专家。精通Oracle、MySQL、PostgreSQL等数据库...

opengauss、GaussDB数据库安装-详细教程

本文详细介绍了opengauss安装的过程,以及在安装过程中可能会碰到的一些问题,依照本文的顺序进行安装,可以保证最后安装成功...

详解GaussDB(DWS) explain分布式执行计划

摘要:本文主要介绍如何详细解读GaussDB(DWS)产生的分布式执行计划,从计划中发现性能调优点。 前言 执行计划(又称解释计划)...

GaussDB for DWS:内存自适应控制技术总结

1.技术背景 在SQL语句复杂、处理数据量大的AP场景下,单个查询对内存的需求越来越大,多个语句的并发很容易将系统的内存吃满,...

华为云 GaussDB 数据库,会是新的国产之光吗?

华为云数据库业务总裁苏光牛 7月20日,华为云TechWave技术峰会上,华为云数据库业务总裁苏光牛正式发布两大数据库新品,包括关...

一文读懂GaussDB(openGauss) 的六大关键技术特性

摘要:更为深入地介绍了GaussDB(openGauss)的关键特性、成功案例。 GaussDB(openGauss)是深度融合华为在数据库领域多年的经验...

评论 (20)

加载中
Gauss 200也就是Gauss-A?
01/19 11:10
回复
举报
GaussDB 这个跟 greenplum有啥区别???
2019/09/29 14:18
回复
举报
我高斯实名制起诉华为侵犯我的姓名权
2019/09/28 09:05
回复
举报
没说啥时候啊
2019/09/23 17:26
回复
举报
GaussDB能装在windows下吗
2019/09/20 20:22
回复
举报
http://m.elecfans.com/article/678193.html
2019/09/20 13:47
回复
举报
支持图吗?
2019/09/20 09:06
回复
举报
软件真和CPU架构有关的, 你查一下。
2019/09/19 13:34
回复
举报
支持Arm,在鲲鹏服务器可达150tpmc
昨天 11:31
回复
举报
源码呢
2019/09/19 12:48
回复
举报
Gitee 搜openGauss
昨天 11:29
回复
举报
软件支不支持某CPU,关你软件啥事,搞笑
2019/09/19 12:04
回复
举报
当然不一样咯,CPU不一样指令集都不一样。
2019/09/20 09:03
回复
举报
大兄弟,你一直是搞win的开发嘛?
2019/09/20 13:46
回复
举报
这个估计是只会写HTML的。。。连CPU架构和软件的关系都不知道。
2019/09/20 18:13
回复
举报
编译器的事情好比好
2019/09/20 18:57
回复
举报
哎,不想再给你科普了。你是不是以为是编译一个JS一样?
2019/09/28 09:03
回复
举报
76
软件当然和CPU有关。但你说说posgresql,mysql,Marinadb,sqlite,哪个不支持arm编译?
2019/10/01 09:24
回复
举报
都“可以”支持ARM,但都需要单独针对ARM修改程序源码。所以不是像很多人想象中只需要写代码就行,不用关心CPU架构。这样的人基本上就停留在最浅显的编程概念上。
2019/10/01 09:57
回复
举报
当然,我知道很多人不知道程序语言底层是基于CPU指令集的,所以误以为CPU只是简单的运算工具。
2019/10/01 10:15
回复
举报
更多评论
20 评论
661 收藏
分享
返回顶部
顶部