一文读懂GaussDB(openGauss) 的六大关键技术特性
摘要:更为深入地介绍了GaussDB(openGauss)的关键特性、成功案例。
GaussDB(openGauss)是深度融合华为在数据库领域多年的经验,结合企业级场景需求,推出的新一代企业级分布式数据库,支持集中式和分布式两种部署形态。
它面向金融互联网交易和政企OA/办公场景,具有安全可靠、超高性能、简单易用等优势。
华为云数据库产品部高级产品经理沈志鹏在1024程序员狂欢节的直播间,更为深入地介绍了GaussDB(openGauss)的关键特性、成功案例。
分布式or集中式,总有一个适合你
GaussDB(openGauss)定位为企业级云分布式数据库,架构上着重构筑传统数据库的企业级能力和互联网分布式数据库的高扩展和高可用能力。

对比传统形态,GaussDB(openGauss)能够获得:
高性能:支持分布式事务强一致性,同时32节点下能够达到1200万tpmC的性能实测指标;
高可用:支持同城跨AZ多活容灾,两地三中心金融级部署场景;
高拓展:当前支持最大256节点的在线扩容,同时保障客户拥有卓越的性能线性增长,打破传统DIY架构的性能天花板;
易运维:高度支持HTAP混合负载场景,极大的减少了业务改造成本,同时基于云平台获在线监控,运维,升级等便利的能力。
GaussDB(openGauss)在华为云上拥有两种部署形态:集中式和分布式,分别面向企业核心交易和未来海量事务型场景,打造差异化竞争力。
集中式部署
集中式部署又包括单机和主备两种类型。
以主备为例,支持1+2(最大保护)主备,基于数据库日志复制的热备,在单机性能可满足需求的情况下,提供高可用。
其中,1+1(最大可用)指的是,数据会同步写往备机。但如果出现网络等影响,无法完成同步操作,会转为异步。后续网络恢复,会自动追上。在数据不同步期间,切换会有数据丢失。
1+2(最大保护)则意味着数据会同步写往备机,且要求必须有一个确认,才向客户端返回。可靠性高。
集中式版本拥有开源生态,用户可以通过开源网站直接下载,作为国内唯一开源数据库,也是华为开源、开放、不LOCKIN单一厂商的最佳证明。
分布式部署:
分布式部署方面,数据按shard划分,读写负载准线性扩展,满足大规模业务量场景,支持两地三中心高可用部署。另外,分布式版本承载华为云自研分布式组件体系,是传统企业拥抱互联网,面向未来海量事务型场景挑战的有力保障。
下面是分布式架构中的一些关键角色:

分布式架构又可以分为独立部署&混合部署。
混合部署方案适合通用客户,其方案包括:1、各角色3副本,数据3副本部署;2、各角色进程合一部署,对外只体现数据库节点;

这样部署的优势是组网简洁明了,交付界面高效;起点配置要求低,适配场景比较通用;和未来的技术演进方向匹配。
另一个独立部署方案适合高端客户,它的方案包括:1、各角色3副本,数据3副本部署;2、关键角色进程分开部署,对外体现CMS、GTM、CN、DN主、DN备。
独立部署方案下,用户可以根据业务负载确定CN和DN的最佳比例,达成最高效的组网。

解读GaussDB(openGauss)分布式关键特性
关键技术一:分布式执行框架
业务应用下发SQL给Coordinator,SQL可以包含对数据的增(insert)、删(delete/drop)、改(update)、查(select)。Coordinator利用数据库的优化器生成执行计划,每个DN会按照执行计划的要求去处理数据。

因为数据是通过一致性Hash技术均匀分布在每个节点,因此DN在处理数据的过程中,可能需要从其他DN获取数据,GaussDB 提供了三种stream流(广播流、聚合流和重分布流)来降低数据在DN节点间的流动。
DN将结果集返回给Coordinate进行汇总。Coordinator将汇总后的结果返回给业务应用。
关键技术二: GTM-Lite技术
GTM-Lite技术可以在保证事务全局强一致的同时,提供高性能的事务处理能力,避免了单GTM的性能瓶颈。

