GaussDB(DWS)介绍

本文介绍了华为云的GaussDB(DWS)——一种云端数据仓库服务,它基于MPP架构,提供PB级数据处理和分析能力。文章详细阐述了DWS的架构、数据查询流程、应用案例及网络组网方案,突出了其在数据仓库迁移、大数据融合分析等方面的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据仓库服务(Data Warehouse Service,GaussDB(DWS))是一种基于公有云基础架构和平台的在线数据处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务。

1. 简介

GaussDB(DWS)是基于华为融合数据仓库GaussDB产品的云原生服务,兼容标准ANSI SQL 99和SQL 2003,同时兼容PsotgreSQL/Oracle数据库生态,为各行各业提供PB级大数据分析解决方案。
在这里插入图片描述

其中:

DWS:基于MPP架构的数据库,提供PB级数据负载能力、百TB级数据支撑能力、海量数据查询统计分析能力与事务处理能力、支持结构化数据PB级分析能力等
Manager:作为运维系统,负责GaussDB(DWS)的集群管理,支持大规模集群的安装部署、监控、告警、用户管理、权限管理、审计、服务管理、健康检查、问题定位、升级和补丁等。

DWS具有如下的优势:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 架构

DWS的产品架构如下所示:


在这里插入图片描述

DWS本身基于分布式架构,组件支持主备/多活高可靠性设计;存算分离,按需独立扩展;支持事务的ACID,支持数据的强一致性保证。另外,底层支持x86和arm两种架构的服务器,部署类型支持虚拟机和裸金属服务器两种。基于鲲鹏芯片的垂直优化相比同代的x86性能提升30%。

逻辑上的架构如下图所示:


在这里插入图片描述

其中:

集群管理模块(Cluster Manager,CM):管理和监控分布式系统中各个功能单元和物理资源的运行情况,确保整个系统的稳定运行;
全局事务控制器(Global Transaction Manager,GTM):提供全局事务控制所需的信息,采用多版本并发控制MVCC机制
工作负载管理器(Worked Manager,WLM):控制系统资源的分配,防止过量业务负载对系统的冲击导致业务拥塞和系统崩溃
Corrdinator:整个系统的业务入口和结果返回,用于接收来自业务应用的访问请求,分解任务并调度任务分片的并行执行
Data Node:用于执行查询任务分片的逻辑实体
GDS Loader:并行数据加载,可配置多个,支持文本文件格式,错误数据自动识别

DN节点为保证高可用,具有主、备、从备三类DN,高可用的实现方式为:

● 主、备DN同步数据期间,如果主DN突然故障不可用,备DN会升为主DN
● 在原主DN恢复前,新升为主的DN会将数据日志同步到从备DN
●原主DN恢复后将成为备DN,并且会使用“从备DN”上的数据日志恢复异常期间的数据。

从备DN永远只作为从备使用,不会因为主DN或备DN故障而升级为主DN或备DN,从备只存放备DN故障时同步到从备的Xlog数据和数据通道复制产生的数据。


3. 数据查询流程

数据查询的流程示意图如下所示:


在这里插入图片描述

具体查询流程如下:

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

4. 应用

DWS的已有应用场景如下:

数据仓库迁移


在这里插入图片描述

大数据融合分析


在这里插入图片描述

增强型ETL和实时BI分析


在这里插入图片描述

实时数据分析


在这里插入图片描述

银行大数据分析平台


在这里插入图片描述


5. 组网方案

GaussDB(DWS)整个系统网络划分为2个平面,即业务平面和管理平面,两个平面之间采用物理隔离的方式进行部署,保证业务、管理各自网络的安全性。


● 管理平面通过运维网络接入,提供系统管理

  • 管理平面通过运维网络接入,提供系统管理和维护功能,主要用于集群的管理,对外提供集群监控、配置、审计、用户管理等服务。 业务平面,主要用于集群内部数据处理的专用网络平面,此处的业务平面非客户的应用网络平面。

关于不同场景下组网方案原则如下:


6. 集群组网方案

GaussDB(DWS)系统的网络划分为2个平面,即业务平面和管理平面,两个平面之间采用物理隔离的方式进行部署,保证业务、管理各自网络的安全性。主备管理节点还支持设置外部管理网络的IP地址,用户可以通过外部管理网络进行集群管理。


在这里插入图片描述

采用双平面组网时,集群中每个节点分别接入管理平面和业务平面,每个节点需要准备一个管理IP地址和一个业务IP地址,每个IP地址用两个网络接口配置Bond,分别接入两个接入交换机。各节点的业务平面建议采用10GE带宽,业务平面接入交换机与汇聚交换机之间建议采用10GE带宽,业务平面汇聚交换机的堆叠带宽建议设置为40GE。

