GaussDB数据库管理系统介绍
1.GaussDB的发展
2.GaussDB的生态
- 内部:
云化+自动化方案。通过数据库运行基础设施的云化将DBA(数据库管理员)和运维人员的日常工作
自动化。 - 外部:
采用与数据库周边生态伙伴对接与认证的生态连接融合方案,解决开发者/DBA难获取、应用难对接等生态难题。
3.GaussDB特征及技术竞争力
- 分布式:
分布式事务能力+跨DC(Data Center,数据中心)高可用能力,解决传统关系型数据库的扩展性、可用性不足等瓶颈。 - 云化架构:
满足公有云、私有云和混合云场景的云化架构,满足多元需求场景的云数据库诉求。 - 混合负载:
在一套数据库中运行多种负载,简化系统部署,消除数据复制或搬迁带来的数据一致性问题,同时也提升了系统的可靠性和实时性。 - 多模异构:
构建管理移动互联网、物联网、人工智能、时序、图像等多模数据的新型数据库,通过改造优化数据库架构,实现充分利用“通用处理器+异构加速器”算力优势。 - AI+DB:
借助A算法的精度和适用范围,支持在数据库参数调优、SQL执行优化等特定场景下解决问题,支持从图像,语言、文本等非结构化数据抽取结构化信息。
4.设计思想与用户对象
设计思想:利用云技术和A技术,提供空间管理作用范围极为广大的、云部署的数据库系统服务的甚础设施,以实现对计算机资源的共享。
- 公有云数据库系统服务:面向中小型企业的数据库需求。针对中小型企业提供公有云数据库系统服务,大幅降低这类实体的运营成本。
- 私有云数据库系统服务:面向中大型企业的数据库服务需求。在实体内部购买大量设备,同时构筑相关的PaS层和SaS层,数据库服务是其中非常关键一类服务。使得内部和各个部门的信息新系统可以共享相关资源,同时实现数据共享,并降低整体的维护成本,最终降低总体拥有成本。
- 据库系统服务
选择公有云服务,哪些数据库系统服务选择私有云服务,主要从降低系统的总体拥有成本(Total Cost of Ownership,TCO)考虑,包括构建成本、运维成本、折旧费用等。
5.弹性伸缩的多租户数据库架构
6.云数据库的克隆复制
对生产数据库系统进行克隆、复制等操作。克隆、复制出来的数据库系统可以用于非生产系统,并用于
开发、测试流程或参与到基准测试中。
用户非生产系统的数据库系统保持了和生产系统当前一致的数据,同时生产系统中更新的一部分数据也可以实时同步到非生产数据库系统中,进而保持这两部分数据之间的一致性。
7.多模数据库的设计思想
设计思想:在数据库系统之上提供统一的多模数据管理、处理能力,以及统一运维能力。
- 多模数据的存储:对于一个统一的多模数据库系统而言,需要提供多种数据模型的存储能力,包括关系、时序、流图、空间等。
- 多模数据的处理:对于一个统一的多模数据库系统而言,需要提供多种数据库模型的处理能力,包括关系、时序、流图、空间等。
- 多模数据之间的相关转换:大多数情况下,客户的数据产生源只有一个,即数据产生源的数据模型是单一的,但是后续处理可能需要使用多种模型来表征物理世界,进而进行数据处理,或者需要通过多种模型之间的相互协作来完成单一任务。因此,不同模型之间的数据转换也是极为重要的。
8.多模数据库系统架构
引入多模数据库统一框架(Multi–Model Database Uniform Framework),为用户提供关
系数据库、图数据库、时序数据库等多模数据库统一数据访问和维护接口,简化运维和应用开发人
员的学习和使用成本,提升了数据使用安全性(数据无须在多个系统之间进行倒换,减少了数据在
网络上暴露的时间)。
9.GaussDB数据库整体架构
GaussDB主要包括四个逻辑模块:
9.1 数据库前端
提交事务,基于MySQL8.0,100%兼容。
9.2 存储抽象层(SAL)
数据分片、故障恢复、远程数据存储。
9.3 Log Store(日志存储)
日志存储是在存储层中执行的一个服务,负责存储日志记录。一旦
属于事务的所有日志记录都持久化了,就可以向客户端确认事务完
成。
9.4 Page Store(页存储)
Page Store服务器是存储层另外一个服务。GaussDB的数据库被
划分为固定大小(10GB)的分区,这些分区被称为slice。每个
Page Store服务器处理来自不同数据库的多个slices,接收属于它
负责的slices的日志。一个数据库可以有多个slices,每个slice都复
制到3个Page Store,以保证持久性和可用性。
10.部署模式
10.1 单AZ部署
- 3副本:副本在不同节点。
- Log Store:3副本全部持久化,事务才可提交;从任何一个副本即可读取数据,
- Page Store:3副本任何一个持久化,即成功:副本之间可进行同步数据。
。
10.2 多AZ
- 6副本:每个AZ包含两个副本。
- Log Store:6个副本,对于写需要4个成功写入,对于读需要3个副本有效。
- Page Store:6副本任何一个持久化,即成功:副本之间可进行同步数据。
11.写入流程
12.读流程
数据库前端以页为单位读取数据。读取或修改数据时,数据库前端需要把对应的页面读取到
buffer pool中。当需要读取一个新的页面,但ouffer pooli已经满的时候,系统必须淘汰掉一个
页面来置换。
- GaussDB修改了页面淘汰算法,保证脏页对应的所有日志记录成功写入到至少一个Page Store,之后才会
淘汰该页面。因此,GaussDB保证了在日志记录到达Page Store之前,对应页面可以从ouffer pool中
访问。淘汰后,立即就可以从Page Store中读取。 - 对于每个slice,SAL记录发送到slicel的最后的日志记录的LSN。当master节点读取页面时,读操作到达
SAL,SAL会发出一个读请求,并附带上述LSN。读请求被系统发送到已知的时延低的Page Store节点。
如果所选的节点不可用,或者它没有接收到所指定LSN之前的所有日志记录,则返回读异常,SAL将尝试
访问下一个存有该slicel的Page Store节点,直到找到能够满足该请求的节点为止。
13.Log Store日志存储故障恢复
- 临时故障:
·Log Store变为Read-only模式,不会有新的请求,该节点设为临时故障状态。恢复后,不需要Recovery, 丢失数据可从其他副本拉取。 - 永久故障:
·故障节点从集群中剔除,该节点上所丢失的数据,会通过其他副本上进行重构。
相关文章:

