一、数据仓库是什么

数据仓库(Data Warehouse,DW)是专门为支持企业决策分析而设计、构建的大型数据存储系统。它会将分散在财务系统、CRM、生产系统、供应链系统等各个业务源头的数据,通过系统化的抽取、清洗、转换与整合流程,形成统一、一致、面向主题且能反映历史变迁的高质量数据集合。

数据仓库主要包含以下五大特性:

1. 面向主题

数据围绕核心业务实体进行组织,如客户、产品、订单等,抛弃按业务系统划分数据的方式,使数据分析更聚焦于业务本质。

2. 集成性

打破企业内部的数据孤岛,通过统一编码、格式转换等手段,消除不同源系统间的数据差异,确保数据的一致性和连贯性。

3. 历史性

能够存储长期历史数据,一般保存期限在 5 - 10 年,为企业进行趋势分析、预测未来业务走向提供数据支撑。

4. 时变性

数据写入数据仓库后极少进行修改,仅仅会定期追加新的数据快照,保证数据的稳定性和可追溯性。

5. 稳定性

借助ETL(抽取、转换、加载)流程,严格保障数据质量,为企业提供可信的“单一事实版本”,确保决策依据的准确性。

二、数据仓库与传统数据库的区别

1. 传统数据库 (OLTP - 联机事务处理)

(1)目标:主要用于支撑企业的日常业务操作,像订单录入、库存更新、支付处理等业务场景,保障业务流程的顺畅运行。

(2)设计:采用高度规范化设计,目的是消除数据冗余,保证事务的一致性;在性能上,重点优化快速读写小量数据的操作,对实时性要求极高。 

(3)数据:以当前状态数据为主,为了维持系统性能,历史数据通常会被归档或删除。

(4)用户:主要是一线业务人员、客服、收银员等直接参与业务操作的人员。

2. 数据仓库 (OLAP - 联机分析处理)

(1)目标:侧重于支持复杂的数据分析和决策制定,帮助企业回答包括 “哪些产品组合利润最高?” 战略性问题。

(2)设计:具备面向主题、集成性、历史性、时变性和稳定性等特性。在设计上,更注重对海量数据的快速读取,以满足深度分析的需求。 

(3)数据:存储大量历史数据,完整记录业务随时间的变化轨迹,为分析提供丰富的数据基础。

(4)用户:主要是数据分析师、业务分析师、管理层以及企业决策者等,用于支持其制定战略决策。


三、数据仓库的基本架构

1.数据源层

数据源层是数据仓库的数据源头,涵盖企业内各种异构系统,如 ERP、CRM、SCM、生产系统、日志文件,甚至还包括外部市场数据、社交媒体数据等。

2.ETL

流程 ETL 流程是数据仓库建设的核心环节,其质量直接决定了数据仓库的成败。

3. 数据存储层

数据存储层是数据仓库的核心本体,用于存储经过ETL处理后的集成、面向主题、历史性数据。

4. 数据访问层

数据访问层是用户与数据仓库的交互窗口,通过各类工具为用户提供查询、分析和呈现数据的功能。

包含工具及功能:

报表工具:用于生成固定格式的报告,满足企业常规的数据展示需求。

OLAP 工具:支持多维度的交互式钻取、切片、切块分析,帮助用户从不同角度深入探索数据。

可视化工具:可进行预测性建模,挖掘数据背后的潜在规律和价值。

数据挖掘工具:支持用户灵活自定义查询,满足个性化的数据分析需求。

即席查询:(功能同数据挖掘工具描述,为图中补充工具)

四、数据仓库的架构类型

1.单层架构

数据源直接连接到最终用户访问层,几乎没有中间处理环节。由于缺乏必要的数据处理和整合,仅适用于极简单的场景。

2.双层架构(源 -> 数据仓库)

这种架构清晰地分离了操作型系统与分析系统,在数据仓库发展早期较为流行。

3.三层架构(源 -> 数据仓库 -> 数据集市)

作为当前最主流、最成熟的架构,三层架构在数据仓库层之上增加了数据集市层。数据集市基于 EDW 构建,针对特定部门或主题进行结构优化,查询速度更快,用户也更容易理解和使用。

4.星型架构

星型架构是数据集市建模的主流方式,由一个事实表和多个维度表组成。维度表直接连接到事实表,整体结构形似星星。

5.雪花型架构

雪花型架构是星型架构的变体,区别在于维度表会进一步进行规范化,拆分成多层级的附属维度表。优点是减少了数据冗余,更符合规范化设计原则;缺点是查询时通常需要连接更多的表,导致查询复杂度增加。


点赞(1) 打赏

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部