信息处理的多层次要求导致了一种新的数据环境 ——DB-DW 的中间层 ODS (操作型数据存储)的出现。 ODS 是 “ 面向主题的、集成的、当前或接近当前的、不断变化的 ” 数据。通过统一规划,规范框架和数据, ODS 可以实现操作型数据整合 和各个系统之间的数据交换 ,能够提供实时的操作型报表 ,减轻数据仓库的负担。建设 ODS 还可以为后期数据仓库建设 做好准备。
ODS 全称为 Operational Data Store ,即操作型数据存储 ,是“ 面向主题的、集成的、可变的、反映当前数据值的和详细的数据的集合,用来满足企业综合的、集成的以及操作型的处理需求 ”(Bill.Inmon) 。 ODS 是数据仓库 体系结构中的一个可选部分, ODS 具备数据仓库 的部分特征和 OLTP 系统的部分特征。
1.1 ODS 的出现
系统应用集成中一般对各系统中数据分为两类:操作型数据 , 有细节化,分散化的特点;决策型数据, 有综合化,集成化的特点。
数据仓库概念的提出也把数据处理划分为了操作型处理和分析型处理两种不同类型,从而建立起了 DB-DW 的两层体系结构。但是有很多情况, DB-DW 的两层体系结构并不能涵盖企业所有的数据处理要求 , 比如有些实时性决策问题 , 它要求获取数据周期不能太长 , 而且也需要一定程度的汇总。信息处理的多层次要求导致了一种新的数据环境 ——DB-DW 的中间层 ODS (操作型数据存储)的出现。它像 DW 一样是一种面向主题,集成的数据环境,又像操作型 DB 一样包含着全局一致的、细节的当前的数据。这样就构成了DB-ODS-DW 的关于企业数据的三层体系结构。
1.2 与应用系统、数据仓库的比较
根据数据仓库之父 Bill. Inmon 的定义, “ 数据仓库 是面向主题的、集成的、稳定的、随时间变化的,主要用于决策支持的数据库系统 ” 。下面对数据仓库、 ODS 和数据库进行多方面的比较:
比较项目 |
数据仓库 |
ODS |
应用系统 |
建设目的 |
决策支持 |
实时监控 |
业务操作 |
服务对象 |
企业管理层 |
业务管理层 |
生产层 |
存储周期 |
长期 |
短期 |
即时 |
处理频率 |
非实时 |
准实时 |
实时 |
主要功能 |
分析功能 |
事务处理,短时分析 |
事务处理 |
技术实现 |
OLAP |
OLAP 、 OLTP |
OLTP |
功能结构 |
集中 |
相对集中 |
分散 |
数据类型 |
明细数据 , 汇总数据 |
明细数据 |
明细数据 |
数据容量 |
非常大 |
小 |
小 |
1.3 应用集成方案比较
实施方案 |
实施结果 |
优势 |
缺陷 |
数据仓库 (DW) |
企业能够分析 DW 中的历史数据,进行中远期的规划 |
可以解决企业的决策需求 |
不能满足企业的实时监控和实时业务需求
|
操作型数据存储 (ODS) |
企业能够把握 ODS 中的当前综合数据,对企业的及时运行情况随时掌控 |
可以满足企业的实时监控和实时业务需求
|
不能满足企业的中远期决策需求 |
DW+ODS |
企业能够分析 ODS 中的当前综合数据,对企业当前运行情况进行宏观控制 ; 能够分析 DW 中的历史数据,对未来进行合理规划 |
|
ODS 技术的引入和应用,为企业在日常经营中进行即时 OLAP 提供了一种解决方案,使得企业无须建立一个 “ 臃肿 ” 的 DW ,就可以进行一些非战略性的中层决策,来实现对企业的日常管理和控制,同时也能获得较快的响应速度。