1.数据仓库 (Data Warehouse - DW / EDW):
- 定义: 一个面向主题的、集成的、时变的、非易失的数据集合,用于支持管理决策。它是企业数据的中央存储库,整合来自不同操作型系统的历史数据。
- 关键特性: 主题导向、集成性、历史性(时变性)、稳定性(非易失性)、支持决策。
2.数据集市 (Data Mart):
- 定义: 数据仓库的一个子集,通常面向特定的业务线、部门或主题领域(如销售、财务)。它是为特定用户群体的分析需求而设计和优化的。
- 与 DW 关系: 可以是从 DW 抽取而来,也可以是独立构建(但通常建议从 DW 衍生以保证一致性)。
派可数据-数据仓库
3.操作型数据存储 (Operational Data Store - ODS):
- 定义: 一个集成当前或接近当前数据的数据库,用于支持日常操作和简单的查询。它是操作型系统(OLTP)和数据仓库(OLAP)之间的中间层。数据更新更频繁(接近实时或准实时)。
- 目的: 提供操作报表、数据集成点、减轻 DW 的实时查询压力。
4.数据湖 (Data Lake):
- 定义:一个存储海量原始数据的存储库(通常是对象存储),数据以其原生格式(结构化、半结构化、非结构化)存储。在数据被使用之前不需要定义模式。
- 与 DW 关系: 常作为 DW 的补充,存储原始数据和探索性分析数据,DW 存储经过加工、治理的高质量数据用于正式报表和分析。两者结合形成 湖仓一体 (Lakehouse) 架构。
二
数据建模与设计
1.维度建模 (Dimensional Modeling):
- 定义维度建模是数据仓库和数据分析领域中常用的方法,通过构建维度模型来简化数据分析和查询过程。使用事实表和维度表来组织数据,目标是提高查询性能和易理解性。它将数据组织成易于理解和分析的结构,常见的维度建模模型包括星型模型、雪花模型和星座模型。
- 核心结构: 星型模型 (Star Schema)、雪花模型 (Snowflake Schema)、星座模型 (Galaxy Schema / Fact Constellation)。
- --星型模式--
- 是最常见的数据仓库设计模式之一,由一个事实表和多个直接与其关联的维度表组成,类似一颗星的形状。例如:一个零售数据仓库中心的销售事实表周围可能有顾客、产品、门店和时间等维度表。
- 星型模型
- --雪花模式--
- 是星型模式的变体,其中维度表被进一步规范化为更多的表(多个维度表没有直接和事实表相连,而是通过其它的维度表,间接的连接在事实表上,其图形就像是一个雪花)。这样做虽然增加了复杂性,优点是减少了数据冗余,可以提高查询效率。
- 雪花型模型
- --星座模式--
- 是指管理多个星型或雪花模式的数据仓库架构,可以看作是由多个星型模式组成的集合。比如,一个公司可能有多个独立的数据仓库模式,每个模式讨论不同的业务过程,但共享某些维度。
- 在星型模型和雪花模型的基础上进一步发展,适用于处理多个业务过程(多个事实表)的场景。多个事实表共享某些维度表,
- 星座模型
2.事实表 (Fact Table):
- 定义: 是数据仓库中的一种表结构,其设计用来存储量化的业务数据,通常这些数据会涉及多个维度表中的维度。包含业务过程的可度量数据(事实),通常是数值型且可累加的(如销售额、数量、成本)。
- 类型: 事务事实表(记录事件)、周期快照事实表(记录状态)、累积快照事实表(记录过程里程碑)。例如:一家网上零售店的事实表可以记录每一笔交易的日期、金额、商品类别和购买数量。
3.维度表 (Dimension Table):
- 定义: 包含描述事实表中业务过程上下文属性的表。提供“谁、什么、何时、何地、为何、如何”等描述性信息(如客户、产品、时间、地点)。
- 特点: 包含文本属性、描述性字段、通常比事实表行数少但列数多。
4.退化维度(Degenerate Dimension,DD):
- 定义: 发生在当一个维度的属性直接存储在事实表中,并没有相对应的维度表时。比如:"订单编号"可能直接存储在事实表中,因其自身并不关联任何其他的维度信息
5.缓慢变化维 (Slowly Changing Dimension - SCD):
- 定义: 维度属性以低频、不可预测的方式变化(如客户地址变更、产品分类调整)。需记录历史变化轨迹以支持时间点分析。
- 常见类型与处理方案
6.切片和切块:
- 定义: 切片是在单一维度上操作,例如按产品线查看去年的销售数据。切块是在多维度上操作,如在产品线和地区上同时过滤数据。
7.度量和度量值:
- 定义: 度量是对业务过程关键点进行量化的具体指标。度量值则是这些指标在数据仓库中的具体数值。举例来说,"每日销售额"是一个度量,而具体的"200,000美元"是度量值。
8.指标(Metric):
- 定义:是用于度量和评估业务表现的具体指标,如销售额、顾客满意度和产品退货率。
派可数据-数据仓库指标模型
9.总线矩阵 (Bus Matrix):
- 定义: 一种规划和沟通工具,以表格形式展示企业核心业务过程(行)与共享的一致性维度(列)之间的关系。是 Kimball 方法的核心,确保一致性维度的使用。
派可数据-数据仓库总线矩阵
10.一致性维度 (Conformed Dimension):
- 定义:确保所有的维度表在整个数据仓库中定义一致。例如,:"客户"维度应在所有维度表中具有相同的属性和标识符。
11.一致性事实 (Conformed Fact):
- 定义:指在不同事实表之间对同一度量的一致性维护。假如有两个事实表都包含"收入"数据,事实一致性确保了在处理时可以同时参照两者而不会产生冲突(如“销售额”在不同报表中的计算口径必须一致)。
12.粒度 (Granularity):
- 定义: 指数据在事实表中的详细程度或级别。例如,按订单行记录销售(细粒度)还是按天汇总销售(粗粒度)。定义粒度是设计事实表的关键步骤。
13.下钻和上卷:
- 定义: 下钻是指在更细粒度的数据层面上进行分析,例如从月度总结向单一天的销售数据。相对地,上卷是汇总更高层次的数据概览,例如从日数据汇总至月数据。
14.业务口径 :
- 定义: 定义用于度量和评价数据的业务规则和逻辑。在零售行业,"利润"的定义是一个业务口径,它将如何计算从销售额中扣除成本。
15.规范化:
- 定义: 数据库设计中的一个过程,它通过组织数据来减少重复,并确保数据依赖以减少异常。规范化的一个实例是在客户数据库中分开存储地址信息以避免多条客户记录共享同一地址记录时的数据重复。
16.逆规范化:
- 定义: 是规范化的反向过程,通过增加冗余信息和拷贝数据来优化数据库性能,通常用于数据仓库场景。在数据仓库中,你可能在一个大型事实表中包含一些维度信息,以加快查询速度。
17.快照表:
- 定义:在特定时间点捕获数据状态的表,可以用来记录变化或趋势。例如,每月底产生的一个财务状态表可以被视为一个快照表。
18.自然键 (Natural Key / Business Key):
- 定义: 在源业务系统中标识实体的、具有业务含义的键(如客户号、产品 SKU)。在数据仓库中通常不作为维度表主键,但会保留。
19.代理键 (Surrogate Key):
- 定义: 在数据仓库维度表中人工生成的、无业务含义的唯一标识符(通常是自增整数),用作主键。替代来自源系统的自然键。
- 目的: 处理缓慢变化维(特别是 Type 2)、屏蔽源系统键变化、提高联接性能、统一不同源的键。
20.持久键 (Persistent Key):
- 定义:是数据仓库中对实体建立的一个长久不变的标识符,确保在数据变化时保持一致性。例如,客户ID在整个数据仓库和数据集市中保持不变,即使其他维度信息被更新。
三
数据处理与集成
1.提取、转换、加载 (Extract, Transform, Load - ETL):
- 定义: 是一系列流程,用于从源系统提取数据、将数据转换为适用于分析的格式,并将其加载到目标数据库中。比如,一个夜间批处理作业可能会从在线业务系统提取当日交易数据,转换成统一格式,并加载到数据仓库。
- Extract: 从源系统抽取数据。
- Transform: 清洗、转换、集成数据以满足目标模型需求(如数据类型转换、计算衍生字段、处理 SCD、数据标准化)。
- Load: 将转换后的数据加载到目标数据仓库或数据集市中。
2.提取、加载、转换 (Extract, Load, Transform - ELT):
- 定义: 一种变体,先将原始数据加载到目标存储(如数据湖或云数仓),然后利用目标平台强大的计算能力进行转换。在现代云数据平台中越来越流行。
- 与 ETL 区别: 转换发生的位置不同(ELT 在目标端)。
3.数据清洗 (Data Cleansing / Data Scrubbing):
- 定义: ETL/T 过程的一部分,识别和纠正(或删除)数据中的错误、不一致、重复和不完整之处。
4.数据集成 (Data Integration):
- 定义: 将来自不同源系统的数据组合起来,提供统一视图的过程。ETL/ELT 是实现数据集成的主要技术。
5.T+0 和 T+1:
- 定义:T+0是实时处理数据的概念,即数据在收集的同时就进行处理。T+1则是延后处理,数据在收集后的下一周期(通常是次日)进行处理。
6.增量与全量:
- 定义:增量表只包含自上次更新以来发生变化的数据,而全量表包含所有的数据记录。如果一个数据仓库每晚进行更新,增量表将只包含当天发生的变动。
7.批处理 (Batch Processing):
- 定义: 在预定时间间隔(如每天夜间)处理大量数据的模式。传统 ETL 主要模式。
8.流处理 (Stream Processing):
- 定义: 连续不断地处理实时或近实时到达的数据流的模式。用于需要低延迟分析或实时数据仓库更新的场景。
- 技术: Apache Kafka, Apache Flink, Apache Spark Streaming, Amazon Kinesis。
9.变更数据捕获 (Change Data Capture - CDC):
- 定义: 一种技术,用于识别和捕获源系统中发生变化的数据(新增、修改、删除),并仅将这些增量变化传递给下游系统(如 DW)。相比全量加载,大大提高了 ETL 效率。
- 实现方式: 数据库日志读取、时间戳/版本号、触发器。
四
数据存储与访问
1.联机分析处理 (OLAP)与联机事务处理(OLTP):
- 定义: OLAP(联机分析处理)和OLTP(联机事务处理)是两类截然不同的数据处理系统,它们在设计目标、应用场景和技术实现上存在本质区别。
- 数据流:OLTP系统 → (通过ETL/ELT)→ 数据仓库/数据湖 → OLAP引擎 → BI可视化
- 本质总结:OLTP是“操作系统的数据库”,OLAP是“决策系统的数据库”。两者协同构建企业数据架构,前者保证业务运转,后者驱动业务优化。
2.立方体 (Cube):
- 定义: OLAP 中的一种多维数据结构,预计算并存储了不同维度组合的聚合数据,以支持极快的查询响应。通常由 MOLAP 引擎实现。
3.物化视图 (Materialized View):
- 定义: 数据库中的一个对象,它存储了查询结果(通常是聚合数据)。当查询该视图时,直接读取存储的结果,而不是重新计算,从而显著提高复杂聚合查询的性能(特别是在 ROLAP 中)。
4.分区 (Partitioning):
- 定义: 将大表(通常是事实表)物理分割成更小、更易管理的独立部分(分区)的技术(如按日期分区)。可极大提高查询性能(分区剪枝)和管理效率(数据加载、归档、删除)。
5.索引 (Indexing):
- 定义: 数据库中的一种数据结构,用于加速对表中特定数据的查找。在数据仓库中,对维度表的主键和常用过滤字段、事实表的外键和日期字段创建索引至关重要。
6.数据挖掘 (Data Mining):
- 定义: 从大量数据中自动或半自动地发现模式、关联、趋势和知识的过程。数据仓库通常是数据挖掘的主要数据来源。
7.商业智能 (Business Intelligence - BI):
- 定义: 一套技术、应用和实践,用于收集、集成、分析和呈现业务信息,以支持更好的决策制定。数据仓库是 BI 的核心基础架构。
五
元数据与管理
1.元数据 (Metadata):
- 定义: “关于数据的数据”。描述数据仓库中数据的结构、含义、来源、关系、转换规则、质量等信息。
- 类型:
- 技术元数据: 表结构、列定义、数据类型、ETL 作业信息、数据血缘、调度信息等。
- 业务元数据: 业务术语定义、指标计算逻辑、数据负责人、数据质量规则等。
- 重要性: 对数据理解、数据治理、数据血缘追踪、影响分析至关重要。
2.数据血缘 (Data Lineage):
- 定义: 追踪数据从源系统到最终目标(报表、分析模型)的完整路径,包括经过的转换和处理步骤。是元数据管理的重要组成部分。
派可数据-数据仓库血缘分析查询界面
派可数据-数据仓库血缘关系图谱示例
3.数据治理 (Data Governance):
- 定义: 对组织中数据的可用性、可用性、完整性、安全性和可管理性进行整体管理的框架、策略和流程。确保数据在整个生命周期内是可信赖和合规的。
4.数据质量 (Data Quality):
- 定义: 衡量数据在准确性、完整性、一致性、时效性、唯一性和有效性等方面满足期望的程度。是数据仓库成功的关键因素,通过数据清洗、验证规则、监控来保障。
5.主数据管理 (Master Data Management - MDM):
- 定义: 创建和维护关键业务实体(如客户、产品、供应商、地点)的单一、准确、权威视图的过程和实践。为数据仓库提供一致、可靠的主数据来源。
6.数据目录 (Data Catalog):
- 定义: 一个元数据管理工具,提供数据资产的清单、搜索、发现和理解功能,通常包含技术元数据、业务元数据、数据血缘、用户注释、数据质量信息等。是提升数据可发现性和自助分析能力的关键。
六
现代架构与云
1.数据湖仓 (Lakehouse):
- 定义: 一种融合数据湖(低成本存储原始数据)和数据仓库(高性能 SQL 分析、事务支持、数据治理)优点的新兴架构范式。通常在云对象存储(如 S3, ADLS, GCS)之上实现,利用元数据层(如 Delta Lake, Apache Iceberg, Apache Hudi)提供 ACID 事务、模式演化、高效数据管理能力。
2.云数据仓库 (Cloud Data Warehouse - CDW):
- 定义: 部署在云平台(AWS, Azure, GCP)上的、完全托管的、可弹性扩展的数据仓库服务。代表产品如 Snowflake, Amazon Redshift, Google BigQuery, Azure Synapse Analytics Dedicated SQL Pool。
- 优势: 弹性扩展、按需付费、免运维、与云生态集成好。
3.数据网格 (Data Mesh):
- 定义: 一种去中心化的、面向领域的数据架构范式。它将数据视为一种产品,由最了解该领域数据的业务领域团队负责其端到端的生命周期(包括提供数据产品)。强调领域自治、数据产品、自助平台和联邦治理,以应对大规模、复杂组织的数据挑战。
4.dbt (data build tool):
- 定义: 一个流行的开源转换工具,允许分析师和工程师在云数据仓库中通过编写 SQL(和 Jinja 模板)来定义、测试、文档化和执行数据转换工作流(即 T in ELT)。它将软件工程最佳实践(版本控制、模块化、测试、文档)引入数据分析领域。
喜欢我们内容的朋友,欢迎点赞收藏支持!对派可数据感兴趣的可加派小可微信(pack_xiaoke)、咨询派可官网电话010-85399411,关注派可数据公众号。
热门跟贴