您的位置: >> 首页 >> 数据仓库 >> ODS >> 查看资讯

推荐给好友 上一篇 我要投稿 下一篇

操作数据存储数据仓库的补充

    早期的DSS建立在传统的操作型环境之上,使用效果不令人满意。
原因在于:
(1)操作型环境中的数据是细节、当前数据,只能作一些"日常"决策,而不适于作"战略"决策。
(2)分析型处理与OLTP所用数据不同,分析型处理需要使用历史数据,进而提出了数据仓库(DW)的概念。DW中的数据要体现集成性和时间性(或历史性)。企业管理中所使用的数据被分别装入DW和操作型DB之中。 但信息处理的多层次要求导致了一种新的数据环境———操作数据存储(OperationalData Store,ODS)的建立。
ODS一方面包含细节的、当前或接近当前的数据, 可进行联机操作型处理;另一方面,又是一种面向主题、集成的数据环境,可以辅助企业完成日常决策。
     一、什么是ODS
1.ODS的定义及特点 ODS是能支持企业日常的全局应用的数据集合,是不同于DB的一种新的数据环境, 是DW扩展后得到的一个混合形式。 ODS中数据的四个基本特点是面向主题的(Subject -Oriented)、集成的、可变的、 当前或接近当前的。其中面向主题和集成的特点与DW是极为相似的。可变的是指,ODS中的数据不像DW中的数据是不可改变,而是可以进行联机改变的, 包括增、删、更新等操作。当前的是指,数据在存取时刻是最新的;而接近当前的则是指,存取的数据是最近一段时间之前得到的。 ODS最重要的特点是它可以进行企业级操作型信息处理(包括日常决策支持)。
一方面,当数据准备移入ODS中时,须进行数据转换,按照企业模式集成、再生数据。
另一方面,ODS中的数据是可以更新的。 支持ODS有效工作的技术是动态切换。 这里的动态切换是指技术在信息模式与操作型模式之间切换。所谓信息模式就是只有查询操作的工作模式(非排它型的),而操作型模式则指含有更新操作的工作模式(排它型的)。
2.ODS与DW的差异 面向主题和集成性使得ODS的数据在静态特征上很接近DW中的数据。但是在ODS与DW之间仍然有许多基本的、重要的差别。
(1)最大的差别在于数据的内容不同。从下表可以很容易地看出这一点: @@I1;表1@@ DW中的历史数据指长期保存并可重复查询的数据。 ODS中只保存细节数据;DW中则不仅保存细节数据而且也保存综合数据。ODS也可以获取一定的综合数据,但这些综合只有在需要时才生成,并且只有在生成时是准确的,是不可重建、不可保存的;而DW中的各级综合是可重复访问的。ODS中的数据是可以快速更新的;而DW中的数据进入DW之后是不可修改的。
(2)ODS与DW的数据容量是不同等级的。ODS中的数据量要远远小于DW, 因其不保留历史数据。
(3)二者的技术支持不尽相同。ODS要支持面向记录更新,而在DW中只需支持装入(Loading)和存取(Access)。
(4)二者面向的需求不同。ODS主要用于职员或企业的日常决策制定,而DW则服务于DSS分析员或高级决策层。ODS可用于即时(up-tothe-second)决策,DW 则用于长期趋势分析或战略决策。 从各方面来讲,不宜将DW与ODS相混淆。
    二、为什么使用ODS 在DB、ODS、DW三者并存的体系环境下,引入ODS可带来许多新的特点或优点。
1.在ODS上可以实现企业级的OLTP 在操作型DB环境中,各个应用所面对的仅是企业的某个部门,因而各个OLTP所处理的仅是企业的局部数据。而ODS的数据是面向全局集成的,所以建立在ODS之上的OLTP可快速实现对企业中数据的全局集中管理。
2.在ODS上可以实现即时(up-tothe-second)OLAP 一般来说,在DW上实现OLAP是为了获得长期趋势分析。但DW中的数据量巨大,故运行时间较长。而建立ODS的目的之一就是要支持日常企业级决策,由于ODS中的数据量较小,因此可以迅速获得决策信息,甚至可能达到秒级响应。
3.简化了DW的数据传输接口和DW管理数据的复杂度 无论是DW还是ODS,其获得数据都是通过各自的记录系统。在建立了ODS之后,ODS 的记录系统就在各个应用中了,DW的记录系统一般在ODS之中。ODS中"老化"(aging )的数据经变换后被移入DW中,而这些进入DW的集成过的数据可供DW进行各种处理之用。由于ODS 中的数据面向企业级集成,故ODS到DW的记录系统的接口(或转换)几乎是直接的,如图。这时,DW与操作型环境的界面变得简单了。尽管这时ODS的记录系统的接口复杂一些, 但由于ODS的数据改变可以快速完成,故处理起来更为方便。 @@I2;图1 记录系统接口@@ 但是如果不使用ODS而仅建立DB/DW体系,则要完成全局的OLTP、即时OLAP及获取数据以及刷新DW,都增加了困难:
(1)若要实现全局操作型OLTP,显然不可能在DW上进行,而只能在操作型DB上来完成。这时,将不得不由应用本身来进行各DB间的协调,在分布环境下尤其如此,这显然会大大增加应用的复杂度并增加许多额外开销。
(2)若要实现即时OLAP,获取全局决策信息,则要在DW上进行。但在DW中历史数据的刷新周期一般要在24小时以上,因而24小时之内不会获得更多的信息;或者是缩短DW的刷新周期,但这又会导致DW细节数据的时间粒度过小和DW数据的增长过快。这样在进行趋势分析时,需要预先对小粒度数据进行综合,而这样会进一步增加OLAP的运行时间。
(3)在没有ODS时,DW的记录系统分散于各个非集成的应用之中。 这时由于各个应用的数据分散且变化快,数据向DW集成时,DW的转换接口将很复杂而且需要处理好各应用在时间上的同步等问题。 要明确的是:ODS不是必须的。换句话说,在整个体系中可以只有DB与DW。一般来说,在不需要操作型集成信息的情况下,基于DB/DW的体系是优化的。 但现实的系统多为非集成的复杂系统。同时,在企业管理中,EIS(Executive Information System )不仅要获得长期决策信息,也要进行日常决策。
在DB/ODS/DW体系中,ODS作出的即时决策是集成性、企业级的。这对于企业进行中层管理,制订短期决策是极有帮助的。因而,要获得企业级操作型集成信息,建立DB/ODS/DW体系则是较优的。如仍采用DB/DW体系结构,则意味着把前面定义的ODS溶入DW之中,这将大大提高DW的管理难度并降低系统效率。
    三、建立ODS
