OBIEE – 数据仓库
在当今竞争激烈的市场中,大多数成功的公司都会快速响应市场变化和机遇。快速响应的要求是有效且高效地使用数据和信息。"数据仓库"是一个按类别组织的中央数据存储库,用于支持组织的决策者。一旦数据存储在数据仓库中,就可以对其进行分析。
"数据仓库"一词最初由 Bill Inmon 于 1990 年发明。据他说,"数据仓库是一个面向主题、集成、随时间变化且非易失性的数据集合,用于支持管理层的决策过程。"
Ralph Kimball 根据数据仓库的功能对其进行了定义。他说,"数据仓库是专门为查询和分析而构建的交易数据副本。"
数据仓库 (DW 或 DWH) 是一种用于分析数据和报告目的的系统。它们是保存来自一个或多个异构数据源的数据的存储库。它们存储当前数据和历史数据,并用于创建分析报告。DW 可用于为高级管理层创建交互式仪表板。
例如,分析报告可以包含用于公司季度比较或年度销售报告比较的数据。
DW 中的数据来自多个操作系统,如销售、人力资源、营销、仓库管理等。它包含来自不同交易系统的历史数据,但也可以包括来自其他来源的数据。DW 用于将数据处理和分析工作负载与交易工作负载分开,并能够整合来自多个数据源的数据。
数据仓库的需求
例如 − 您有一家住房贷款机构,其数据来自多个 SAP/非 SAP 应用程序,如营销、销售、ERP、HRM 等。这些数据被提取、转换并加载到 DW 中。如果您必须对产品进行季度/年度销售比较,则不能使用操作数据库,因为这会挂起交易系统。这就是需要使用 DW 的原因。
数据仓库的特征
DW 的一些主要特征是 −
- 它用于报告和数据分析。
- 它提供了一个中央存储库,其中集成了来自一个或多个来源的数据。
- 它存储当前和历史数据。
数据仓库与事务系统
以下是数据仓库与操作数据库(事务系统)之间的一些区别 −
事务系统专为已知工作负载和事务而设计,例如更新用户记录、搜索记录等。但是,DW 事务更为复杂,并呈现一般形式的数据。
事务系统包含组织的当前数据,而 DW 通常包含历史数据。
事务系统支持并行处理多个事务。并发控制和恢复机制对于维护数据库的一致性必不可少。
操作数据库查询允许读取和修改操作(删除和更新),而 OLAP 查询只需要对存储的数据进行只读访问(选择语句)。
DW 涉及数据清理、数据集成和数据合并。
DW 具有三层架构:数据源层、集成层和表示层。下图显示了数据仓库系统的常见架构。
数据仓库系统的类型
以下是 DW 系统的类型 −
- 数据集市
- 联机分析处理 (OLAP)
- 联机事务处理 (OLTP)
- 预测分析
数据集市
数据集市是数据仓库最简单的形式,它通常专注于单个功能领域,例如销售、财务或营销。因此,数据集市通常仅从少数数据源获取数据。
来源可以是内部交易系统、中央数据仓库或外部数据源应用程序。反规范化是此系统中数据建模技术的标准。
联机分析处理 (OLAP)
OLAP 系统包含的交易数量较少,但涉及复杂的计算,例如使用聚合 −总计、计数、平均值等。
什么是聚合?
我们保存包含聚合数据的表格,例如年度(1 行)、季度(4 行)、月度(12 行),现在我们想要比较数据,例如年度,将仅处理 1 行。但是,在非聚合数据中,将处理所有行。
OLAP 系统通常将数据存储在多维模式中,例如星型模式、星系模式(事实表和维度表以逻辑方式连接)。
在 OLAP 系统中,执行查询的响应时间是一种有效性衡量标准。OLAP 应用程序被数据挖掘技术广泛用于从 OLAP 系统获取数据。OLAP 数据库将聚合的历史数据存储在多维模式中。 OLAP 系统的数据延迟为几个小时,而数据集市的延迟通常接近几天。
在线事务处理 (OLTP)
OLTP 系统以大量短时间在线事务而闻名,例如插入、更新、删除等。OLTP 系统提供快速查询处理,还负责在多访问环境中提供数据完整性。
对于 OLTP 系统,有效性通过每秒处理的事务数来衡量。OLTP 系统通常仅包含当前数据。用于存储事务数据库的模式是实体模型。规范化用于 OLTP 系统中的数据建模技术。
OLTP 与 OLAP
下图显示了 OLTP 和 OLAP 系统之间的主要区别。
索引 − 在 OLTP 系统中,只有少数索引,而在 OLAP 系统中,为了优化性能,有许多索引。
连接 − 在 OLTP 系统中,大量连接和数据被规范化;然而,在 OLAP 系统中,连接较少,并且非规范化。
聚合 − 在 OLTP 系统中,数据未聚合,而在 OLAP 数据库中使用更多聚合。