GaussDB的数种形态

GaussDB作为一种新兴的关系型数据库产品,似乎有点让人摸不着头脑。有朋友问我GaussDB单机版怎么样,有人说GaussDB是分布式数据库,还有人说它是云数据库,还有人会把GaussDB和华为的数据仓库GaussDB DWS混为一谈。确实,公开的GaussDB的资料对这些问题没有明确的说法,并且GaussDB作为数据库独立商业销售不足一年,大家对这个产品的了解不多,众说纷纭就不足为奇了。今天我们来聊聊GaussDB的数种形态,当然这里的GaussDB和华为的GaussDB DWS不是一码事。   

从大类来看,GaussDB分为云数据库GaussDB和轻量化部署形态GaussDB两种,云数据库是华为云上的GaussDB,华为数据库产品这些年还处于发展期,前期的命名和版本号都比较乱,云数据库GaussDB是现在的叫法,以前还曾经被称为GaussDB for openGauss,因为华为云上的RDS都被统称为GaussDB,这种命名方法实际上很不利与GaussDB的品牌推广。很容易让大家把GaussDB与GaussDB for MySQL,GaussDB for Postgresql等基于开源数据库的云上RDS混淆了。       

除了云数据库和轻量化部署形态这两大类以外,每个大类里,GaussDB还分为分布式和主备版这两种类型。这两种类型在部署架构和使用、运维方面还是有很大的差别的。      

不管哪种部署架构,其RDBMS的核心是统一的,这个核心与openGauss也是有渊源的,大部分的核心代码是共有的。这种特性让使用GaussDB的多种形态以及openGauss的用户可以共享部分运维经验。不过集中式数据库与分布式数据库之间的天然鸿沟让这些形态的数据库之间的运维经验共享变得有些困难。熟悉openGauss的DBA想要去运维GaussDB分布式数据库,还是有大量的知识需要去学习。

云数据库的GaussDB版本需要依赖于DBS平台以及华为云的基础能力,其部署架构是十分复杂的。其安装部署十分复杂,其运维操作也只能依赖于DBS平台的能力。实际上上图只是包含了部署GaussDB的平台环境,并没有包含GaussDB本身。如果加上GaussDB数据库,这张图就会复杂得没法看了。所以只能用这张补充的图来进一步说明。

从轻量化部署形态的数据库架构图上,我们可以把GaussDB看得更为清晰一些。对于主备结构的GaussDB,其轻量化部署形态如下图。

DN是数据库节点,每个DN是一个独立的数据库实例。OM是GaussDB的运维管理模块,提供各种运维工具。ETCD是一个小型的分布式键值数据库,用于服务发现与共享配置信息的存储。在整个GaussDB集群运行中起到十分重要的作用。GaussDB主备版的高可用切换、消息发布、分布式锁、分布式队列、集群健康状态监控、Leader选举等方面都需要ETCD参与。CM是华为的集群管理组件,由CM AGENT、CM SERVER、CM Monitor组成。主备版是GaussDB分布式数据库的一个简化版。一般采用三节点部署模式,一主二从,通过数据库复制保持主从库的数据同步。平时只有主节点对外提供读写服务,一旦主节点故障自动选举出新的主节点,完成数据同步后接管业务。

GaussDB的分布式模式稍微复杂一些,DN作为存储节点,是分布式分区部署的。业务应用哪个不直接连接到DN上,而时连接到计算节点CN上。GTM作为全局事务管理器负责处理分布式事务。为了保证高可用,GTM采用主从结构,一主一备,主节点故障时备节点接管。因为GaussDB的GTM使用了GTM-LITE,因此主备切换的效率还是不错的,不会对生产业务产生太大的影响。

         

除此之外,GaussDB数据库要想在用户侧很好的使用,还有数个组件是必不可少的,其中一个是DRS,通过DRS可以完成从其他数据库向GaussDB数据复制的工作。

实际上哪怕是GaussDB的轻量化部署形态,所涉及的组件还是挺复杂的,安装部署、启停数据库等操作还是有些复杂。我想随着GaussDB数据库产品的升级,GaussDB的系统化工作会进一步深入,当年Oracle也走过这样一个过程,我第一次安装Oracle数据库的时候,创建一个表空间都需要先用OS命令touch一个文件,然后才能把这个文件加入到表空间里。现在国产数据库的各种复杂让刚刚用惯了Oracle的用户感受到了各种不便,也会有各种吐槽。我想国产数据库的开发者应该擅长倾听这些吐槽,并有义务让这种不便尽快变成方便。

本文作者:白鳝的洞穴    

     

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

密码学基本概念(补充)

BiBa模型的*特性规则:主体不能修改更高完整级的客体(主题不能向上写) Diffie-Hellman密钥交换协议的安全性基于求解离散对数的困难性,既对于C^d M mod P,在已知C和P的前提下,由d求M很容易,但是…

取代Windows的系统复制粘贴等文件处理

TeraCopy 可以到官网下载也可以通过应用商店下载 主要作用 : 取代Windows的系统复制粘贴等文件处理 常规窗口 点击第一排最左侧的按钮会显示这个窗口, 显示所以文件操作记录 , 这个也是我装这个软件的原因之一, 框选的是当前正在进行的 当执行复制粘贴时会自动出现, 让自行…

从零开始:如何通过美颜SDK构建自己的直播美颜工具

今天,我将详细介绍如何通过美颜SDK从零开始构建自己的直播美颜工具。 一、了解美颜SDK 什么是美颜SDK 开发者可以通过集成SDK,快速在应用中实现这些功能,而无需从头编写复杂的图像处理算法。 选择合适的美颜SDK 选择时可以根据以下几个方…

RAG 高效应用指南 :Query 理解