这里的高性能事务管理指的是无锁、多版本、高并发事务技术。
而且分布式的GTM-Lite方案提供全局事务快照和提交号管理,实现强一致性,且无中心节点性能瓶颈。
关键技术三:基于NUMA-Aware实现高性能事务处理
基于鲲鹏CPU的NUMA-Aware数据库架构,性能更强。

关键技术四:集群HA,多层级冗余实现系统无单点故障
GaussDB(openGauss)通过硬件冗余、实例冗余、数据冗余,实现整个系统无单点故障,高可用。
其中硬件高可用包括存储磁盘RAID冗余、网络双交换机冗余、多网卡冗余、主机UPS电源保护。
软件高可用则包括协调节点CN实例多活冗余、数据节点/全局事务管理/ 集群管理器实例Active-Standby冗余。
除此之外,还支持软硬件故障检测,最终进一步保障数据库的高可用。
关键技术五:跨AZ/Region容灾技术带来高可用
集群内HA,数据不丢失,业务秒级中断;同城跨AZ容灾,数据不丢失,分钟级恢复,以及两地三中心部署。
除了同城跨AZ和两地三中心,GaussDB(openGauss)还在探索异地多活,其主要特征有:
- 支持多中心统一查询及全局一致读,整体资源利用率高;
- 灵活的高可用方案:通过配置多副本,可以实现DC,AZ,Region级高可用容灾策略;
- 负载分担及故障无缝切换;
- 支持平滑在线扩容。
关键技术六:Scale-out在线横向扩展带来高扩展