GaussDB数据库管理系统介绍
1.GaussDB的发展 2.GaussDB的生态 内部: 云化自动化方案。通过数据库运行基础设施的云化将DBA(数据库管理员)和运维人员的日常工作 自动化。外部: 采用与数据库周边生态伙伴对接与认证的生态连接融合方案,解决开发者/DBA难获取、应用难对接等…...
使用docker部署lnmp多站点
1. 创建一个 Docker 网络 以便容器可以在同一网络上进行通信 docker network create lnmpnetwork2. 运行 MySQL 容器: 运行 MySQL 容器并将其连接到创建的网络。确保将 MySQL 的端口映射到宿主机上,以便您可以从宿主机访问数据库。 将mysql的配置和数…...
实例详解:Java使用JWT和Redis实现高效单点登录(SSO)
前言 单点登录(Single Sign-On,简称SSO)是一种身份验证和访问控制机制,允许用户使用一组凭证(如登录名和密码)登录到多个应用程序中,而无需为每个应用程序单独进行身份验证。用户只需要登录一次…...
SQL中使用ROLLUP和CUBE函数轻松生成汇总行
在数据分析和报表制作中,通常需要对数据进行汇总和分组,我们常用的就是GROUP BY汇总数据,当我们想按照不同维度汇总时,往往需要编写多个GROUP BY预计,而借助ROLLUP 和 CUBE 函数可以一次性生成子总计和总计行ÿ…...

CentOS 7 安装和配置java环境
1 安装包准备 安装包可以通过下面地址进行版本选择安装: https://www.oracle.com/java/technologies/downloads/#java8 2 正式开始安装 本次分享的安装方法直接通过编辑/etc/profile文件实现java的安装 2.1 新建安装包存放目录 mkdir /java cd /java/ 2.2 解压安…...

「实验记录」CS144 Lab0 networking warmup
文章目录 一、Motivation二、SolutionsS1 - Writing webgetS2 - An in-memory reliable byte stream 三、Results四、Source 一、Motivation 第一个小测试 webget 是想让我们体验并模拟一下在浏览器中键入 URL 后获得远程服务器传来的内容,这并没有太大的难度&…...
html5怎么实现语音搜索
html5怎么实现语音搜索 谷歌的网站在他们首页发现了HTML5的新玩法——语音搜索。 注意: 只有webkit核心的浏览器才能使用 用法很简单 只需要在input添加属性x-webkit-speech即可,例子如下: 代码如下: <input type"text" x-…...

吴恩达《机器学习》1-2:什么是机器学习?
一、什么是机器学习? Arthur Samuel(1959): 他定义机器学习为,在进行特定编程的情况下,给予计算机学习能力的领域。 Tom Mitchell(1998): 他定义的机器学习是,…...

基于STC系列单片机实现定时器扫描数码管显示定时器/计数器产生频率的功能
#define uchar unsigned char//自定义无符号字符型为uchar #define uint unsigned int//自定义无符号整数型为uint #define NixieTubeSegmentCode P0//自定义数码管段码为单片机P0组引脚 #define NixieTubeBitCode P2//自定义数码管位码为单片机P2组引脚 sbit LED P1^0;//位定义…...