前言 构建一个检索增强生成 (Retrieval-Augmented Generation, RAG) 应用的 PoC(概念验证,Proof of Concept)过程相对简单,但要将其推广到生产环境中则会面临多方面的挑战。这主要是因为 RAG 系统涉及多个不同的组件,…

使用Nginx正向代理让内网主机通过外网主机访问互联网

目录 环境概述 流程说明 在外网服务器上安装部署nginx 安装前准备 下载nginx 编译安装nginx 开始配置正向代理 创建systemd服务单元文件,用于管理Nginx服务的启动、停止和重新加载 启动nginx 代理服务器本地验证 内网服务器验证 将代理地址添加到环境变量中…

38. 【Java教程】日期和时间处理

本小节我们将学习 Java 中的日期和时间,日期和时间在我们的实际开发中非常常用,例如用户的注册、数据的增删改、对敏感信息的操作等等都需要记录下日期和时间。通过本小节的学习,你将了解到什么是日期、什么是时间、什么是时区,Ja…

查看云是基于openstack是哪一个版本开发的?

进入版本发行网站: OpenStack Releases: OpenStack Releases 进入云的后台,查看例如nova的版本号 rpm -qa | grep nova 查看到nova的版本号是21版本,点开releases中例如Ussuri查看nova的版本号,是21,则该云是基于U…

数据分析技术---对比K-means,密度分析和层次聚类性能

一、数据集选择: Iris数据集。 二、实验代码: #对比k-means、密度聚类和层次聚类性能import matplotlib.pyplot as pltfrom sklearn import datasetsfrom sklearn.cluster import KMeans, DBSCAN, AgglomerativeClusteringfrom sklearn.preprocessing i…

STM32自己从零开始实操04:显示电路原理图

一、TFT-LCD 屏接口 1.1指路 以下是该部分的设计出来后的实物图,我觉得看到实物图可能更方便理解这部分的设计。 图1 实物图 这部分设计的是一个屏幕的接口,很简单。使用的屏幕是:2.8inch 16BIT Module MRB2801。 1.2数据手册 &#xff0…

metasploit上线之后可以使用的命令

1. 通用控制命令 meterpreter > essions -k 1 # 通过ID号杀死一个会话 meterpreter > background # 将会话放入后台 meterpreter > getuid/getpid # 查询用户权限与PID meterpreter > sysinfo # 查看目标…

智慧校园教学模式的崛起:优化学习体验

在当今数字化时代,智慧校园教学模式正在成为教育界的热门话题。随着科技的不断发展,传统的教学方式已经无法满足现代学生的需求。智慧校园教学模式以其灵活性、互动性和个性化的特点,正逐渐改变着教育的面貌。 首先,智慧校园教学模…

R_AARCH64_ADR_PREL_PG_HI21问题说明

目录 问题现象: 问题原因 问题机理 问题现象: 客户现场加载out文件出现如下问题: 打印“Relocation of type ‘R_AARCH64_ADR_PREL_PG_HI22…..’”,明确是ARDP指令引起的问题 问题原因 ARDP的寻址范围是4GB范围,加载的位置…

Tomcat概述及部署

目录 一、Tomcat概述 1.Tomcat的简介 2.Tomcat 核心的三个组件 3.应用场景 4.Tomcat 请求过程 二、部署安装Tomcat 三、Tomcat 虚拟主机配置 四、Tomcat多实例部署 一、Tomcat概述 1.Tomcat的简介 Tomcat 是 Java 语言开发的,Tomcat 服务器是一个免费的开…

经验分享,超声波车位引导系统和视频车位引导系统有哪些区别

随着城市化进程的加速和汽车保有量的持续增长,停车难已成为城市交通管理的一大挑战。车位引导系统作为解决这一问题的有效工具,其重要性日益凸显。它不仅能够提升停车场的运营效率,还能显著改善驾驶者的停车体验。目前市场上主要有两种车位引…

颠沛流离学二叉树(完结撒花篇)

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人…

mac M1下安装PySide2

在M1下装不了PySide2, 是因为PySide2没有arm架构的包 1 先在M1上装qt5 安装qt主要是为了能用里面的Desinger, uic, rcc brew install qt5 我装完的路径在/opt/homebrew/opt/qt5 其中Designer就是用来设计界面的 rcc用resource compiler, 编绎rc资源文件的, 生成对应的py文件…

使用pexpect检查SSH上的文件是否存在

使用 pexpect 模块可以在 Python 中执行命令并检查其输出。你可以使用 ssh 命令连接到远程服务器,并执行 ls 命令检查文件是否存在。下面我就列举几个我经常遇到的几个错误并做个详细的解决方案。 1、问题背景 用户需要编写一个 Python 脚本,以检查一个…

编制教师违约金一般是多少钱

老师们,你们在签订合同时,对合同中提到的违约金条款感到疑惑?那么,编制教师的违约金一般是多少呢?可能很多老师在签订合同时都没有一个明确的答案。 违约金的设定是为了保障双方的权益,当一方违反合同约定时…

有极性电容器的引脚极性怎么判别?

由于有极性电容器有正、负之分,在电路中又不能乱接,所以在使用有极性电容器前需要先判别出正、负极。有极性电容器的正、负极判别方法如图2—9~图2—11所示。 方法一:对于未使用过的新电容,可以根据引脚长短来判别。引…

【阿里前端面试题】聊聊前端性能优化的方案,解决过什么样的性能问题?

大家好,我是“寻找DX3906”。每天进步一点。日积月累,有朝一日定会厚积薄发! 前言: 前面已经和大家分享了4篇面试题: 《【阿里前端面试题】浏览器的加载渲染过程》 《【阿里前端面试题】客户端和服务器交互&#xff…