数据仓库处理实时数据.docx
数据仓库处理实时数据近年来,我国大中型企业也逐步认识到利用数据仓库技术的重要性,并已开始建立自己的数据仓库系统,如中国移动、中国电信、中国联通、上海证券交易所与中国石油等。这些数据仓库系统已经开始在这些企业运营过程中发挥出显著的作用。比如,从2001年起,中国移动开始在全国范围内建设数据仓库系统,目前己建成数千TB级的分级式数据仓库,有数万用户在使用,年访问量达数千万人次。仅一项“重入网分析”能够节约成本数亿元。但是,随着市场经济步伐的加快与竞争的日趋猛烈,传统的数据仓库技术已不能很好地满足企业进展与竞争的需要。传统数据仓库仅为企业高层决策者提供战略决策(StrategiCdeCiSion),服务于宏观决策与长远规划,如市场细分、产品管理等。然而,企业越来越希望数据仓库在支持战略决策的同时,也能够为市场一线人员提供实时的战术决策(tacticaldecision)服务,如实时营销、个性化服务等。这种既服务于战略决策又服务于战术决策的数据仓库称之为实时主动数据仓库(real-timeactivedatawarehouse,RTADW)。根据Gartner的研究报告,RTADW已成为数据仓库进展的必定选择。然而,当前对RTADW的研究尚不成熟,许多关键技术急需进行深入研究,应用也仅是在部分企业尝试使用。自2002年起,北京大学数据库研究室与中国移动集团公司在数据仓库的研究与建设方面开始了深入而密切的合作,在数据仓库与数据挖掘技术的研究开发与应用推广方面展开了大量卓有成效的工作,并于2006年5月在北京大学联合成立了“移动通信数据仓库联合实验室”。以移动通信领域为背景,在北京大学一惠普中国实验室联合项目的支持下,目前我们正在开展面向大规模海量实时主动数据仓库的研究工作,在理论研究与系统开发方面已经取得了丰富的成果。本文将重点介绍实时主动数据仓库的概念、特点、需要研究的问题与一些典型的应用。1实时主动数据仓库1.1 实时主动数据仓库的概念HaiSten提出了实时主动数据仓库的概念:RTADW是一个关系型环境的数据仓库,支持数据的实时更新、快速的响应时间、基于钻取的聚集数据查询能力与动态的交互能力,用于支持不断变化的商业需求。与传统数据仓库系统相比,实时主动数据仓库系统有许多独有的特点(参见表1)。表1实时主动数据仓库与.传统数据仓库的比较.传统数据仓库实时主动数据仓库仪支持故略决策实时性要求不高数据传的是单向的返回很难清置的指标以天、周以及月为周期羲取数 据,并做预先索会计算中等规模用户数高度限制的报表.适用预处理的聚合表或数据集市高级用户、分析员和内部用户支持故路决簸和战术决策要求结果实时返回数据传输是双向的返回日常运营的指标只包含明细数掘,可以以分钟 为周期我取明细敷据多用户的并发访问灵活的即席查询、数据挖掘操作员、外部用户-竺rr在RTADw进展的过程中,(operationaldatastore,ODS)是一个重要的过渡阶段。一些企业为支持战术决策,往往使用ODS技术。总体而言,ODS分3类:1)实时ODS,它通过消息中间件实施数据的同步转换与刷新,但业务系统不能太多,转换数据量不能太大;2)准实时ODS,它实现数据同步,以l-2h为周期,系统负担较小,具有较好的灵活性;3)传统ODS,其代价最小,目前在传统数据仓库中常见。1.2 实时主动数据仓库的特点与挑战1.2.1 实时数据的连续集成为支持实时的战术决策,源系统(或者称生产系统)产生的实时数据务必在最小化对源系统入侵程度、并保证实时数据一致性与完整性的情况下,被实时高效地集成到数据仓库中。挑战问题是:1)在保证源系统性能不降低的情况下,对实时数据在源系统的任何变化进行实时的捕获;2)保证被连续分发数据间次序的一致性与自身的完整性;3)在保证数据质量要求的前提下,完成实时、高效的数据加载。1.2.2 实时数据与历史数据的组织与管理提供RTADW中的实时数据与历史数据的有效的组织与管理策略,使之高效地工作在一种混合的工作负载环境(战略决策与战术决策)中。所要研究的挑战问题:1)对实时数据与历史数据(指传统数据仓库中存储的数据)进行统一建模,从而对外提供统一的访问视图;2)研究对实时数据查询所产生的“查询冲突”与“查询不一致性”问题,保证查询处理过程的无堵塞性与查询结果的一致性;3)研究实时数据与历史数据的及时信息合并技术,对提交的RTADw的任何查询提供“透明”的一体化服务;4)对负载的管理,使得RTADW系统高效的运行。1.2.3 主动的服务决策机制研究RTADW的主动决策服务机制,提供对实时事件进行主动分析与处理的能力。挑战问题包含:1)研究实时事件的主动捕获机制,具备对外界请求的实时响应能力;2)研究分析决策过程的自动执行机制,使RTADW系统拥有主动服务的能力。1.3 实时主动数据仓库的性能评价1)数据的新颖性实时数据务必被及时地加载到系统当中,从而支持战术查询分析。2)时间的一致性在连续数据集成的环境中,会出现数据时序的不一致性现象,需建立时序模型进行时间一致性管理。3)查询结果的一致性由于数据的动态到达与查询的持续性,会出现同一查询请求受不一致时刻不一致查询状态的影响,出现查询结果的不一致性,需要查询过程的一致性管理。4)主动决策的及时性RTADW系统能够实时捕获各类决策规则限定的动作,并做出实时的反应。5)可扩展性用户数目与性能需求随着RTAw系统分析应用的部署增加而增加。2实时主动数据仓库的研究问题在介绍研究问题之前,首先介绍一个RTADW系统的参考结构,如图1所示:图1实时主动数据仓库的参考结构如图1所示,一个RTADW系统要紧包含5个构成部分:数据源、数据抽取、数据仓库、主动决策部分与前端应用。数据源除了包含传统的静态部分之外,还包含实时的数据源部分(如数据流等);数据抽取部分包含传统的ETL抽取与实时数据抽取两部分;数据仓库除了存储传统的静态数据之外,还存储实时的数据部分,与它们之间的周期性的转换与数据的实时合并;主动决策部分要紧基于触发器的基础上,利用主动分析规则完成主动的决策分析;前端的展现除了传统展示方法外,还包含一些实时的监控部件(如dashboard等)。2.1 数据集成研究问题RTADW要集成的数据包含实时数据与历史数据两部分。历史数据使用传统的批处理方法进行集成,而实时数据部分则需要进行实时的连续集成。重点研究问题包含:D实时数据的主动变化捕捉在传统数据仓库系统中,由源系统按预先约定的加载时间与数据格式,定期把需要抽取的数据放到预先约定的接口中,然后由ETL引擎把这部分数据加载到数据仓库。但是,对RTADW而言,要求实时数据一旦由源系统产生就立即加载到数据仓库中,以便支持实时战术分析的需要。因此,RTADW系统需要能够对新产生的实时数据变化(插入、更新等)进行实时捕获,从而及时进行数据加载。要重点研究快速数据的变化捕捉方法,实现对源系统中的数据变化进行有选择性的定位与捕捉(即仅捕获实时部分的数据变化),满足零延迟的要求,最小化对源系统的入侵程度(即对源系统性能的影响),降低源系统的负载,确保源系统性能不下降、不当机。2)支持数据一致性与完整性的实时数据分发数据分发是指数据从源系统到数据仓库的传播过程。在传统数据仓库中,数据分发使用批量拷贝的方式,数据间的时间依靠性与事务依靠性在数据批量转移的过程中不受影响,能够保持数据的一致性与完整性。但在RTAw中,捕捉到的每个数据变化都是以消息的形式进行分发,同一事务中包含多个数据变化,也就包含了多条消息,这些消息在网络中进行独立传输。因而,如何保证消息在传输过程中的完整性,与如何保持多个消息之间的正确顺序,从而有效地保护数据的事务一致性与不一致事务间的依靠性。要重点研究高效的数据分发机制,使每个捕捉到的数据变化放入消息队列后,由消息队列完成数据的分发,保证消息传输的一致性与完整性,同时有效地保护数据的事务依靠性与时间依靠性。3)实时、高效的连续数据加载在RTADw中,接收到的消息中是未经处理的数据,假如对这些数据进行复杂地清洗与转换操作,将无法满足外部查询对数据实时性的要求;反之,所包含的脏数据会严重影响数据的质量。如何在保证数据质量的前提下实现实时、高效的数据加载是一个需要深入研究的问题。要重点研究连续高效的数据加载技术实现实时、高效的连续数据加载。实现对数据的清洗与转换过程所包含的内部子环节进行合理有效的组织,从而提高数据处理的速率与并发度。同时根据用户对数据质量的不一致需求,对即时加载的数据进行区别对待,合理分配系统资源,提高数据加载性能。2.2 数据的组织与管理研究RTADW系统中实时数据与历史数据的数据特性,建立有效的数据存储、组织与访问策略,为高效的战略决策与战术决策的执行提供数据平台支撑。2.2.1 RTADW中的数据建模传统数据仓库中的数据通常在空闲时(如夜间)以批处理的方式进行更新。由于更新时不对外提供数据查询服务,因而对更新的代价不做过高要求。但是,由于RTADw中的实时数据是以7X24的工作方式对外提供服务,而且要求数据的实时更新与查询结果的实时反馈,因此传统静态数据的组织与管理方式不适合于实时数据。要重点研究实时数据与历史数据的有效建模,使得关于查询工具而言,只有一个统一的逻辑视图,避免查询工具与终端用户进行多表连接操作的问题。2.2.2 实时数据的查询一致性保护在RTADW环境中,数据仓库中数据是实时更新、不断变化的。在这种“动态”的数据环境中使用OLAP分析与查询工具,会使查询所涉及的数据在读取过程中不断发生变化,从而导致查询结果的不一致性。需要重点研究在实时数据环境中的查询一致性问题,防止数据在查询过程中被修改,从而保证查询的一致性。同时保证以后到达的查询得到的是更新以后的数据,保证了数据的实时性。2.2.3 实时数据的查询冲突解决在RTADW环境下,由于数据的查询与更新同时进行,会导致在某个时刻,关于事实表中的某些记录,查询操作与更新操作会发生读写冲突。当源系统的数据变化过于频繁,数据仓库中的查询数量比较多时,这种冲突将更加突显,甚至可能使系统发生堵塞,无法对外提供服务。需要重点研究实时数据的查询冲突问题,利用不一致用户查询对数据实时性的不一致要求,有效分流不一致类型的查询负载,防止系统因查询冲突而发生堵塞,同时又能满足不一致类型查询的需求。2.2.4 实时数据与历史数据的“无缝”集成在RTADW环境下,为了最大程度地减小查询冲突给系统带来的负面影响,保证数据仓库正常高效地运行,实时数据与历史数据通常分开存储。为了最小化对查询工具的影响,不需要查询工具熟悉获取不一致类型数据的方法,而是一旦提出查询请求,就能够得到“无缝集成”后的数据。需要重点研究高效的集成技术,实现实时数据与历史数据的“无缝”集成。能够自动分析查询语句,从而确定数据需求,并从RTADW的不一致部分提取所需的数据,合并后供查询工具使用。能够自动分析所需数据中实时部分与历史部分的比例,从而更好地选择数据的迁移策略,减少数据传输,改善服务性能。2.3 主动决策服务研究RTADW的主动决策机制,从而支持对实时事件的主动探查,并根据事件的特征进行处理推断,从而触发相应的分析规则。2.3.1 RTADW中事件的主动探查在RTADw系统中,为了支持实时主动的决策分析,从而满足系统实时响应的需求,就需要系统具备对各类事件的主动探查机制,从而熊够实时发现各类特殊事件,并进行相应的处理。需要重点研究事件主动探查机制,与RTADW的应用需求相结合,提高事件的探查速度,保证RTADW的实时性。研究事件的组织与存储方式,使得在探查到事件后,能够迅速将事件与相应触发的分析规则相匹配,避免了简单查找所产生的巨大代价,进一步提高事件的匹配效率。2.3.2 支持主动决策的分析规则技术在RTADW的应用中,常常有大量的事件同时发生,导致很多分析规则同时触发,同时各个规则间通常有一定的联系,一些规则的发生会导致其他规则的触发。这就使规则的并发操纵与匹配的效率成为影响RTADW性能的重要问题。目前,已有的方法并不能完全解决大量事件并发时带来的效率问题,已有系统不能满足大量用户并发情况下的性能需求。需要重点研究高效的分析规则组织方法,使分析规则之间的关系明确,规则的匹配及规则触发因果关系的查找更加迅速,提高分析规则匹配的效率。研究有效的分析规则所产生的操作组织方式,使得分析规则触发时能够迅速、主动地找到与之对应的具体操作,从而能够迅速对不一致的源系统进行相应的操作。3实时主动数据仓库的典型应用下面列举一些典型的实时主动数据仓库应用,3.1 在移动通信领域的应用实时监控移动呼叫数据,防止欺诈行为发生。据国际数据公司IDC统计,每年全球电信领域因欺诈而造成的缺失占电信服务总收入的5%10%之多,对电信运营商的信誉与正常业务运营产生了严重的冲击。传统数据仓库技术因其数据延迟过大,不能实时捕获欺诈信息,因此不能很好地解决这一难题。利用RTADW技术,把当前的实时呼叫信息与数据仓库中的历史行为信息结合,借助通信企业提供的企业间共享的欺诈人群信息,能够有效地判定当前客户是否具有发生欺诈行为的可能性,从而进行实时地预防与监控,减少企业因欺诈而造成的缺失。3.2 在电子商务领域的应用根据用户提交信息,实时给客户灵活的定价与折扣。借助于网络技术而蓬勃进展起来的电子商务应用已日趋普及。但是,目前的电子商务通常不具有个性化服务的能力,只能在既定规则下开展不具有针对性的服务,不利于提升客户服务的能力。RTADW技术能够很好地解决这一难题。对客户提交的实时购物订单,能够根据客户的当前行为信息,借助于在数据仓库中存储的该客户的历史消费信息来推断客户的价值,进行实时又个性化的定价与折扣,从而提升客户满意度,增强企业的竞争力。4有关研究NCR给出了主动数据仓库的概念,但其本质上也是ODS与传统数据仓库的结合。其他一些国际数据库研究机构(如IBM,Oracle,SybaSe)也纷纷提出了自己的解决方案,共同点是都使用了ODS方案来存储实时数据,用传统数据仓库存放历史数据,从而是ODS之上解决对实时数据查询的问题。但是,使用ODS解决方案面临的最大问题就是所有的数据务必进行实时的抽取,否则无法满足实时性的需求。但是,根据国际权威机构Garter的研究报告指出,真实业务对实时数据的需求量仅占所有抽取数据量的25%左右。因此,对所有的数据都使用这种代价高昂的实时抽取处理方式,必定带来具体的资源(时间、空间等)的浪费。RTADW的实时数据连续集成要紧有如下方法:1)脚本方法。该方法使用灵活且比较经济,很容易着手开发与进行修改,而且几乎任何操作系统与绝大部分DBMSS都能够使用脚本。但是,该方法的实施耗费开发者的大量的时间与精力,而且不易于管理与操作与不能满足服务水平协议。2)ETL方法。该方法是实现大规模数据初步加载的理想解决方案,提供了高级的转换能力。但是该方法通常都是在“保护时间窗口”进行,在ETL任务执行期间,数据源默认不可能发生变化,从而不能满足实时数据集成。3)EAl方法。该方法与ETL解决方案并存,并增强了ETL的功能,能够支持在源系统与目标系统之间进行连续的数据分发,并提供高级的工作流支持与基本的数据转换。但是该方法受到数据量的限制,不适合数据量较大的环境。当前,在实时数据与历史数据的组织与管理研究方面,要紧有下列一些学术观点:1)无实时数据存储。该方法把从源系统产生连续加载到数据仓库,能够直接在数据仓库事实表中插入或者更新数据,也能够把数据插入到实时分区当中的单独的事实表中。但是,该方法的缺点是可扩展性不好,复杂查询与连续插入及更新混在一起进行会严重影响数据库的性能。2)阶段存储表存储实时数据。该方法把数据连续地注入到阶段存储表,其结构与数据仓库表的结构相同,其内容会与事实表周期性地进行交换,使用视图集成完成实时数据与历史数据集成。但是,该方法的缺点是在处理数据交换时,务必暂时停止对外提供实时查询服务。3)实时数据缓存。该方法能够完全避免对数据仓库性能的影响,不用对现有的数据仓库做出修改,能够是另一个专用的数据库服务器,也能够是一个大的数据库系统的单独的实例,把所有那些需要实时数据的查询定向到实时数据缓存,或者者把某个查询所需要的实时数据临时地无缝隙地整合到传统的数据仓库中。该方法的缺点是要安装与保护一个额外的单独的数据库。主动规则(activerule)作为实现主动决策的手段已经被广泛同意。在处理一系列复杂的任务与对数据的自动管理(包含完整性约束检验、转换、安全等)过程中,使用户的参与度降低到最小。主动的信息管理具有基于“事件-条件-动作"(event-COndition-action,ECA)的规则处理特性,复杂的商业决策构造与处理不需要深入到应用程序与底层数据库。主动数据仓库(ADW)中使用ECA规则或者者其他事件驱动机制,是为了在传统数据仓库环境中自动执行日常决策任务。Thaihalnmer等人使用ECA规则来模仿分析人员的工作,故称之为分析规则(analysisrules)它结合了ADB、传统数据仓库与OLAP良好的决策标准,从而满足决策过程的自动化。但是,它的数据集成过程是基于传统的批处理方式工作的,这与实时的数据集成不符合,会在迟到的数据与基于不完整信息的决策制定中产生问题。实时数据仓库的定义数据仓库基础首先,让我们熟悉一下基本的数据仓库定义。建立数据仓库是一个创建、保护与查询的过SoRalphKimball将数据仓库定义为“满足查询与分析的事务处理数据的拷贝的特定结构”。创建数据仓库的过程包含数据仓库的逻辑模型与物理数据库。保护的过程包含ETL过程,马上数据从OLTP系统中抽取到数据仓库。查询的过程是从数据仓库中收集信息。简单来说,数据仓库是一个从数据中获取信息的结构。其次,我们需要区分信息与数据之间的差别。数据仅仅是简单的事实描述,分散的数据不存在有意义的信息。举例说明:A公司在2003年1月有100O件小商品位于北京地区的仓库中。尽管有几个事实包含What(小商品),where(北京地区的仓库)与When(2003年1月),数据中仍然没有带来有意义的信息。另一方面,信息是数据的含义,信息来源于数据。继续A公司的例子:在2003年2月,A公司在北京地区的仓库里有1500种小商品。当与前面的数据组合起来,2003年1月有IOoo种小商品,我们能够从数据集成中得到信息。其中一条是北京地区的仓库中的小商品的库存量从1月到2月增加了50%o这条信息让我们有一个疑问,为什么一个月中库存增加了这么多?一月与二月之间业务上有什么问题吗?这条信息让我们采取相应的行动,比如开始操纵库存。信息来源于数据,信息是继续提出问题与采取行动的开端。实时vs.近似实时实时vs.近似实时之间的区别可下列面一个词概括:反应时间。反应时间是指行为的完成时间与该行为的数据在数据仓库中可利用时间之间的延迟。实时情况下,反应时间是能够忽略不计的;在近似实时情况下,反应时间是一段时间,比如2小时。为了使系统变得更精确,一些人使用了“实时”这个概念。实时OLTPOLTP中的实时性指的是能通过OLTP系统的即时响应速度让数据同步。比如A公司有订单登记与订单处理的OLTP系统。关于有实时能力的OLTP系统,当销售记录在订单登记系统中,同时订单处理系统就已经有了销售记录。数据仓库与OLTP是不一致特征的系统,不管他们是否具有实时性。实时数据仓库的定义实时数据仓库是两种事物的组合:实时行为与数据仓库。实时行为是一种即时发生的行为。行为能够是任何情况,如超市中小商品的销售行为。一旦行为完成,就有关于它的数据。数据仓库捕获有关商业行为的数据,而实时数据仓库在商业行为发生时就捕获数据。当商业行为完成时,有关数据就已经进入到数据仓库同时能立即使用。换句话说,实时数据仓库是这样一个系统,只要行为发生、数据变得可用时,就能从中获得信息。1、主动数据仓库1.1、 问题的提出假如你的网站能够及时的给客户返回信息,同时客户每访问3次后就给10%的折扣,将能增加多少的客户忠诚度?假如供应商能够预测到假期每个商品会增加多少的销售量,并及时补充商品,将会增加多少的销售额?今天,成功的商业关系,不管是客户、合作伙伴或者者供应商,都越来越依靠集成了企业所有数据的数据仓库,分析出有价值的信息,并把信息分发给每天做决策的人员。主动数据仓库转变传统数据仓库解决方法的策略,使企业在维系客户上变得更加主动与有效。1.2、 变革经济环境下的全新解决方案新经济环境下,有着新的客户期望值、新的客户关系与新的商业机会,企业需要具有主动的决策支持能力。今天,数据仓库的数据正在发生演变,数据仓库负担着客户关系管理、一对一营销与及时制定决策等效用,继而成为具有操纵与影响市场能力的工具。数据仓库的初始阶段,是面向查询批处理的决策支持应用。数据仓库的初始目的是收集、清理与集成组织内的数据,这些数据用来产生报表与查询,以支持决策的制定。随着数据仓库技术的成熟与应用普及,越来越多的企业利用数据仓库技术的特性,以支持预测分析以驱动商业决策。数据仓库技术在更大范围内得到应用,从分析市场将要发生什么变化,到分析市场正在发生什么变化,到基于事件触发、操纵市场朝着自己想要的方向去进展。1.3、 主动数据仓库的优势利用呼叫中心,进行自动的、直接的客户营销;在信用卡业务处理过程中,及时进行欺诈检测;飞机满座率低时,能够在飞机起飞前,让更多的乘客坐上飞机;基于当前的客户奉献度与价值度,给客户灵活的综合定价与折扣;及时决定运行中卡车的最优线路,降低货物运送时延,并实现对不一致客户的不一致服务承诺;基于客户近期的信用卡交易情况、结合他们长期的购买行为,优化马上要送给客户的交叉销售购物券;传统数据仓库解决方案主动数据仓库解决方案只能支持战略决策支持战略决策与战术决策返回很难测量的指标返回日常运营指标以天、周或者月为周期获取数据,并做预先聚合计算只包含明细数据,可能以分钟为周期获取新数据中等规模用户数多用户数并发访问(如100O用户以上)只能得到高度限制的报表,使用预处理的聚合表或者数据集市灵活的即席查询,数据挖掘适用于高级用户,分析员,内部用户适用于操作雇员,呼叫中心,外部用户表1:传统数据仓库与主动数据仓库的能力比较显然,主动数据仓库扩展了传统数据仓库的能力:外部人员能够访问数据仓库,如合作伙伴、供应商与客户。企业的所有成员都能够直接的访问数据仓库,包含普通的雇员、呼叫中心的客户代表等等。集成、多主题,交叉渠道的执行能够帮助企业更快更有效的行动,拓展商业机会。主动数据仓库支持战略与战术的市场决策。意味着企业的战略分析结果能够转化为具体、全面的条件约束与操作事务下的行动。这样,发挥了日常战术决策的效用,提高了数据仓库信息的效率。最终,关于企业来说,一致性的数据使职员与合作伙伴更好做出符合事实的、精确的与有见地的决策。建立主动数据仓库帮助你更接近你的客户、优化供应链、提高制造质量与精准地跟踪商品流淌,计划与管理成功的商业活动,达成销售自动化,使得企业具备新竞争环境下的及时商业分析能力。主动数据仓库需要一个可扩展的、高性能的数据仓库解决方案,需要实时数据仓库的支持。2、实时数据仓库与ODS很多数据仓库设计者认为不可能把现有的24小时运行周期的ETL改为15分钟的周期。由于即使将数据清理的步骤并行处理,最大的事实表与维表的增量加载也不一定能在这么短的时间内完成。2.1、 ODS的引入规划数据仓库时,能够在常规的、静态的数据仓库之外,建立一个实时的分区,这个特别的分区在物理上与管理上独立于传统的数据仓库。事实上,实时分区通常并不是数据库概念上的表分区,而是由一些独立的能够在其上进行更新与查询操作的表构成。存储实时分区的系统就是ODS(OperationalDataStore)。ODS与实时分区是两大数据仓库流派的不一致名词定义而已,我们姑且将ODS懂得为存储与管理实时分区的系统。ODS处于业务系统与数据仓库之间,具有实时的、常变的、当前的、临时的等特点。引入ODS,DW的体系结构变为:源数据-ODS-DW-OLAP0增加ODS,还需要前端工具的支持,才能够进行无缝查询。实时分区务必满足如下的一些苛刻要求:在静态数据仓库更新前,承担所有的查询操作;在粒度与内容上与静态数据仓库的事实表能够吻合链接;支持大量并发的查询响应。2.2、 实事分区(ODS)的应用在维度模型中,要紧有三类粒度的事实表:交易粒度(TranSaCtionGrain),周期性快照粒度(PeriodicSnapshotGrain),增量快照粒度(ACeUmUIatingSnaPShOtGrain)。实时分区在3种类型的粒度上有不一致的结构。2.2.1 交易静态数据仓库的事实表就是交易粒度的,它包含源系统中的交易记录。假如在某时间周期内源系统没有新的交易,则没有新的记录。相反的,假如交易很多很频繁,就会产生大量的记录。实时分区具有与静态事实表维度关联的数据模型结构。实时分区通常完全没有索引,由于务必不断的保护新加载的数据,同时实时分区只存储当天的数据,也不必在此上建立预聚合计算。有了实时分区,应用务必能够从静态数据仓库表钻取到实时分区。做时间上的聚合计算时(如当月的销售量),务必向两个表发出相同的查询。在一个大型零售商场,每天有IOoO万笔交易,静态数据仓库表中将会有很多记录。假设每个交易记录为40字节,每天增加的数据量大约为400MB,一年增加150GB。这样的事实表必定有庞大的索引,并支持聚合计算。但实时分区不要有索引(但能够有主键),以支持快速插入。实时分区也不要有预先聚合,实时分区需要支持快速的数据插入,同时实现高性能的查询。2.2.2 周期快照这里,应用从静态事实表查询钻取到实时分区钻取时,与交易粒度结构下的情况有些不一致。尽管很多指标能够在表之间直接钻取,但整个当月的数据务必聚合到月份层次,以保持查询结果的规整。最后,在每月的最后一天,实时分区数据加载到静态数据仓库,然后把实时分区清空。此类维度模型用于短周期的处理,如定单的生命周期。定单与运输管理中,每个项目产生一条记录。在事实表中,这些记录需要根据活动的变化进行更新。比如,客户下定单时,增加一条记录;货物开始装载运输时,更新该记录;货物到达目的地时,再次更新记录;然后付款、订单完成都要更新记录。这个案例中,事实表将被迫不断的更新数据。为了性能上的考虑,这些更新将在夜间完成。这里,实时分区只包含今天更新的记录。晚上,实时分区的数据正好能够写到主事实表中,可能是插入新记录到主事实表,或者者,根据唯一索引覆盖已存在的记录。查询每个定单的情况,需要读取事实表与实时分区,能够在两个表上做外联结操作,或者在两个表上做并集,这样就能够查询到新加入的记录,并表达在报表上.在电信等行业,客户投诉处理过程的情形也很类似,一个投诉要通过提交、复核、派单、处理与反馈等过程,进行多次更新操作。