GaussDB DWS 详解


文章目录
- GaussDB DWS 详解
- 一、简介
- 二、DWS的分布式架构
- 架构概述
- 关键组件
- 三、分布式查询
- 数据查询流程
- SQL执行的示例
批注:本文引鉴了@Forlogen博主的一些内容,并加以补充,以供学习了解。
GaussDB DWS 详解
一、简介


DWS(Data Warehouse Service)是一种基于公有云基础架构和平台的在线数据处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务。
GaussDB(DWS)是系统的数据库部分,通过JDBC/ODBC接口与应用层交互,提供数据服务,通过Plugin API和Manager模块进行交互,Manager模块负责系统管理和安全管理,管理层通过REST,snmp,Syslog与应用层进行通信。
二、DWS的分布式架构


架构概述
Shared-Nothing架构是一种分布式系统架构。其核心观点是每个节点(机器)都有自己独立的硬件资源,节点之间没有共享硬件组件。每台机器运行一个独立的GaussDB实例,通过大规模集群通讯网络互联,组成一个整体的数据集群。对用户而言,整个集群表现为一个统一的数据库系统。
关键组件
-
OM(运维管理):
- 功能:提供日常运维和配置管理,包括扩容和升级。
-
CM(集群管理):
- 功能:负责集群管理和监控各单元物理资源使用情况,以及负责单节点的故障管理。
-
GTM(全局事务管理):
- 功能:管理全局事务和多版本并发控制(MVCC)
-
WLM(工作负载管理):
- 功能:资源隔离和多租户的划分
-
Coordinator(协调器):
- 功能:承接上层应用链接,处理请求分发、调度、结果返回、SQL解析和优化。
- 位置:协调器节点是分布式的,可以有多个实例(Coordinator-1,Coordinator-2,…,Coordinator-n),每个实例负责一部分请求。
-
Data Node(数据节点):
- 功能:负责数据存储和执行,包括数据分布和多种形式的存储。
- 位置:每个数据节点连接到本地磁盘(Local-Disk),实现数据存储的无共享架构。图中展示了多个数据节点(Data Node-1,Data Node-2,…,Data Node-n)。
-
GDS Loader:
- 功能:做数据入库
三、分布式查询
数据查询流程

具体查询流程如下:
- 用户通过应用程序发出查询本地数据的SQL请求到Coordinator
- Coordinator接收用户的SQL请求,分配服务进程,向GTM请求分配全局事务信息
- GTM接收到Coordinator的请求,返回全局事务信息给Coordinator
- Coordinator根据数据分布信息以及系统元信息,解析SQL为查询计划树,从查询计划树中提取可以发送到Datanode的执行步骤,封装成SQL语句或者子执行计划树,发送到Datanode执行
- Datanode接收到读取任务后,查询具体Storage上的本地数据块
- Datanode任务执行后,将执行结果返回给Coordinator
- Coordinator将查询结果通过应用程序返回给用户
SQL执行的示例

对于第三个示例,也可以考虑直接将C1和C2的数据直接拿到Coordinator中进行表合并和相关操作,届时Coordinator则可能会成为性能瓶颈。

