GaussDB与openGauss有什么相同和不同?
众所周知,GaussDB是华为自主创新研发的分布式关系型数据库,为企业提供功能全面、稳定可靠、扩展性强、性能优越的企业级数据库服务,openGauss是开源数据库,两者之间又是什么样的关系,有什么相同和不同,让我们一一展开来探讨。
一、产品定位
1、openGauss:
一款支持SQL2003标准语法,支持主备部署的高可用关系型数据库。
- 多种存储模式支持复合业务场景,新引入提供原地更新存储引擎。
- NUMA化数据结构支持高性能。
- Paxos一致性日志复制协议,主备模式,CRC校验支持高可用。
- 支持全密态计算、账本数据库等安全特性,提供全方位端到端的数据安全保护。
- 通过Table Access Method接口层支持多存储引擎。
2、GaussDB:
华为自主创新研发的分布式关系型数据库。该产品具备企业级复杂事务混合负载能力,同时支持分布式事务,同城跨AZ部署,数据0丢失,支持1000+的扩展能力,PB级海量存储。同时拥有云上高可用,高可靠,高安全,弹性伸缩,一键部署,快速备份恢复,监控告警等关键能力,能为企业提供功能全面,稳定可靠,扩展性强,性能优越的企业级数据库服务。
二、内核
1、GaussDB与openGauss是一个内核,但是openGauss是开源,GaussDB是商用。
GaussDB的内核引擎最早是基于PostgreSQL 9.2版本不断演进,根据PG-XC架构衍生了多CN架构,并开发了分布式执行框架和向量化引擎等重要特性。
2、GaussDB和openGauss不同之处:
GaussDB数据库作为企业级的分布式数据库,支持分布式和主备的部署场景,其中分布式版本包含CN(计算节点)、DN(数据存储节点)和GTM(分布式事务管理器)等节点类型。GaussDB数据库的分布式版本是基于share-nothing架构实现的,通过GTM-Lite技术实现事务强一致,消除了无中心节点性能的瓶颈。openGauss简单来说就是GaussDB的一个开源版本,支持主备部署形态。
三、GaussDB与openGauss部署架构
1、GaussDB分布式形态整体架构如下:
- Coordinator Node:协调节点CN,负责接收来自应用的访问请求,并向客户端返回执行结果;负责分解任务,并调度任务分片在各DN上并行执行。
- GTM:全局事务管理器(Global Transaction Manager),负责生成和维护全局事务ID、事务快照、时间戳、sequence信息等全局唯一的信息。
- Data Node:数据节点DN,负责存储业务数据(支持行存、列存、混合存储)、执行数据查询任务以及向CN返回执行结果。
2、openGauss是分布式数据库系统:
在这样的系统架构中,业务数据存储在单个物理节点上,数据访问任务被推送到服务节点执行,通过服务器的高并发,实现对数据处理的快速响应。同时通过日志复制可以把数据复制到备机,提供数据的高可靠和读扩展。
openGauss是分布式系统,支持主备部署。
openGauss逻辑架构图
四、GaussDB和openGauss差异对比
- 开发背景和社区支持:openGauss是由华为公司发起的开源项目,拥有活跃的社区支持和贡献者。GaussDB则是华为公司在openGauss的基础上进行商业化扩展和增强后的商用产品,提供企业级的支持和服务。
- 功能特性:openGauss作为开源产品,其功能相对基础,适合大多数通用场景,并且可以根据需求进行定制和扩展。GaussDB在openGauss的基础上增加了更多的高级特性和优化,包括但不限于性能优化、安全性增强、可靠性提升等,以满足企业级应用的更高要求。
- 技术支持和维护:openGauss作为一个开源项目,通常依赖于社区的支持和贡献来解决技术问题和提供更新。GaussDB作为商业产品,由华为公司提供专业的技术支持和维护服务,包括技术支持热线、定期更新和补丁等。
- 适用场景:openGauss适用于对成本敏感、需要灵活性和可控性的场景,如中小型企业、教育机构或个人开发者。GaussDB更适合对数据安全、性能稳定性和服务质量有较高要求的企业级应用场景,特别是大型企业和关键业务系统。
- 部署架构:openGauss支持主备部署架构,满足高可用要求;GaussDB支持主备和分布式部署形态,高可用架构上支持多中心部署,满足金融级别的高可用要求。
- 扩展能力:openGauss集中式部署受限于单台服务器的处理能力,无法横向扩容;GaussDB支持分布式部署架构,具备横向扩展能力,满足高并发高性能的场景。
- 信创生态支持:openGauss和GaussDB支持全栈信创能力,和国产CPU、国产操作系统和中间件有很好的生态兼容。
五、总结
GaussDB和openGauss数据库作为优秀的国产数据库,在国产化基础软件信创改造的过程中都发挥了重要的作用。现在很多大学也开设了openGauss课程。GaussDB作为企业级的分布式数据库,在金融、电信等关键行业应用广泛,而openGauss作为开源版本,吸引更多的国产数据库爱好者参与共建、开发和优化。欢迎大家一起讨论。
原文作者:hhh1218

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
《HelloGitHub》第 95 期
兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 https://github.com/521xueweihan/HelloGitHub 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,对编程产生兴趣! 以下为本期内容|每个月 28 号更新 C 项目 1、audacity:一款免费、开源的音频编辑工具。该项目是最受欢迎的开源音频编辑软件之一,它拥有容易上手的界面,提供了音频的编辑和录制功能,支持多语言、录音、多音轨混音以及杂音消除等特性,适用于 Windows、macOS、GNU/Linux 操作系统。来自 @ziming012 的分享 2、VeraCrypt:一款开源的磁盘加密软件。该项目是基于知名、已停止维护的 TrueCrypt 开发,修复了已知的许多漏洞和安全问题。经过多年的迭代,VeraCrypt 的功能更加强大。它支持动态加密系统分区、硬件加速、隐藏加密容器、多重认证...
- 下一篇
NJet KIC capabilities管理
NGINX 向云原生演进,All inOpenNJet 前言 从Linux 2.2开始,Linux将传统上与超级用户关联的特权划分为不同的单元(units),称为能力(capabilities),能力可以独立启用和禁用。能力是每个线程的属性。 Linux 有了capabilities机制,基于最小特权原则,可以按需给每个线程赋予需要的能力,而不是全部。从而降低了安全风险。 本文章,重点在于介绍在k8s环境中,使用NJet高级特性时,如何授予相应的能力。而不是介绍Linux capabilities机制和Linux capabilities 在docker中的应用。 NJet 哪些特性需要特权呢? KIC中使用到的NJet特性,需要特权的特性如下: UDP代理(cap_net_admin\cap_net_raw) TCP代理(cap_net_admin\cap_net_raw) Bind 1024以下端口(cap_net_bind_service) 修改进程用户id(cap_setuid) NJet KIC capabilities管理 通过对NJet KIC进行 capabilitie...
相关文章
文章评论
共有0条评论来说两句吧...