《操作数据存储(ods)和数据集市(详解)》由会员分享,可在线阅读,更多相关《操作数据存储(ods)和数据集市(详解)(37页珍藏版)》请在金锄头文库上搜索。
1、徐俊刚 (xujg),数据仓库,2009年9月2008年11月,ODS的定义和特点 DB-ODS-DW体系结构 建立ODS ODS案例 数据集市的定义 数据集市的特点 数据集市与数据仓库的区别 数据集市的类型 数据集市的开发方法 数据集市的实施,操作数据存储(ODS)和数据集市,第3章,ODS的定义和特点,1,ODS由来 DB数据环境:面向应用和联机事务处理,当前的、细节的、分散的数据,不能提供集成的统一的数据环境,共享程度低,不能提供决策支持。 DW数据环境:面向高层、面向分析,可以提供集成、统一的数据环境,但是一定量的数据是建立DW的前提,需要使用历史数据,数据要体现集成性和历史性 实际中
2、往往会有实时决策的需求,上述两者都不能满足要求,因此产生了ODS ODS数据环境:一方面提供全局一致的、细节的、当前的数据,可进行联机事务操作型处理。另一方面是一种面向主题的集成的数据环境。数据量小,可辅助完成日常决策的数据分析处理,同时可以保护投资,保留现有的应用系统。,ODS的定义和特点,1,ODS定义 ODS是Operational Data Store的简称,翻译成操作数据存储。 ODS是数据仓库体系结构的一部分,可以根据需要选择是否采用ODS。 它具备数据仓库的部分特征和OLTP的部分特征。 ODS是一个面向主题的、集成的、可变的、当前的细节数据集合,用于支持企业对于即时性的、操作性
3、的、集成的全局信息的需求。常常被作为数据仓库的过渡。 作为一个中间层次,它既不是联机事务处理,也算不上高层决策分析,是不同于 DB 的一种新的数据环境,是数据仓库扩展后得到的一个混合形式。 ODS支持对数据的联机修改增、删与更新等操作,ODS的定义和特点,1,ODS特点 面向主题的(与数据仓库类似) 集成的(与数据仓库类似) 可变的 数据可以联机改变,包括增、删及更新等操作。 数据是当前细节级或接近当前的 数据在存取时刻是最新的 数据是最近一段时间之前得到的。,ODS的定义和特点,1,相同点 面向主题的 集成的 不同点 DW是静态数据,而ODS中的数据是动态的、可更新的 设计目标不同,ODS的
4、设计目标是快速执行针对全局信息的少量数据的简单查询工作,这同数据仓库中的大数据量复杂查询截然不同。 数据内容不同,ODS存储当前或者近期的数据,DW存储历史性数据。ODS就像你的短期记忆,仅仅记录你的近期信息,而数据仓库就像长期记忆一样,存储相对长久一些的信息 数据容量不同,ODS数据容量级别较小,DW的数据容量很大,ODS的定义和特点,1,ODS类别 I 类ODS,与应用系统的数据延迟为12秒,实时或近似实时 II 类ODS,与应用系统的数据延迟为24小时 III 类ODS,与应用系统的数据延迟为1224小时 IV 类ODS,数据仓库中部分决策分析数据回流至ODS中 不同ODS类别的特点 数
5、据延迟时间越短,ODS建设难度越高。 其中I 类ODS的建设难度最高,建设成本也是最高的。而且由于I 类ODS的实时性,对于技术的要求与其它类型ODS也有所不同,一般来讲需要用到EAI技术,但随着当前企业对数据仓库的实时性要求越来越高,相信I 类ODS会变得越来越重要。 通常在企业应用架构中,ODS是一个可选件,但一旦需要用到ODS的功能,那么ODS本身就将变得极为重要。 目前应用的比较多的是IV 类ODS,因为一旦将决策分析结果加载到ODS中,重要决策信息的高性能联机支持将成为可能。,DB-ODS-DW体系结构,2,特点:1)ODS的记录在DB中; 2)DW的记录在ODS中。,DB-ODS-
6、DW体系结构,2,DB-ODS-DW体系结构,2,在业务系统和数据仓库之间形成一个隔离层 一般的数据仓库应用系统都具有非常复杂的数据来源,这些数据存放在不同的地理位置、不同的数据库、不同的应用之中,从这些业务系统对数据进行抽取并不是一件容易的事。 ODS用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致,因此在抽取过程中极大降低了数据转化的复杂性,而主要关注数据抽取的接口、数据量大小、抽取方式等方面的问题。 转移一部分业务系统细节查询的功能 在数据仓库建立之前,大量的报表、分析是由业务系统直接支持的,在一些比较复杂的报表生成过程中,对业务系统
7、的运行产生相当大的压力。 ODS的数据从粒度、组织方式等各个方面都保持了与业务系统的一致,那么原来由业务系统产生的报表、细节数据的查询自然能够从ODS中进行,从而降低业务系统的查询压力。,DB-ODS-DW体系结构,2,完成数据仓库中不能完成的一些功能 一般来说,带有ODS的数据仓库体系结构中,DW层所存储的数据都是进行汇总过的数据,并不存储每笔交易产生的细节数据,但是在某些特殊的应用中,可能需要对交易细节数据进行查询,这时就需要把细节数据查询的功能转移到ODS来完成,而且ODS的数据模型按照面向主题的方式进行存储,可以方便地支持多维分析等查询功能。 在一个没有ODS层的数据仓库应用系统体系结
8、构中,数据仓库中存储的数据粒度是根据需要而确定的,但一般来说,最为细节的业务数据也是需要保留的,实际上也就相当于ODS,但与ODS所不同的是,这时的细节数据不是“当前、不断变化的”数据,而是“历史的,不再变化的”数据。,建立ODS,3,数据调研 对与业务系统关联的数据进行调研,弄清楚现有业务系统对应的数据逻辑模型和物理模型 确定数据范围 确定数据范围实际上是对ODS进行主题划分的过程,这种划分是基于对业务系统的调研的基础上而进行的,并不十分关心整个数据仓库系统上端应用需求,但是需要把上端应用需求与ODS数据范围进行验证,以确保应用所需的数据都已经从业务系统中抽取出来,并且得到了很好的组织。 一
9、般来讲,主题的划分是以业务系统的信息模型为依据的,设计者需要综合各种业务系统的信息模型,并进行宏观的归并,得到企业范围内的高层数据视图,并加以抽象,划定几个逻辑的数据主题范围。在这个阶段,以ER模型表示数据主题关系最为恰当。,建立ODS,3,根据数据范围进行进一步的数据分析和主题定义 在第一步中定义出来了企业范围内的高层数据视图,以及所收集到的各种业务系统的资料,在这一步中,需要对大的数据主题进行分解,并进行主题定义,直到每个主题能够直接对应一个主题数据模型为止。 在这个阶段,将把第一步生成的每个ER图中的实体进行分解,分解的结果仍以ER表示为佳。,建立ODS,3,定义主题元素 定义维 维名称
10、,名称应该能够清晰表示出这个维的业务含义。 维成员,也就是这个维所代表的具体的数据 维层次,维成员之间的隶属与包含的层次关系,每个层次需要定义名称 定义度量 度量名称,名称应该能够清晰标书这个度量的业务含义,建立ODS,3,定义主题元素 定义主题 主题名称和含义,说明该主题主要包含哪些数据,用于什么分析; 主题所包含的维和度量; 主题的事实表,以及事实表的数据。 定义粒度 主题中事实表的数据粒度说明,这种粒度可以通过对维的层次限制加以说明,也可以通过对事实表数据的业务细节程度进行说明。 定义存储期限 主题中事实表中的数据存储周期。,建立ODS,3,迭代,归并维、度量的定义 在ODS中,因数据来
11、自于多个系统,数据主题划分时虽然对数据概念进行了一定程度上的归并,但具体的业务代码所形成的各个维、以及维成员等还需要进一步进行归并,把概念统一的维定义成一个维,不允许同一个维存在不同的实体表示(象不同的业务系统中一样)。,建立ODS,3,ODS数据抽取转换层 数据转换层由各种转换工具及抽取程序组成,主要完成从源数据系统到ODS系统的数据转换、净化和载入 ODS数据访问中间件 ODS系统中间件的一个关键组成部分就是网络中间件。 中间件的主要作用是提供用户和ODS系统数据之间的无缝连接,同时还提供了系统应用程序接口,允许应用程序同本地或异地ODS系统进行通信。 另一方面,在DBODSDW三层结构中
12、,中间件也是将ODS中的信息与DW系统中的信息相关联的一条途径。,建立ODS,3,物理实现 定义每个主题的数据抽取周期、抽取时间、抽取方式、数据接口,抽取流程和规则。 物理设计不仅仅是ODS部分的数据库物理实现,设计数据库参数、操作系统参数、数据存储设计之外,有关数据抽取接口等问题必须清晰定义。,ODS案例,4,信息门户 应用模块 技术基础设施 运营系统,BI 工具, Data Mining, OLAP,Q+R,Data Warehouse,操作数据存储(ODS),数据采集 (ETL),信息交换,批量数据,实时数据,业绩考评、预算管理、资产管理、财务分析、投资管理、A-CRM等,集团公司内部信
13、息门户(EIP),数据集市的定义,5,数据集市产生原因 灵活性:要求数据仓库能够满足所有最终用户的需求,但是各个部门业务不同,需求侧重点不同,且需求也是不断变化的。这就要求数据仓库存储的数据具有充分的灵活性,以适应各类用户的查询和分析 性能:最终用户对信息检索要求是高性能的,即越快越好。 对数据仓库而言,灵活性和性能是一对矛盾体。提高灵活性就要存储各种历史数据,但是一个特定查询就要关联很多表,性能就不能保证 为了解决这一矛盾,数据仓库中就增加了数据集市。数据集市存储为特定用户需求而预先计算好的数据,从而满足用户对性能的要求。 数据集市产生的另外一个原因,是数据仓库开发周期较长,投入较大,规模较
14、小的企业无法承担。而数据集市能够快速解决某些问题,而投资规模也比数据仓库小很多。,数据集市的定义,5,数据集市概念 数据集市的英文名称是Data Marts。 数据集市是一种小型的部门级的数据仓库,主要面向部门级业务,并且只面向某个特定的主题,是为满足特定用户(一般是部门级别的)的需求而建立的一种分析型环境。 投资规模比较小,更关注在数据中构建复杂的业务规则来支持功能强大的分析 常称为“小数据仓库”或“部门级数据仓库”,数据集市的特点,6,优点 规模小、灵活,可以按照多种方式来组织,如按特定的应用、部门、地域、主题等。 投资规模小、投资回收期短,风险小 独立数据集市的构建比较快 不同的数据集市
15、可以分布在不同的物理平台上,也可以逻辑地分布在同一物理平台上。这种灵活性使得数据集市可以独立地实施,企业人员可以快速地获取信息。 数据集市的思想同时提供了分布式数据仓库的思想。如果按照数据的地理分布来组织数据集市,那么就形成了一个地理上分布的数据仓库。,数据集市的特点,6,缺点 建立数据集市的部门是互相隔离的,互相之间不能就标准、流程、知识及经验教训进行沟通,这将导致大量的重复劳动及重复分析。 这些部门可能会选择不同的工具、软件和硬件,使企业不得不为支持各种技术而维持一定数量的技术人员,造成成本增加。 独立数据集市,分别读取业务系统数据库中的表,极大地限制了DSS的伸缩能力。如,五个独立的数据
16、集市都需要客户信息,将造成对客户管理系统的5次数据抽取,而数据仓库则只需要抽取一次。 数据集市一般是为不同的部门建立的,这些数据集市没有进行集成,没有一个会包含整个企业的视图。因此不同数据集市对相同问题的分析可能会产生不同的结果。,数据集市与数据仓库的区别,7,便于访问和分析、快速分析,处理海量数据、数据检索,优化,适度的历史数据,大量的历史数据,历史数据,较大的粒度,最小的粒度,数据粒度,部门或特殊的分析主题,企业主题,主题,部门级,企业级,范围,数据集市,数据仓库,对比内容,单纯用数据量大小来区分数据集市和数据仓库 这种判断方法是片面的 尺寸大小不是数据集市的主要特征 数据集市容易建立 一个单纯的数据集市确实数据仓库复杂程度低一些,它只针对某一需要解决的特定商业问题,但是围绕数据获取的很多复杂问题并没有减少。 数据集市往往要从多个数据源中提取数据,过程和数据仓库类似。,7,数据集市与数据仓库的区别,独立的数据集市,业务系统,数据集市容易升级