Obiee 简明教程

OBIEE – Data Warehouse

在当今竞争激烈的市场中,大多数成功的公司都迅速对市场变化和机遇做出反应。快速响应的要求是有效和高效地使用数据和信息。 “Data Warehouse” 是按类别组织的一个数据中心存储库,以支持组织决策者。一旦数据存储在数据仓库中,就可以对其进行分析。

术语“数据仓库”一词最早是由比尔·因蒙于 1990 年发明。据他说,“数据仓库是一个面向主题、集成、随时间变化和非易失的数据集合,以支持管理决策制定过程”。

拉尔夫·金博尔根据其功能提供了对数据仓库的定义。他说,“数据仓库是交易数据的一个副本,专门用于查询和分析”。

数据仓库(DW 或 DWH)是一个用于分析数据和报告目的的系统。它们是存储库,可保存来自一个或多个异构数据源的数据。它们存储当前数据和历史数据,并用于创建分析报告。DW 可用于为高级管理人员创建交互式仪表盘。

例如,分析报告可以包含按季度或按年比较公司的销售报告的数据。

数据仓库中的数据来自多个运营系统,如销售、人力资源、营销、仓库管理等。它包含了来自不同交易系统中的历史数据,但也可以包含来自其他来源的数据。数据仓库用于将数据处理和分析工作负载从交易工作负载中分离出来,并能够整合来自多个数据源的数据。

The Need for Data Warehouse

例如,您有一个住房贷款机构,其中数据来自多个 SAP/非 SAP 应用程序,如营销、销售、ERP、人力资源管理等。这些数据被提取、转换并加载到数据仓库中。如果您必须对产品进行季度/年度销售比较,则不能使用运营数据库,因为这会使交易系统挂起。这就是对使用数据仓库有需求的地方。

Characteristics of a Data Warehouse

数据仓库的一些主要特征包括:

  1. 它用于报告和数据分析。

  2. 它提供了一个数据存储库,其中数据来自一个或多个来源。

  3. 它存储当前和历史数据。

Data Warehouse vs. Transactional System

以下是数据仓库和运营数据库(交易系统)之间的几个区别:

  1. 交易系统是为已知工作负载和交易设计的,例如更新用户记录、搜索记录等。但是,数据仓库交易更加复杂,并且呈现一般形式的数据。

  2. 交易系统包含组织的当前数据,而数据仓库通常包含历史数据。

  3. 交易系统支持多个交易的并行处理。需要并发控制和恢复机制来维护数据库的一致性。

  4. 操作数据库查询允许读取和修改操作(删除和更新),而 OLAP 查询只需要对存储数据的只读访问(select 语句)。

  5. 数据仓库涉及数据清理、数据集成和数据整合。

数据仓库具有三层架构:数据源层、集成层和表示层。下图显示了数据仓库系统的通用架构。

data warehouse architecture

Types of Data Warehouse System

以下是数据仓库系统类型:

  1. Data Mart

  2. Online Analytical Processing (OLAP)

  3. Online Transaction Processing (OLTP)

  4. Predictive Analysis

Data Mart

数据市集是数据仓库最简单的形式,它通常着重于一个功能领域,如销售、财务或营销。因此,数据市集通常仅从少数数据源获取数据。

在此系统中,源头可以是内部事务系统、中央数据仓库或外部数据源应用程序。非规范化是此系统中数据建模技术的法则。

data mart

Online Analytical Processing (OLAP)

OLAP 系统包含较少的交易,但是涉及使用聚合之类的复杂计算,如 Sum、Count、Average 等。

What is Aggregation?

我们保存带有聚合数据的表格,如每年(1 行)、每季度(4 行)、每月(12 行),并且现在我们想比较数据,例如每年只处理 1 行。但是,在未聚合的数据中,将处理所有行。

OLAP 系统通常将数据储存在多维度架构中,例如星形架构、星系架构(通过逻辑方式合并事实表和维度表)。

在 OLAP 系统中,执行查询的响应时间是一种有效性衡量指标。OLAP 应用程序被数据挖掘技术广泛用于从 OLAP 系统获取数据。OLAP 数据库以多维度架构储存汇总的历史数据。与通常延迟数天的数据市场相比,OLAP 系统的数据延迟只有几小时。

Online Transaction Processing (OLTP)

OLTP 系统以大量简短的在线事务而闻名,如插入、更新、删除等。OLTP 系统提供快速的查询处理,还负责在多访问环境中提供数据完整性。

对于 OLTP 系统而言,其有效性衡量标准是每秒处理的事务数。OLTP 系统通常仅包含当前数据。用于存储事务数据库的架构是实体模型。OLTP 系统中采用范式化为数据建模技术。

OLTP vs OLAP

以下图示显示了 OLTP 和 OLAP 系统之间的主要区别。

oltp vs olap

Indexes − 在 OLTP 系统中,只有少数索引,而在 OLAP 系统中,有许多索引用于性能优化。

Joins − 在 OLTP 系统中,大量联接和数据是规范化的;然而,在 OLAP 系统中,联接较少且非规范化的。

Aggregation − 在 OLTP 系统中,数据未聚合,而在 OLAP 数据库中使用了更多聚合。