相关文章:
GaussDB DWS 详解
文章目录 GaussDB DWS 详解一、简介二、DWS的分布式架构架构概述关键组件 三、分布式查询数据查询流程SQL执行的示例 批注:本文引鉴了Forlogen博主的一些内容,并加以补充,以供学习了解。 GaussDB DWS 详解 一、简介 DWS(Data Warehouse Ser…...
【256 Days】我的创作纪念日
目录 🌼01 机缘 🌼02 收获 🌼03 日常 🌼04 成就 🌼05 憧憬 最近收到官方来信, 突然发现,不知不觉间,距离发布的第一篇博客已过256天,这期间我经历了春秋招、毕业答辩…...
3D云渲染工具对决:Maya与Blender的性能和功能深度比较
3D建模和动画制作已成为数字领域不可或缺的一环,无论是在影视特效的震撼场面,还是在游戏角色的生动表现,3D技术都扮演着至关重要的角色。而在这一领域,Maya和Blender这两款软件,以其强大的功能和广泛的应用,…...
spring.factories详解
spring.factories 是 Spring Boot 中一个重要的配置文件,它用于实现自动配置类和框架的扩展机制。这个文件通常位于项目的 resources/META-INF 目录下,并且遵循 Java 的 .properties 文件格式。以下是对 spring.factories 的详细解释: 自动配…...
从Docker Hub 拉取镜像一直失败超时?这些解决方案帮你解决烦恼
设置国内源: 提示:常规方案(作用不大) 阿里云提供了镜像源:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors 登录后你会获得一个专属的地址 使用命令设置国内镜像源:通过vim /etc/docker/d…...
【pbootcms】新环境搭建环境安装时发生错误
【pbootcms】新环境搭建环境安装时发生错误 提示一下内容: 登录请求发生错误,您可按照如下方式排查: 1、试着删除根目录下runtime目录,刷新页面重试 2、检查系统会话文件存储目录是否具有写入权限; 3、检查服务器环境pathinfo及伪静态规则配置; 先按照…...
C语言之qsort函数
一、qsort 1.库函数qsort qsort是库函数,直接可以用来排序数据,底层使用的是快速排序。 qsort函数可以排序任意类型的数据。 2.头文件 #include<stdlib.h> 3.参数讲解 void*类型的指针是无具体类型的指针,这种类型的指针的不能直接解…...
R 数据重塑
R 数据重塑 在数据分析领域,R 语言以其强大的数据处理和可视化能力而著称。数据重塑是数据分析过程中的一个重要步骤,它涉及将数据从一种形式转换为另一种更适宜进行分析的形式。R 语言提供了多种工具和包来简化这一过程,如 dplyr、tidyr 和…...
opencascade AIS_InteractiveContext源码学习8 trihedron display attributes
AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行…...
【云岚到家】-day05-6-项目迁移-门户-CMS
【云岚到家】-day05-6-项目迁移-门户-CMS 4 项目迁移-门户4.1 迁移目标4.2 能力基础4.2.1 缓存方案设计与应用能力4.2.2 静态化技术应用能力 4.3 需求分析4.3.1 界面原型 4.4 系统设计4.4.1 表设计4.4.2 接口与方案4.4.2.1 首页信息查询接口4.4.3.1 数据缓存方案4.4.3.2 页面静…...
linux彻底卸载docker
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done 要彻底卸载 Docker 及其相关组件,可以按照以下步骤进行操作。请注意,这些步骤会删除 Docker 安装的所有容器、镜…...
linux高级编程(网络)(www,http,URL)
数据的封包和拆包 封包: 应用层数据(例如HTTP请求)被传递给传输层。传输层(TCP)在数据前添加TCP头部(包含端口号、序列号等)。网络层(IP)在TCP段前添加IP头部ÿ…...
Perl 语言开发(十三):网络编程
目录 1. 概述 2. 网络编程基础 2.1 网络协议概述 2.2 Perl 网络编程基础模块 3. TCP 网络编程 3.1 创建 TCP 服务器 3.2 创建 TCP 客户端 4. UDP 网络编程 4.1 创建 UDP 服务器 4.2 创建 UDP 客户端 5. 高级网络编程 5.1 非阻塞 I/O 5.2 多线程网络编程 6. 简单的…...
Leetcode算法题(移除链表中的元素)
题目如下: 思路1:创建一个新的带头链表 (newhead),遍历头结点对应的值分别于x进行比较,将不等于x的节点尾插到新的带头链表中,返回新的带头链表的下一个节点。 代码如下: typedef …...
浅谈网络安全防守:从被动应对到主动管理的转变
浅谈网络安全防守:从被动应对到主动管理的转变 背景: 在当今的数字时代,网络安全已成为企业生存和发展的重要基石。然而,当企业的网络安全体系面临着诸如资产不清、互联网应用管理混乱、边界防火墙策略失效、长期未修复的漏洞、…...
CentOS7仅安装部署MySQL80客户端
文章目录 CentOS7仅安装部署MySQL80客户端一、前言1.场景2.环境 二、正文1.安装MySQL客户端2. 数据库备份脚本 CentOS7仅安装部署MySQL80客户端 一、前言 1.场景 仅安装部署MySQL80客户端,用于备份数据库时使用 mysqldump 工具 2.环境 Linux 发行版:…...
力扣经典题目之->移除值为val元素的讲解,的实现与讲解
一:题目 博主本文将用指向来形象的表示下标位的移动。 二:思路 1:两个整形,一个start,一个end,在一开始都 0,即这里都指向第一个元素。 2:在查到val之前,查一个&…...
pico+unity3d项目配置
重点:unity编辑器版本要和pico的sdk要求一致、比如: 对于 Unity 2022.1.14 及以上版本,若同时在项目中使用 URP、Linear 色彩空间、四倍抗锯齿和OpenGL,会出现崩溃。该问题待 Unity 引擎解决。对于 Unity 2022,若同时…...
python条件
条件语句 if语句 if...else语句 if...elif...else语句 嵌套 is is 是一个身份运算符,用于比较两个对象的身份,即它们在内存中的地址是否相同。这与比较两个对象是否相等的 运算符不同。 运算符比较的是两个对象的值是否相等。 比较对象 比较基本数据…...
华为USG6000V防火墙v1
目录 一、实验拓扑图 二、要求 三、IP地址规划 四、实验配置 1🤣防火墙FW1web服务配置 2.网络配置 要求1:DMZ区内的服务器,办公区仅能在办公时间内(9:00-18:00)可以访问,生产区的设备全天可以访问 要求2:生产区不…...
G-Helper终极指南:华硕笔记本轻量化控制工具的3步入门与深度优化
G-Helper终极指南:华硕笔记本轻量化控制工具的3步入门与深度优化 【免费下载链接】g-helper Lightweight Armoury Crate alternative for Asus laptops with nearly the same functionality. Works with ROG Zephyrus, Flow, TUF, Strix, Scar, ProArt, Vivobook, Z…...
Office RibbonX Editor:免费开源的Office界面定制终极指南
Office RibbonX Editor:免费开源的Office界面定制终极指南 【免费下载链接】office-ribbonx-editor An overhauled fork of the original Custom UI Editor for Microsoft Office, built with WPF 项目地址: https://gitcode.com/gh_mirrors/of/office-ribbonx-ed…...
Hermes Agent 自定义供应商配置指向 Taotoken 的步骤
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Hermes Agent 自定义供应商配置指向 Taotoken 的步骤 对于使用 Hermes Agent 进行 AI 应用开发的团队而言,统一管理模型…...
3步掌握Sabaki围棋软件:从新手到高手的完整指南
3步掌握Sabaki围棋软件:从新手到高手的完整指南 【免费下载链接】Sabaki An elegant Go board and SGF editor for a more civilized age. 项目地址: https://gitcode.com/gh_mirrors/sa/Sabaki 在围棋的智慧世界里,一款优秀的软件能让您的学习和…...
5分钟掌握跨平台音乐格式转换:Unlock-Music浏览器端音频解密终极指南
5分钟掌握跨平台音乐格式转换:Unlock-Music浏览器端音频解密终极指南 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项…...
终极字体压缩指南:如何用Fontmin让网页字体加载快3倍
终极字体压缩指南:如何用Fontmin让网页字体加载快3倍 【免费下载链接】fontmin Minify font seamlessly 项目地址: https://gitcode.com/gh_mirrors/fo/fontmin Fontmin是一款基于纯JavaScript开发的字体压缩工具,能够将庞大的字体文件压缩成仅包…...
QQ音乐加密音频一键解密:qmcdump终极指南
QQ音乐加密音频一键解密:qmcdump终极指南 【免费下载链接】qmcdump 一个简单的QQ音乐解码(qmcflac/qmc0/qmc3 转 flac/mp3),仅为个人学习参考用。 项目地址: https://gitcode.com/gh_mirrors/qm/qmcdump 你是否曾为QQ音乐下…...
【MLOps】模型部署与监控实战:从训练到生产的完整链路
一、MLOps概述与重要性 在机器学习项目中,模型训练仅仅是第一步。将训练好的模型部署到生产环境并持续监控其性能,是确保业务价值实现的关键环节。MLOps(Machine Learning Operations)正是解决这一问题的方法论和实践体系。 1.1 什…...
用 TLA+ 形式化验证 Harness 的并发安全性
从零到一:用TLA+形式化验证Harness CI/CD平台的并发操作安全性 副标题:解决分布式环境下流水线执行、资源抢占、状态一致性的核心痛点 摘要/引言 如果你是云原生团队的开发或运维工程师,大概率遇到过这样的场景:两个生产部署流水线同时触发,同时抢占同一个K8s集群的环境…...
Maven依赖管理进阶:如何用dependencyManagement和import scope优雅管理Spring Cloud版本(附父子模块配置实例)
Maven依赖管理进阶:如何用dependencyManagement和import scope优雅管理Spring Cloud版本 在微服务架构盛行的今天,一个项目动辄包含数十个模块已成为常态。我曾接手过一个Spring Cloud Alibaba项目,由于历史原因,各子模块中Spring…...