<think>我们正在讨论数据仓库的分层架构,特别是DWD层和DWS层的定义与区别。根据引用[1]和[2]的内容,我们可以将这两层进行对比分析。 首先,从引用[2]中我们可以知道: - DWD(Data Warehouse Detail)是数据明细层,存放经过清洗、转换、规范化后的详细数据。 - DWS(Data WareHouse Service)是数据服务层,存放基于DWD层汇总、聚合后的数据,用于支持业务分析和决策。 引用[1]进一步说明: - DWS层将DWD层的数据进行汇总、聚合和计算,形成适合决策分析的数据集。这些数据通常基于关键维度(如时间、区域、产品等)进行聚合,目的是支持战略决策和高层分析。 因此,我们可以总结如下: ### 一、DWD层(数据明细层) 1. **定位**:数据仓库的明细数据层,位于ODS层(原始数据层)之后。 2. **数据内容**: - 存储最细粒度的数据,保留所有细节。 - 数据经过清洗、标准化、去重等处理,保证数据质量。 - 通常按主题组织,如订单、用户、商品等。 3. **作用**: - 提供干净、一致的明细数据,为上层(DWM、DWS)提供基础。 - 支持灵活的即席查询(Ad-hoc Query)和深度分析。 4. **示例表结构**: ```sql -- 订单明细表 (dwd_order_detail) CREATE TABLE dwd_order_detail ( order_id BIGINT, -- 订单ID user_id BIGINT, -- 用户ID product_id BIGINT, -- 商品ID order_amount DECIMAL(10,2), -- 订单金额 order_time TIMESTAMP, -- 下单时间 province_id INT, -- 省份ID -- 其他字段... ); ``` ### 二、DWS层(数据服务层) 1. **定位**:数据仓库的汇总层,位于DWD层之上。 2. **数据内容**: - 基于特定维度(如时间、地区、产品类别)聚合的指标。 - 存储预计算的汇总数据,如每日销售额、用户活跃数等。 - 数据粒度较粗,通常以宽表形式存在。 3. **作用**: - 提供高性能的汇总查询,支撑报表、仪表盘等应用。 - 减少重复计算,提升分析效率。 4. **示例表结构**: ```sql -- 每日省份销售汇总表 (dws_province_sales_daily) CREATE TABLE dws_province_sales_daily ( stat_date DATE, -- 统计日期 province_id INT, -- 省份ID order_count BIGINT, -- 订单数 total_amount DECIMAL(16,2),-- 销售总额 -- 其他汇总指标... ); ``` ### 三、核心区别对比 | **维度** | **DWD层** | **DWS层** | |----------------|--------------------------------|--------------------------------| | **数据粒度** | 最细粒度(原子数据) | 粗粒度(汇总数据) | | **存储内容** | 明细事实表、维度表 | 聚合事实表、宽表 | | **查询性能** | 较低(需扫描大量数据) | 较高(预聚合减少计算量) | | **使用场景** | 深度分析、明细数据探查 | 固定报表、快速分析、决策支持 | | **数据冗余** | 低(规范化设计) | 高(宽表冗余存储) | ### 四、协同工作流程 ```mermaid graph LR ODS[ODS层:原始数据] --> DWD[DWD层:清洗和规范化] DWD --> DWM[DWM层:中间汇总] --> DWS[DWS层:业务聚合] DWS --> ADS[ADS层:应用数据] ``` > 引用总结:DWD层保证数据质量,DWS层提升分析效率[^1][^2][^3]。 --- §§相关问题§§ 1. 数据仓库中DWM层(中间层)的作用是什么? 2. 如何设计DWS层的宽表以支持多维度分析? 3. DWD层如何与维度建模结合? 4. 在DWS层中如何平衡数据冗余与查询性能?</think>### 数据仓库 DWD层与DWS层的定义与区别 #### **1. DWD层(Data Warehouse Detail,数据明细层)** - **定义**: 存储经过清洗、标准化处理的**最细粒度原子数据**,是数据仓库的核心基础层。保留原始业务过程的完整细节,不进行聚合计算[^2][^3]。 - **核心特征**: - **数据粒度**:最细粒度(如单笔交易记录、用户行为日志) - **数据内容**: - 清洗后的原始事实表(如订单表、点击流表) - 规范化维度表(如用户维度、商品维度) - **数据处理**: - 数据清洗(去重、空值处理) - 数据标准化(统一编码、单位转换) - 轻度聚合(仅合并关联字段) - **典型应用**: ```sql -- 示例:DWD层订单明细表 CREATE TABLE dwd_order_detail ( order_id BIGINT, -- 订单ID(原子粒度) user_id STRING, -- 标准化用户ID product_id STRING, -- 统一商品编码 amount DECIMAL, -- 原始金额 order_time TIMESTAMP -- 精确到毫秒 ); ``` #### **2. DWS层(Data Warehouse Summary,数据汇总层)** - **定义**: 基于DWD层数据进行**多维度的汇总与聚合**,生成面向分析主题的宽表,支撑决策分析[^1][^3]。 - **核心特征**: - **数据粒度**:粗粒度(如每日销售汇总、用户月活统计) - **数据内容**: - 维度组合的聚合指标(如地区-产品销售额矩阵) - 跨主题宽表(如用户行为全景视图) - **数据处理**: - 多维聚合(SUM/COUNT/AVG等) - 跨表关联(JOIN不同业务过程) - 衍生指标计算(如转化率、同比环比) - **典型应用**: ```sql -- 示例:DWS层每日销售宽表 CREATE TABLE dws_sales_daily ( stat_date DATE, -- 统计日期(聚合粒度) region_id STRING, -- 维度:地区 product_type STRING, -- 维度:产品类目 order_count BIGINT, -- 聚合指标:订单量 gmv DECIMAL -- 聚合指标:交易总额 ); ``` --- ### 核心区别对比 | **维度** | **DWD层** | **DWS层** | |----------------|--------------------------------|--------------------------------| | **数据粒度** | 原子级明细(单条记录) | 聚合级汇总(分组统计) | | **存储目的** | 保留原始细节,支持深度钻取 | 提供分析指标,支持快速查询 | | **表结构** | 窄表(规范化,多表关联) | 宽表(反规范化,减少JOIN) | | **查询场景** | "为什么发生"(原因分析) | "发生了什么"(趋势分析) | | **数据时效** | 近实时更新(分钟级) | 批量更新(小时/天级) | --- ### 协同工作流程 ```mermaid graph LR ODS[ODS层:原始数据] --> DWD[DWD层:清洗标准化] DWD --> DWS[DWS层:多维聚合] DWS --> ADS[ADS层:应用输出] ``` > 引用总结:DWD保证数据质量,DWS提升分析效率[^1][^3]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值