GaussDB(openGauss)支持但集群最大256节点,节点扩展下能够获得卓越的性能线性比
同时节点扩容能够做到完全在线,对客户透明,节点扩容完成后DN数据自动重分布,CN自动完成负载均衡。
最后,除了带来GaussDB(openGauss)分布式关键特性解读之外,在1024程序员狂欢节期间,华为云还准备了一大波技术干货直播活动,既能学技术,还能抽盲盒、锦鲤大礼包。
10月23日当天,我们邀请了华为云云原生开源负责人、华为云DevCloud首席技术布道师等10+大咖现身,剖析云原生的行业趋势,倾授云原生实战秘籍。点击观看直播。
还有干货直通车,带你揭晓大厂最深层代码技术,点击查看各技术会场,挖掘更多干货。
一文读懂GaussDB(openGauss) 的六大关键技术特性的更多相关文章
- 一文读懂GaussDB(for Mongo)的计算存储分离架构
摘要:IDC认为,目前阶段来看,企业亟待解决的是数字化能力提升,包括:与业务的深入结合能力:数据处理和挖掘能力:以及IT技术运营和管理能力.特别是数据处理和挖掘能力,因为数字化转型推进企业从以流程为核 ...
- 一文读懂 IPv4 到 IPv6 的过渡技术
在介绍 IPv4 到 IPv6 过渡技术之前,我们先来简单了解一下 IPv4 和 IPv6.什么是 IPv4?IPv4 全称为 Internet Protocol version 4,它为互联网上的每 ...
- 一文读懂数仓中的pg_stat
摘要:GaussDB(DWS)在SQL执行过程中,会记录表增删改查相关的运行时统计信息,并在事务提交或回滚后记录到共享的内存中.这些信息可以通过 "pg_stat_all_tables视图& ...
- 一文读懂HTTP/2及HTTP/3特性
摘要: 学习 HTTP/2 与 HTTP/3. 前言 HTTP/2 相比于 HTTP/1,可以说是大幅度提高了网页的性能,只需要升级到该协议就可以减少很多之前需要做的性能优化工作,当然兼容问题以及如何 ...
- 一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现
一文读懂AI简史:当年各国烧钱许下的愿,有些至今仍未实现 导读:近日,马云.马化腾.李彦宏等互联网大佬纷纷亮相2018世界人工智能大会,并登台演讲.关于人工智能的现状与未来,他们提出了各自的观点,也引 ...
- 一文读懂高性能网络编程中的I/O模型
1.前言 随着互联网的发展,面对海量用户高并发业务,传统的阻塞式的服务端架构模式已经无能为力.本文(和下篇<高性能网络编程(六):一文读懂高性能网络编程中的线程模型>)旨在为大家提供有用的 ...
- 从HTTP/0.9到HTTP/2:一文读懂HTTP协议的历史演变和设计思路
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.引言 HTTP 协议是最重要的互联网基础协议之一,它从最初的仅为浏览网页的目的进化到现在,已经是短连接通信的事实工业标准,最新版本 HT ...
- 一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm)
一文读懂 深度强化学习算法 A3C (Actor-Critic Algorithm) 2017-12-25 16:29:19 对于 A3C 算法感觉自己总是一知半解,现将其梳理一下,记录在此,也 ...
- [转帖]MerkleDAG全面解析 一文读懂什么是默克尔有向无环图
MerkleDAG全面解析 一文读懂什么是默克尔有向无环图 2018-08-16 15:58区块链/技术 MerkleDAG作为IPFS的核心数据结构,它融合了Merkle Tree和DAG的优点,今 ...
- [转帖]一文读懂 HTTP/2
一文读懂 HTTP/2 http://support.upyun.com/hc/kb/article/1048799/ 又小拍 • 发表于:2017年05月18日 15:34:45 • 更新于:201 ...
随机推荐
- Java模块化应用实践之精简JRE(内含开源)
导语 Java9及以后的版本引入了模块化特性,但是直到今天JDK21都发布了,依然没有被大量使用起来,那么这个特性就真的没啥意义了吗? 别忘了,Java本身可是把模块化做到了极致的,所以可以利用这个特 ...
- 20.7 OpenSSL 套接字SSL加密传输
OpenSSL 中的 SSL 加密是通过 SSL/TLS 协议来实现的.SSL/TLS 是一种安全通信协议,可以保障通信双方之间的通信安全性和数据完整性.在 SSL/TLS 协议中,加密算法是其中最核 ...
- Mariadb 10.4 root 用户无法使用无密码登录的原因
Mariadb现在是网站建设中使用的主流数据库之一,当前它很多个版本:10.1.10.2.10.3.10.4. 其中10.1和10.2在程序中使用root用户登录连接数据库都没有什么问题. 如果是10 ...
- 【源码系列#01】vue3响应式原理(Proxy)
专栏分享:vue2源码专栏,vue3源码专栏,vue router源码专栏,玩具项目专栏,硬核推荐 欢迎各位ITer关注点赞收藏 在学习 Vue3 是如何进行对象的响应式代理之前,我想我们应该先去了解 ...
- 使用DHorse发布SpringBoot项目到K8S
前言 在介绍DHorse的操作之前,先来介绍一下使用k8s发布应用的步骤,以SpringBoot应用为例进行说明. 1.首先从代码仓库下载代码,比如GitLab: 2.接着进行构建,比如使用Maven ...
- 微信开放平台微信公众平台微信小程序openid合法性验证
我们获得了微信用户的openid,往往要把openid保存到服务器中的数据库里.有些场景需要检验openid的合法性,官方给了相应的验证接口如下: https://api.weixin.qq.com/ ...
- 解密Spring Cloud微服务调用:如何轻松获取请求目标方的IP和端口
公众号「架构成长指南」,专注于生产实践.云原生.分布式系统.大数据技术分享. 目的 Spring Cloud 线上微服务实例都是2个起步,如果出问题后,在没有ELK等日志分析平台,如何确定调用到了目标 ...
- ruoyi vue 前后端分离版本 打包分离jar包至lib
环境:若依前后端分离版本,原打包时将所有的依赖jar包放至ruoyi-admin.jar 包中,该包130MB,过大. 需求:为了减少打包更新上传的时间,减少至1.1mb 1.将不常更新的模块jar包 ...
- 报错:bs4.FeatureNotFound: Couldn't find a tree builder with the features you requ
安装 pip3 install lxml 即可
- 【Android】【外包杯】后台管理系统 | 进度day01
外包杯官方提示:平台不要太大,只是一些小东西包括支付宝和微信小程序打开,无需安装口香糖,餐巾纸有一块屏幕,不需要很大,只需要满足顾客可以看到传播的内容打开橱窗不要有锋利边角,不要求一体,提高场景利用率 ...