数据仓库概要

什么是数据仓库?

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

核心特征

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)。
相关推荐
jjjava2.01 天前
SpringMVC入门指南:从零掌握核心要点
数据仓库·hive·hadoop
Jay_Franklin1 天前
Python 数据处理工作流:marimo、PyCharm 与数据存储
开发语言·数据仓库·ide·python·pycharm·数据分析·开源
RestCloud3 天前
借助ETL工具,实现AI智能体+数据的落地
数据仓库·人工智能·sql·etl·etlcloud·数据集成平台·java脚本
RestCloud3 天前
2026数据集成工具最新选型建议:ETL/ELT怎么选,都应该带有什么功能
数据仓库·etl·etlcloud·数据传输·数据同步·数据集成工具·elt
last_zhiyin3 天前
一步步上手ETL工具之------Informatica PowerCenter
数据仓库·etl·数据处理·powercenter·informatica
Direction_Wind4 天前
如何从零设计一套数据仓库
数据仓库
李昊哲小课4 天前
Ubuntu26.04-Hadoop3.5.0搭建hive4.2.0
数据仓库·hive·数仓
泰克教育官方账号5 天前
泰涨知识 | Hive集群环境部署
数据仓库·hive·hadoop
数据库小学妹6 天前
数据库架构入门到进阶:单机、主从、分库分表到分布式的选型实战
数据仓库·分布式数据库·数据治理·数据库架构·架构设计·数据分层
AllData公司负责人7 天前
AIIData数据中台集成OpenMetadata开源项目,成功运行Hive数据血缘拾取任务,支持库级别+表级别+字段级血缘!
大数据·数据库·数据仓库·人工智能·hive·hadoop·开源