1.建立DB/ODS/DW体系的步骤。 这里指的是建立体系环境中的各种模式而不涉及数据的获取和流动。 当企业已建有了大量非集成的DB时,建立完整DB/ODS/DW体系的过程是:
(1)建立一个面向主题的数据库世界。将原来的系统环境加以改造,在主题DB世界中实现对原环境的集成、组织和控制。
(2)建立起集成的环境。这时,许多适用于DW而不适用于DB的处理移入到DW环境中,原环境变得简单了。
(3)依赖各模型并参照已建立的DW环境建立起ODS模式。 需要说明的是:可以在建立DW之前先建立ODS。但因为实际上原有的系统多是"蛛网状"复杂系统,这时不易区分操作型与信息型处理,并且生产环境巨大,增加了构建ODS 的复杂性和难度。
2.ODS对数据的控制———获取并传输 ODS的一个重要作用是,在系统运行过程中获取并向DW传输数据。在 DB/ODS/DW 体系中,ODS是向DW提供数据的重要数据源。
(1)记录系统———ODS的数据源 对ODS而言,记录系统(System of Record)是提供给ODS并由DB环境下的各个应用所使用的数据。记录系统由企业所用的"最好"的数据组成。所谓"最好"是指数据及时、准确、完全、与数据模型结构兼容。记录系统定义要指明与ODS数据相应的数据所在的DB表。 实现时还要保证数据传输的高效性。 描述了ODS的记录系统之后,就可以向ODS中装入数据了。但要注意:任何对ODS 记录的改变必须在相应的记录系统改变之后才能进行。由此引发的时间滞后问题要求记录系统高效地传递数据。 类似地,可以定义DW的记录系统。只不过DW的记录系统位于ODS之中。
(2)捕捉变化的数据(Trapping delta da-ta) 变化的数据(delta data-dd)是指从DB环境向ODS流动以改变ODS记录的数据。其流动原因在于记录系统发生的变化要求反映在ODS数据上。
下面给出捕捉变化的数据的3种方法:
·在应用级捕获:这时操作型环境中运行的应用程序感知数据变化并向ODS中写入一条记录。
·使用变化数据文件(dd file-ddF),这时各dd记录被写入一ddF中,以后ODS从ddF中定期获取dd。
·在DBMS级获取,由DBMS感知DB的变化,并将后映象(After Image-AI)记录写入一个ddF中,再由ODS处理这个ddF。
 对于DW所要捕捉的dd,由于DW的刷新周期较长,故以ddF来完成较为适宜。可以这样认为:在DW获取数据时,ODS起着中转站的作用。并且在"中转"时, 先进行了数据集成,简化了DW的处理。
   四、一个实例 下面就零售商系统(Retailer)举一个实际应用ODS的简单例子。 系统要求:一国内零售商想实现联机存货清单管理。 系统目标:
(1)通过即时存单管理以便获得即时趋势情况。
(2)通过作全企业存单管理以充分发挥批量购买的优点。
存在的问题:该零售商的存单分布于全国各地。零售商若要在总部完成企业级联机存单管理,则建立联网的ODS是一个"最优"选择。。 建立ODS之后,一方面各地的存单在本地自治管理, 同时局部数据经转换迅速将变化情况传递到总部的ODS中,总部在需要时可以很好地实现即时OLAP,完成日常的中层决策。
本例子说明在一定情况下,使用ODS是达到公司目标的"最佳"途径。但要注意, 当该零售商要分析一定时期内不同商品的销路,比较各个收益时,仍须在DW之上来完成。并且事实上,ODS在集成了各地存单之后,将定期向DW中传递数据。


TAG: 数据仓库 数据存储
10秒注册会员 结交数据仓库朋友 分享你的精彩
查看全部1条评论

最新评论

我来说两句

seccode