数据仓库概要

什么是数据仓库?

数据仓库是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。

核心特征

1. 面向主题

数据仓库围绕核心业务主题 (如客户、产品、销售、财务)来组织数据,而不是围绕具体的业务流程或应用系统。这与操作型数据库 (如订单处理系统)不同,后者是面向事务 的。

2. 集成

数据仓库中的数据来源于多个分散的操作型系统(如ERP、CRM、日志文件等)。这些数据在进入数据仓库之前,会经过清洗、转换、整合,消除不一致性,形成统一的命名、编码和格式。

3. 相对稳定

数据仓库一旦存入数据,通常不会被修改或删除,主要是进行数据的查询和分析。这反映了读多写少的特性。操作型数据库则需要频繁地进行增删改查。

4. 反映历史变化

数据仓库会长期保留历史数据(例如5-10年),以便进行趋势分析、预测未来。而操作型数据库通常只保留当前或近期的数据。

核心架构与组成

1. 数据源

如:业务数据库(MySQL, Oracle)、日志文件、API接口、外部数据等。

2. 数据抽取、转换、加载

  • 抽取 Extract:从数据源获取数据。
  • 转换 Transform:清洗无效数据、转换格式、统一标准、进行业务计算(这是最复杂的一步)。
  • 加载 Load:将转换后的数据加载到数据仓库的目标表中。

3. 数据存储与管理

  • 这里存储着细节数据、轻度汇总数据和高度汇总数据。
  • 通常采用维度建模,构建星型模型或雪花模型,核心是事实表和维度表。
    • 事实表:存储业务过程的度量值(如销售金额、销售数量),主要是数值型数据。
    • 维度表:存储描述事实的业务上下文(如时间、地点、产品、客户),主要是文本型数据。

4. 数据服务/应用层

工具包括:BI工具(如 Tableau, FineBI, Power BI)、即席查询工具、报表系统等。

相关概念与技术

ETL vs. ELT

  • ETL 抽取 -> 转换 -> 加载:传统方式,在加载到仓库前进行转换。适合结构化数据和对数据质量要求极高的场景。
  • ELT 抽取 -> 加载 -> 转换:现代方式,先加载到仓库,然后利用仓库的强大计算能力进行转换。更适合处理海量、多结构的原始数据

OLTP vs. OLAP

  • OLTP (Online Transactional Processing) 联机事务处理:支持日常业务操作(增删改查),是数据的生产者,是业务数据的源头;代表系统 MySQL, PostgreSQL, Oracle
  • OLAP (Online Analytical Processing) 联机分析处理:支持复杂数据分析与决策;是数据的消费者,数据来自多个OLTP系统;Snowflake, BigQuery, Amazon Redshift, Apache Druid

数据集市

数据仓库的一个子集,通常为某个特定部门或特定业务领域(如财务、销售部)构建的微型数据仓库。它从数据仓库中获取数据,规模更小、主题更聚焦、访问更快。

现代数据栈:

  • 新一代的数据平台,通常基于云原生技术,组件更加解耦(增加独立性,降低依赖关系)和专业化。
    典型组成:Fivetran (Extract and Load) -> Snowflake/BigQuery (Storage/Compute) -> dbt (Transform) -> Tableau/Mode (BI)。
相关推荐
clorinda9 小时前
Hive 窗口函数详解:让数据在分组中完成排名、累计和跨行计算
数据仓库·hive·hadoop
Sayai1 天前
ClickHouse WITH FILL 实战:监控大屏时间序列补零,附多粒度指标表与物化视图级联设计
大数据·运维·数据仓库·clickhouse·物化视图
躺柒2 天前
读数据架构知识体系指南16数据网格(上)
数据仓库·架构·数据分析·数据湖·数据架构·关系数据库
省钱兄--zs3 天前
北京24小时自助健身房系统软件开发实战:从架构设计到部署指南
java·数据仓库·spring boot·小程序·需求分析
躺柒4 天前
读数据架构知识体系指南14数据编织
大数据·数据仓库·数据分析·数据湖·数据编织
一隅论数智5 天前
给AI Agent一颗“私域大脑“:本体增强的工程化之路
大数据·运维·数据仓库·人工智能·笔记·学习·政务
CarIise9 天前
Spring Boot整合MyBatis与文件上传:从分层架构到文件上传下载实战
数据仓库·hive·hadoop
ha_lydms10 天前
MaxCompute中加密与解密函数
大数据·数据库·数据仓库·hadoop·dataworks·maxcompute·odps
千桐科技11 天前
数据中台 ETL 编排实践:基于 qData 开源版实现数据接入、转换与调度执行
数据仓库·开源·etl
西木莉17 天前
数据仓库概述
数据仓库