写点什么

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

发布于: 2020 年 10 月 27 日

摘要:更为深入地介绍了 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 级高可用容灾策略;

  • 负载分担及故障无缝切换;

  • 支持平滑在线扩容。



GaussDB(openGauss)支持但集群最大 256 节点,节点扩展下能够获得卓越的性能线性比


同时节点扩容能够做到完全在线,对客户透明,节点扩容完成后 DN 数据自动重分布,CN 自动完成负载均衡。


最后,除了带来 GaussDB(openGauss)分布式关键特性解读之外,在 1024 程序员狂欢节期间,华为云还准备了一大波技术干货直播活动,既能学技术,还能抽盲盒、锦鲤大礼包。


10 月 23 日当天,我们邀请了华为云云原生开源负责人、华为云 DevCloud 首席技术布道师等 10+大咖现身,剖析云原生的行业趋势,倾授云原生实战秘籍。点击观看直播


还有干货直通车,带你揭晓大厂最深层代码技术,点击查看各技术会场,挖掘更多干货。


点击关注,第一时间了解华为云新鲜技术~


发布于: 2020 年 10 月 27 日阅读数: 122
用户头像

提供全面深入的云计算技术干货 2020.07.14 加入

华为云开发者社区,提供全面深入的云计算前景分析、丰富的技术干货、程序样例,分享华为云前沿资讯动态,方便开发者快速成长与发展,欢迎提问、互动,多方位了解云计算! 传送门:https://bbs.huaweicloud.com/

评论

发布
暂无评论
一文读懂GaussDB(openGauss) 的六大关键技术特性