操作数据存储(ODS)和数据仓库(DW)的区别与联系
基础概念:(抓住重点:DW是反映历史变化,ODS是反映当前变化)
数据仓库(Data Warehouse /Enterprise Data Warehouse简称EDW企业级数据仓库):
是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。
时效:T+1
操作数据存储(Operational Data Store):
是一个面向主题的、集成的、可变的、当前的细节数据集合,用于支持企业对于即时性的、操作性的、集成的全体信息的需求。
ODS是数据仓库体系结构中的一个可选部分,是DB与DW之间的中间层,ODS具备数据仓库的部分特征和OLTP系统的部分特征。
时效:实时
拓展:
企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是静态的概念,只有把信息及时交给需要这些信息的使用者,供他们作出改善其业务经营的决策,信息才能发挥作用,信息才有意义。而把信息加以整理归纳和重组,并及时提供给相应的管理决策人员,是数据仓库的根本任务。
因此,对企业自身来说,数据仓库的建设是一个系统工程,是一个不断建立、发展、完善的过程,通常需要较长的时间。这就要求各企业对整个系统的建设提出一个全面、清晰的远景规划及技术实施蓝图,将整个项目的实施分成若干个阶段,以“总体规划、分步实施、步步见效”为原则,不仅可迅速从当前投资中获得收益,而且可以在已有的基础上,结合其他已有的业务系统,逐步构建起完整、健壮的数据仓库系统。
ODS概念的由来
ODS存储了运营系统(如OLTP(联机事务处理)系统)近实时的详细数据。
ODS的概念最早是由“数据仓库之父”——Bill Inmon提出的。ODS最初引入是为了寻找能满足快速加载和数据整合的性能要求,并且减少面向分析需求的变更和扩充对生产系统影响的解决方案,这一解决方案便是在生产系统和EDW之间增加一个数据整合层(也叫做数据缓冲层)即ODS。 具有数据整合层的作用,是提出ODS概念的主要出发点。随着技术的发展,
近年来ODS被赋予的功能和作用也得到了延伸,目前业界普遍认同的观点是:ODS为企业原始运营数据存储提供了一个整合平台,它的信息来自于不同的运营型应用系统。通过数据接口,在数据整合业务规则作用下,进入ODS的信息是可靠的、可信的。
ODS的工作过程
生产系统中的运营数据通过ETL(抽取、转换、装载) 过程进入到ODS中,生产系统之间准实时的数据交换由ODS系统完成,ODS系统同时还将整合好的生产系统下的运营数据通过ETL等方式传送到EDW中,完成运营数据从操作环境进人到分析环境的过程。
ODS是EDW的一个有益的补充和扩展。
两者相同点:
- ODS与EDW都是企业数据架构中的独立系统,两个系统都不是直接产生运营数据的系统,两个系统中的数据都是由操作环境的数据经过抽取、转换、加载(ETL)的过程而来,还要进行进一步的清理、整合等工作(EDW的数据可由ODS加载装入)。
ODS与EDW一样都既有细粒度的数据。也有根据不同维度汇总的汇总数据。
ODS与EDW上均提供基于跨系统整合后数据的报表类应用。
两者不同之处:
虽然ODS与EDW具有一些相似之处.但两者却是完全不同的实体,下面从多个角度对比两者的不同之处。
(1) 使用角色
ODS主要面向营业、渠道等一线生产人员和一线管理人员,为了实现准实时、跨系统的运营细节数据的查询,以获得细粒度的运营数据展现,例如渠道人员查询客户的全视图信息由ODS提供数据支撑。所以所需速度要快,ODS是反映当前变化。
EDW主要面向专业分析人员、辅助决策支持人员等,为了实现基于历史数据的统计分析和数据挖掘,以获得客户深层次的特征和市场发展的规律,例如专业分析人员的经营状况趋势分析由EDW提 供支撑。所以所需数据要全,DW是反映历史变化
(2) 数据来源
ODS需要的大部分运营数据直接来源生产系统。 ODS中的部分分析结果数据来源于EDW,例如客户 洞察信息等。
EDW需要的运营数据,如果在ODS中已存在,EDW则直接从ODS获取这部分数据。EDW需要的运营数据,如果在ODS中没有,EDW则直接从生产系统获取这部分数据。
(3) 数据获取性能和及时性
ODS支持OLTP类型的数据更新,数据更新时间短,数据可实现准实时更新,性能与及时性都高于EDW
EDW中的数据一般通过批量加载进入,数据更新速度慢,无法实现准实时更新,数据更新时间不足以支持实时的报表和事件监控需求
(4) 数据架构
ODS以关注生产运营过程的统计与监控为主的生产视角主题域方式来组织数据。ODS提供操作数据的统计,主要提供应用需要的细粒度运营数据。ODS中也存在部分粗粒度汇总数据,但汇总的维度少且简单。
EDW关注对历史数据的深层次分析与挖掘.从分析与挖掘的需要出发按不同主题维度来汇总与组织数据 提供历史数据的展示和分析,主要提供多层粗粒度汇总数据.汇总的维度多且复杂。
(5) 数据共享能力
ODS为其他生产系统提供运营数据的准实时数据共享服务。
EDW一般不为生产系统提供此类准实时的数据共享服务 系统中的数据只供本系统分析与挖掘应用使用**
(6) 系统提供应用数据查询
ODS提供生产环境下的数据查询,查询的交易量较小,不耗费太多资源,有确定的完成速度,而EDW提供分析环境下的查询,查询单元量较大,消耗的资源很多,完成的速度也不确定。
ODS提供生产环境下实时性较高的生产经营报表,动态报表,而EDW提供分析环境下的主题分析与挖掘报表,固态报表。
ODS提供面向少量维度的细粒度数据的统计,而EDW提供面向多个维度的多层粗粒度数据的主题统计、分析及深层次的挖掘。
ODS提供绩效管理和统计、数据质量审计和监控管理等功能 EDW提供趋势分析、客户消费行为分析和评估等功能。
(7) 数据存储
- 客户等关键实体数据。ODS长久保存当前数据,EDW长久保存当前与历史数据。
- 详单数据。ODS保存1个月到3个月;EDW保存2年。
- 汇总数据。ODS保存3年;EDW保存5年。
- 其他数据。ODS保存13个月;EDW保存3年。
(8) 系统技术特征
ODS主要面对大并发用户数、小数据量的访问,EDW主要面对小并发用户数、大数据量的访问。
ODS数据库优化同时侧重索引和分区技术;EDW数据库优化主要侧重分区技术。
ODS支持OLTP类型和OLAP(联机分析处理)类型的数据操作,EDW支持OLAP类型的数据操作。
(9) 系统可靠性
- ODS参与运营.必须保证可靠性。
- 相对ODS,EDW可以允许有更多的脱机时间。
(10) 系统开放性
- 因为需要与大量不同硬件、数据库配置的系统相互交换数据。ODS要求比较高的系统开放性。
- EDW一般只获取数据,而不提供给其他应用系统以多种模式直接访问,解决方案上也可采用相对封闭的数据库、软硬件平台。