Linux环境开发工具yum、makefile的使用 【Linux】
文章目录 Linux软件包管理器 - yumLinux下安装软件的方式yum查找软件包如何实现本地机器和云服务器之间的文件互传卸载软件Linux编译器 - gcc/g 程序的翻译过程1.预编译(预处理)2.编译(生成汇编)3.汇编(生成机器可识别…...
第六章(6):Python中的函数—闭包和装饰器
1.闭包 在Python中,闭包是指函数与其相关的自由变量的一个整体。当一个函数返回了一个内部函数时,这个内部函数可以访问其定义所在的外部函数中的变量,即使这个外部函数已经返回了。这种特性就叫做闭包。 代码示意: def funca():x = 250def funcb():print(我仍然可以访问…...

Linux--安装与配置虚拟机及虚拟机服务器坏境配置与连接---超详细教学
一,操作系统介绍 1.1.什么是操作系统 操作系统(Operating System,简称OS)是一种系统软件,它是计算机硬件和应用软件之间的桥梁。它管理计算机的硬件和软件资源,为应用程序提供接口和服务,并协调…...

基于SSM的个性化美食推荐系统设计与实现
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...

Django 全局配置 settings 详解
文章目录 1 概述1.1 Django 目录结构 2 常用配置:settings.py2.1 注册 APP:INSTALLED_APPS2.2 模板路径:TEMPLATES2.3 静态文件:STATICFILES_DIRS2.4 数据库:DATABASES2.5 允许访问的主机:ALLOWED_HOSTS 1 …...

uniapp接口请求api封装,规范化调用
封装规范和vue中的差不多,都是统一封装成一个request对象,然后在api.js里面调用。 先创建一个utils文件夹,然后里面创建一个request.js,代码如下: export const baseURL 基础url地址const request (options) > …...

色彩校正及OpenCV mcc模块介绍
一、术语 1.光:是电磁波,可见光是可被人眼感知的电磁波。可见光大约在400-700nm波段。光子携带的能量与波长成反比,400nm--700nm之间的单色光的颜色从紫色渐变成红色。 2.光谱:除了太阳光源外,LED灯、白炽灯等各种照明…...
2023mathorcup大数据数学建模竞赛A题坑洼道路识别67页完整高质量原创论文
大家好,从昨天肝到现在,终于完成了本次mathorcup大数据数学建模竞赛A题基于计算机视觉的坑洼道路检测和识别的完整论文了。 给大家看一下目录吧: 摘 要: 10 一、问题重述 12 二.问题分析 13 2.1问题一 13 2.2问题…...

【k8s】5、资源管理命令-声明式
目录 一、 yaml和json介绍 1、yuml语言介绍 2、k8s支持的文件格式 3、yaml和json的主要区别 二、声明式对象管理 1、命令式对象配置 2、声明式对象配置 3、声明式对象管理命令介绍 三、编写资源配置清单 1、 编写yaml文件 2、 启动并查看资源 3、创建service服务对外…...

信息系统项目管理师教程 第四版【第6章-项目管理概论-思维导图】
信息系统项目管理师教程 第四版【第6章-项目管理概论-思维导图】 课本里章节里所有蓝色字体的思维导图...
【Flutter】Flutter 中的图片管理 图片优化的最佳实践
【Flutter】Flutter 中的图片管理 图片优化的最佳实践 文章目录 一、前言二、图片资源的重要性1. 对于项目复杂性的影响2. 性能和资源优化3. 国际化和多平台支持4. UI/UX 的角度看图片管理5. 图片资源与应用安全三、Flutter 中的图片资源分类1. Asset 图片2. 网络图片3. 本地文…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill
视觉语言模型(Vision-Language Models, VLMs),为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展,机器人仍难以胜任复杂的长时程任务(如家具装配),主要受限于人…...

实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...

FFmpeg avformat_open_input函数分析
函数内部的总体流程如下: avformat_open_input 精简后的代码如下: int avformat_open_input(AVFormatContext **ps, const char *filename,ff_const59 AVInputFormat *fmt, AVDictionary **options) {AVFormatContext *s *ps;int i, ret 0;AVDictio…...

ZYNQ学习记录FPGA(一)ZYNQ简介
一、知识准备 1.一些术语,缩写和概念: 1)ZYNQ全称:ZYNQ7000 All Pgrammable SoC 2)SoC:system on chips(片上系统),对比集成电路的SoB(system on board) 3)ARM:处理器…...

高考志愿填报管理系统---开发介绍
高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发,采用现代化的Web技术,为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## 📋 系统概述 ### 🎯 系统定…...
FOPLP vs CoWoS
以下是 FOPLP(Fan-out panel-level packaging 扇出型面板级封装)与 CoWoS(Chip on Wafer on Substrate)两种先进封装技术的详细对比分析,涵盖技术原理、性能、成本、应用场景及市场趋势等维度: 一、技术原…...
LUA+Reids实现库存秒杀预扣减 记录流水 以及自己的思考
目录 lua脚本 记录流水 记录流水的作用 流水什么时候删除 我们在做库存扣减的时候,显示基于Lua脚本和Redis实现的预扣减 这样可以在秒杀扣减的时候保证操作的原子性和高效性 lua脚本 // ... 已有代码 ...Overridepublic InventoryResponse decrease(Inventor…...
算法250609 高精度
加法 #include<stdio.h> #include<iostream> #include<string.h> #include<math.h> #include<algorithm> using namespace std; char input1[205]; char input2[205]; int main(){while(scanf("%s%s",input1,input2)!EOF){int a[205]…...