如题,比较初级的疑问,还望各位大佬指教。
1、GaussDB的官方文档对于架构方面的描述感觉有点欠缺,搞不懂分布式版和主备版的区别在哪?
2、此外,现有的材料看起来GaussDB的分布式版看起来跟DWS差别不是很大?
回答:GaussDB(openGauss)在华为云上拥有两种部署形态:集中式和分布式,分别面向企业核心交易和未来海量事务型场景,打造差异化竞争力。
集中式部署
集中式部署又包括单机和主备两种类型。
以主备为例,支持1+2(最大保护)主备,基于数据库日志复制的热备,在单机性能可满足需求的情况下,提供高可用。
其中,1+1(最大可用)指的是,数据会同步写往备机。但如果出现网络等影响,无法完成同步操作,会转为异步。后续网络恢复,会自动追上。在数据不同步期间,切换会有数据丢失。
1+2(最大保护)则意味着数据会同步写往备机,且要求必须有一个确认,才向客户端返回。可靠性高。
集中式版本拥有开源生态,用户可以通过开源网站直接下载,作为国内唯一开源数据库,也是华为开源、开放、不LOCKIN单一厂商的最佳证明。
分布式部署
分布式部署方面,数据按shard划分,读写负载准线性扩展,满足大规模业务量场景,支持两地三中心高可用部署。另外,分布式版本承载华为云自研分布式组件体系,是传统企业拥抱互联网,面向未来海量事务型场景挑战的有力保障。
解读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方案提供全局事务快照和提交号管理,实现强一致性,且无中心节点性能瓶颈。




