一文读懂GaussDB的六大关键技术特性
GaussDB是深度融合华为在数据库领域多年的经验,结合企业级场景需求,推出的新一代企业级分布式数据库,支持集中式和分布式两种部署形态。
它面向金融互联网交易和政企OA/办公场景,具有安全可靠、超高性能、简单易用等优势。
华为云数据库产品部高级产品经理Evan shen在1024程序员狂欢节的直播间,更为深入地介绍了GaussDB的关键特性、成功案例。
分布式or集中式,总有一个适合你
GaussDB定位为企业级云分布式数据库,架构上着重构筑传统数据库的企业级能力和互联网分布式数据库的高扩展和高可用能力。
对比传统形态,GaussDB能够获得:
高性能:支持分布式事务强一致性,同时32节点下能够达到1200万tpmC的性能实测指标;
高可用:支持同城跨AZ多活容灾,两地三中心金融级部署场景;
高拓展:当前支持最大256节点的在线扩容,同时保障客户拥有卓越的性能线性增长,打破传统DIY架构的性能天花板;
易运维:高度支持HTAP混合负载场景,极大的减少了业务改造成本,同时基于云平台获在线监控,运维,升级等便利的能力。
GaussDB在华为云上拥有两种部署形态:集中式和分布式,分别面向企业核心交易和未来海量事务型场景,打造差异化竞争力。
集中式部署
集中式部署又包括单机和主备两种类型。
以主备为例,支持1+2(最大保护)主备,基于数据库日志复制的热备,在单机性能可满足需求的情况下,提供高可用。
其中,1+1(最大可用)指的是,数据会同步写往备机。但如果出现网络等影响,无法完成同步操作,会转为异步。后续网络恢复,会自动追上。在数据不同步期间,切换会有数据丢失。
1+2(最大保护)则意味着数据会同步写往备机,且要求必须有一个确认,才向客户端返回。可靠性高。
集中式版本拥有开源生态,用户可以通过开源网站直接下载,作为国内唯一开源数据库,也是华为开源、开放、不LOCKIN单一厂商的最佳证明。
分布式部署
分布式部署方面,数据按shard划分,读写负载准线性扩展,满足大规模业务量场景,支持两地三中心高可用部署。另外,分布式版本承载华为云自研分布式组件体系,是传统企业拥抱互联网,面向未来海量事务型场景挑战的有力保障。
下面是分布式架构中的一些关键角色:
CM(S) |
集群管理模块(Cluster Manager)。管理和监控分布式系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行。 |
GTM |
全局事务管理器(Global Transaction Manager),负责生成和维护全局事务ID、事务快照、时间戳等全局唯一的信息。 |
CN |
协调节点(Coordinator Node)。负责接收来自应用的访问请求,并向客户端返回执行结果;负责分解任务,并调度任务分片在各DN上并行执行。 |
DN |
数据节点(Datanode)。负责存储业务数据(支持行存、列存、混合存储)、执行数据查询任务以及向CN返回执行结果。 |
Storage |
服务器的存储资源,持久化存储数据。 |
分布式架构又可以分为独立部署&混合部署。
混合部署方案适合通用客户,其方案包括:1、各角色3副本,数据3副本部署;2、各角色进程合一部署,对外只体现数据库节点;
这样部署的优势是组网简洁明了,交付界面高效;起点配置要求低,适配场景比较通用;
和未来的技术演进方向匹配。
另一个独立部署方案适合高端客户,它的方案包括:1、各角色3副本,数据3副本部署;2、关键角色进程分开部署,对外体现CMS、GTM、CN、DN主、DN备。
独立部署方案下,用户可以根据业务负载确定CN和DN的最佳比例,达成最高效的组网。
解读GaussDB分布式关键特性
关键技术一:分布式执行框架
业务应用下发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通过硬件冗余、实例冗余、数据冗余,实现整个系统无单点故障,高可用。
其中硬件高可用包括存储磁盘RAID冗余、网络双交换机冗余、多网卡冗余、主机UPS电源保护。
软件高可用则包括协调节点CN实例多活冗余、数据节点/全局事务管理/ 集群管理器实例Active-Standby冗余。
除此之外,还支持软硬件故障检测,最终进一步保障数据库的高可用。
关键技术五:跨AZ/Region容灾技术带来高可用
集群内HA,数据不丢失,业务秒级中断;同城跨AZ容灾,数据不丢失,分钟级恢复,以及两地三中心部署。
除了同城跨AZ和两地三中心,GaussDB还在探索异地多活,其主要特征有:
-
支持多中心统一查询及全局一致读,整体资源利用率高;
-
灵活的高可用方案:通过配置多副本,可以实现DC,AZ,Region级高可用容灾策略;
-
负载分担及故障无缝切换;
-
支持平滑在线扩容。
关键技术六:Scale-out在线横向扩展带来高扩展
GaussDB支持单集群最大256节点,节点扩展下能够获得卓越的性能线性比,同时节点扩容能够做到完全在线,对客户透明。节点扩容完成后DN数据自动重分布,CN自动完成负载均衡。
最后,除了带来GaussDB分布式关键特性解读之外,在1024程序员狂欢节期间,华为云还准备了一大波技术干货直播活动,既能学技术,还能抽盲盒、锦鲤大礼包。
10月23日当天,我们邀请了华为云云原生开源负责人、华为云DevCloud首席技术布道师等10+大咖现身,剖析云原生的行业趋势,倾授云原生实战秘籍。点击观看直播。
还有干货直通车,带你揭晓大厂最深层代码技术,点击查看各技术会场,挖掘更多干货。
- 点赞
- 收藏
- 关注作者
评论(0)