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作为开源版本,吸引更多的国产数据库爱好者参与共建、开发和优化。欢迎大家一起讨论。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/634081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用Portainer部署web站点并实现无公网ip远程访问

文章目录 前言1. 安装Portainer1.1 访问Portainer Web界面 2. 使用Portainer创建Nginx容器3. 将Web静态站点实现公网访问4. 配置Web站点公网访问地址4.1公网访问Web站点 5. 固定Web静态站点公网地址6. 固定公网地址访问Web静态站点 前言 Portainer是一个开源的Docker轻量级可视…

k8s的PV,PVC自动创建

此部署使用传统的pv,pvc方式做持久化数据存储,而是使用storageclass调用provisioner,自动给pod创建的pvc分配pv并绑定,从而达到持久化存储的效果。可根据自己需求创建相关的pv,pvc。 安装NFS服务 NFS Server IP&…

【spark】SparkSQL

目录 SparkSQL01.快速入门什么是SparkSQL为什么学习SparkSQLSparkSQL的特点SparkSQL发展历史-前身Shark框架SparkSQL发展历史 02.SparkSQL概述SparkSQL和Hive的异同SparkSQL的数据抽象DataFrame概述SparkSession对象 03.DataFrame入门和操作DataFrame的组成DataFrame的代码构建…

NativePHP:开发跨平台原生应用的强大工具

NativePHP 是一种创新性的技术,可以帮助开发者使用 PHP 语言构建原生应用程序。本文将介绍 NativePHP 的概念和优势,探讨其在跨平台应用开发中的应用,并提供一些使用 NativePHP 开发原生应用的最佳实践。 什么是 NativePHP? Nati…

js实现iframe内容加载失败自动重新加载功能

最近一个项目上的程序经常出现掉线的情况,经排查是该单位的网络不稳定,存在网络丢包现象。导致有时候程序运行加载页面失败,开机自启动应用时出现请求失败的概率非常大,为了解决这个问题我在网上东找西找也没有找到有效的解决办法…

丰果管道——2024中国家装管道十大品牌

丰果管道——2024中国家装管道十大品牌 丰果(中国)有限公司 丰果管道品牌创立于1999年,是国内最早从事PPR家装管道生产的品牌之一,在业内有着良好的口碑和市场美誉度,在全国的头部装企更是有相当高的市场占有率。2023年…

猫咪发腮长肉吃什么?5款适合猫咪发腮长肉的猫罐头推荐

随着冬季的来临,北方的小猫咪们因为有暖气,日子还算好过。然而南方的猫咪们只能依靠自己的抵抗力来度过这个寒冷的季节。为了确保这些怕冷的小家伙能温暖地度过冬天,铲屎官们是不是该考虑为它们囤积一些肉肉呢? 有些猫咪&#xf…

无货源跨境电商到底应该怎么做,新手必看

如今,跨境电商无疑已经成为了一个热门的创业领域,但对于一些新手来说,面临的一个主要挑战是如何处理产品的货源问题。下面我就和大家分享一下无货源跨境电商的基本概念以及一些新手可以采取的策略和步骤,帮助大家在这个领域取得成…

C#MQTT编程08--MQTT服务器和客户端(cmd版)

1、前言 前面完成了winform版,wpf版,为什么要搞个cmd版,因为前面介绍了mqtt的报文结构,重点分析了【连接报文】,【订阅报文】,【发布报文】,这节就要就看看实际报文是怎么组装的,这…

Flink编程——风险欺诈检测

Flink 风险欺诈检测 文章目录 Flink 风险欺诈检测背景准备条件FraudDetectionJob.javaFraudDetector.java 代码分析执行环境创建数据源对事件分区 & 欺诈检测输出结果运行作业欺诈检测器 欺诈检测器 v1:状态欺诈检测器 v2:状态 时间完整的程序期望的…

3C市场发展态势疲软?直播电商带来新机遇

“ 能否迎来新生 ” 文|王娴 编辑 | 靳淇 出品|极新 目前直播电商成为家电3C行业不可替代的经营阵地,电商生态的重构为关注沟通渠道与销售通路的家电3C行业带来更多选择。内容场与货架场贯通的独特优势,正吸引商家加速入场全域兴趣电商。…

Failed at the node sass@4.14.1 postinstall script.

首先,查看node和 npm版本 #用于列出已安装的 Node.js 版本。 nvm ls #切换node版本 nvm use 12.17.0 #换国内镜像源:(单独设置sass的安装源。) npm config set sass_binary_sitehttps://npm.taobao.org/mirrors/node-sass …

外卖系统创新:智能推荐与用户个性化体验

外卖系统的日益普及使得用户对于更智能、个性化的体验有着不断增长的期望。在这篇文章中,我们将探讨如何通过智能推荐技术,为用户提供更贴心、更符合口味的外卖选择。我们将使用 Python 和基于协同过滤的推荐算法作为示例,让您更深入地了解智…

VBA_MF系列技术资料1-315

MF系列VBA技术资料 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧,我参考大量的资料,并结合自己的经验总结了这份MF系列VBA技术综合资料,而且开放源码(MF04除外),其中MF01-04属于…

CSS常见元素类型 盒子模型

文章目录 常见元素类型块元素内联元素空元素修改元素类型测试元素类型 盒子模型标准文本流:外边距和内边距测试盒子模型 常见元素类型 块元素 常见块元素: div p h1~h6 ul li img 这些元素结束之后自带换行,一行只能存在一个元素,无法横向排列&#xf…

selenium代理ip可用性测试

测试代理ip是否工作正常,将正常的代理ip提取出来 from selenium import webdriver from fake_useragent import UserAgent def check_proxy(proxy):print("开始测试:"proxy)chrome_options webdriver.ChromeOptions()chrome_options.add_arg…

html + css + js简单的项目

以下内容直接复制粘贴就能运行 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title&…

uniapp打包配置 (安卓+ios)

TOC 基础配置 HBuilderX中打开项目的manifest.json文件&#xff0c;在“基础配置”中可以设置App的应用名称、版本号等信息&#xff1a; 应用标识 DCloud应用appid&#xff08;简称appid&#xff09;是由DCloud创建App项目时生成的唯一标识&#xff0c;关联DCloud云端服务&…

CentOS 8.5 安装图解

特特特别的说明 CentOS发行版已经不再适合应用于生产环境&#xff0c;客观条件不得不用的话&#xff0c;优选7.9版本&#xff0c;8.5版本次之&#xff0c;最次6.10版本&#xff08;比如说Oracle 11GR2就建议在6版本上部署&#xff09;&#xff01; 引导和开始安装 选择倒计时结…

原生微信小程AR序实现模型动画播放只播放一次,且停留在最后一秒

1.效果展示 0868d9b9f56517a9a07dfc180cddecb2 2.微信小程序AR是2023年初发布&#xff0c;还有很多问提&#xff08;比如glb模型不能直接播放最后一帧&#xff1b;AR识别不了金属、玻璃材质的模型等…有问题解决了的小伙伴记得告诉我一声&#xff09; 微信官方文档地址 3.代码…