扫盲系列(3):数据仓库架构详解

目录

1、数据仓库ETL/ELT

ETL层建设遇到的挑战

2、数据仓库ODS层

3、数据仓库CDM层

4、数据仓库ADS层

扫盲系列(3):数据仓库架构详解_第1张图片


这是一张典型的数据仓库架构图。按自下而上的顺序,分别为数据仓库ETL(Extract-Transform-Load)、ODS(Operational Data Store)层、CDM(Common Dimensional Model)层和ADS(Application Data Store)层。其中CDM层主要包括DWD层(Data Warehouse Detail)和DWS层(Data Warehouse Summary)两部分。

扫盲系列(3):数据仓库架构详解_第2张图片

 数据仓库架构图

1、数据仓库ETL/ELT

数据仓库ETL主要用于完成数据接入的过程,即从业务系统或其他数据源中提取数据,并进行数据清洗、转换和加载到目的地系统(如数据仓库)中的过程。该过程中,数据会经历抽取(Extract)、转换(Transform)和加载(Load)三个阶段,最终达到数据从源头流动到目标端的目的。

数据仓库ELT指的是将数据抽取出来后,直接进行加载,最后再进行数据转换的一种数据集成和处理方式。与传统的 ETL不同,ELT将数据的处理和加工过程转移到了数据仓库中,利用数据仓库的数据计算能力和分布式处理能力来处理和转换数据。

ETL层建设遇到的挑战

具体来说,数据抽取是指从源数据系统中提取数据到目标数据系统,一般可以通过现成的工具来完成,如Sqoop、Kettle等。数据转换是指将抽取的数据进行清洗、标准化、加工等操作。这里需要注意的是,对于非结构化或半结构化数据,由于数据格式多样化、标准化难度较大,因此可能需要花费一些时间进行数据清洗和处理。 

FineDataLink是一款ETL工具,支持三十多种格式和结构的异构数据源,可以将这些异构数据源集成到一个统一的数据仓库中,并进行清洗、转换和分析,显着降低开发人员、数据分析师和研究人员的工作量,提高数据处理的效率和准确性,帮助企业更好地管理和分析数据。

扫盲系列(3):数据仓库架构详解_第3张图片

FineDataLink的数据转换功能

最后,数据加载是将经过转换处理后的数据加载到目标系统中,一般也会采用现成的工具来完成,如Informatica、ODI等。

扫盲系列(3):数据仓库架构详解_第4张图片

ETL过程

2、数据仓库ODS层

数据仓库ODS层也称为操作数据源层,是数据仓库中的一个核心组成部分。该层主要用于保存原始数据,完成数据积存,通常反映了企业业务系统中的最新操作,同时也是进行数据仓库的基础。

数据仓库ODS层通常采用可靠的数据仓库ETL工具为数据仓库提供数据,以此使源数据和数据仓库之间保持同步。同时,数据仓库ODS层的数据被保存在磁盘中,直接体现了我们之前讲过的数据仓库的一个特性——非易失性(参见文章《扫盲系列(1):数据仓库之基本概述》),即在停机或崩溃的情况下,数据不会丢失。

扫盲系列(3):数据仓库架构详解_第5张图片

非易失性

3、数据仓库CDM层

CDM层是指公共维度模型层,是数据仓库中最核心和最关键的一层。主要用于提供标准化、共享的维度模型,为数据分析提供便利。CDM层通常包括数据明细层(DWD)和数据汇总层(DWS)两个部分。

DWD层指数据明细层,通常接收数据仓库ODS层的原始数据,并进行清洗、标准化、维度退化、异常数据剔除等操作,进行统一处理,为数据分析提供支持。DWD层一般按照业务主题建模,包含多个维度和事实表,维度表可以用来描述业务数据的特征,而事实表则包含了关键数据指标(如销量、价格等)。

DWS层指数据汇总层,其主要作用是通过聚合和汇总,将DWD层中的数据按照主题进行汇总,形成宽表,进而提升数据分析性能。DWS层通常包含多个宽表,每个宽表都是由多个事实表和维度表经过聚合和分组运算生成的。DWS层中的宽表可以满足特定主题和不同维度的分析需求,减少了对其他表的操作,提升数据分析性能。

扫盲系列(3):数据仓库架构详解_第6张图片

DWS层和DWD层工作过程

4、数据仓库ADS层

ADS层也称为数据应用层,其主要功能是保存结果数据,为外部系统提供查询接口,基于数据仓库的数据为企业提供增值应用,并将数据仓库的数据应用于企业决策、报表、分析、控制等领域。ADS层通常采用OLAP(Online Analytical Processing)技术,用于快速访问和查询数据。

ADS层一般包括多个宽表,用于支持与企业应用有关的查询、分析、报告、控制、决策等操作。这些宽表一般可以通过BI工具或自定义应用程序查询和访问,以满足企业的各种数据需求。为了提高访问和查询速度,ADS层通常使用数据索引、缓存和预聚合等技术。

有时为了更好地管理和维护数据仓库,可以将ADS层从数据仓库中独立出去,成为一个独立的数据集市层(Data Mart)。数据集市层专门为某一特定业务需求而建立,可以基于某一个特定的主题或者某个业务领域建模,以满足该领域的数据分析和查询需求。

你可能感兴趣的:(数据仓库扫盲系列,数据仓库,数据库,数据挖掘,etl,数据分析)