数据仓库与数据集市
看了很多数据仓库方面的资料,都涉及到了数据集市这一说法,刚开始对数据仓库和数据集市的区别也理解得比较肤浅,现在做个深入的归纳和总结,主要从如下几个方面进行阐述:
看了很多数据仓库方面的资料,都涉及到了数据集市这一说法,刚开始对数据仓库和数据集市的区别也理解得比较肤浅,现在做个深入的归纳和总结,主要从如下几个方面进行阐述:()基本概念
()为什么提出数据集市
()数据仓库设计方法论
()数据集市和数据仓库的区别
()仓库建模与集市建模
()案例分析:电信数据仓库
说过一句话叫“IT经理们面对最重要的问题就是到底先建立数据仓库还是先建立数据集市,足以说明搞清楚这两者之间的关系是十分重要而迫切的!通常在考虑建立数据仓库之前,会涉及到如下一些问题:
()采取自上而下还是自下而上的设计方法
()企业范围还是部门范围
()先建立数据仓库还是数据集市
()建立领航系统还是直接实施
()数据集市是否相互独立
一、基本概念
数据仓库一词尚没有一个统一的定义著名的数据仓库专家在其著作
《》一书中给予如下描述数据仓库是一个
面向主题的、集成的I相对稳定的反映
历史变化T的数据集合用于支持管理决策。对于数据仓库的概念我们可以从两
个层次予以理解首先数据仓库用于支持决策面向分析型数据处理它不同于企业现有的操作型数据库其次数据仓库是对多个异构的数据源有效集成集成后按照主题进行了重组并包含历史数据而且存放在数据仓库中的数据一般不再修改。
为最大限度地实现灵活性,集成的数据仓库的数据应该存储在标准中,并经过规resized
范的数据库设计,以及为了提高性能而增加一些小结性信息和不规范设计。这种类型的数据仓库设计被称为原子数据仓库。原子数据仓库的子集又莆菁小T硬挚獯嬖诘闹饕康氖亲魑菁械墓8:骰。币沧魑握招允莶挚狻T硬挚獾拇笮12.写娣藕褪菘馍杓瓶赡芪薹闾厥饫嘈陀没y母髦中枨蟆F渥蛹即各个数据集市被拷贝到其它计算机上可作为它们自己的数据仓库。数据集市可以和产生它们的原子数据仓库一样大甚至更大。它们可以位于原子数据仓库的附近,或分布到更靠近用户的位置,放置在何处取决于使用和通讯成本。数据集市是用来满足特殊用户的应用需求的数据仓库,它们的规模可能达到数百使其成为数据集市的关键是它的使用目标、范围,而非规模大小。
数据集市可以理解为是一个小型的部门或者工作组级别的数据仓库。有两种类型的数据集市(如下图):
□□□□□thisesized=true;thistyieidth=5oo}"四加
独立型(直接从操作型环境中获取数据):这些数据集市是由特定的工作组、部门或业务线进行控制的,完全是为满足其需求而构建的。实际上,它们甚至与其他工作组、部门或业务线中的数据集市没有任何连通性
从属型(从企业级数据仓库中获取数据):这样的数据集市往往以分布式的方式实现。虽然不同的数据集市是在特定的工作组、部门或生产线中实现的,但它们可以是集成、互连的,
以提供更加全局的业务范围的数据视图。实际上,在最高的集成层次上,它们可以成为业务范围的数据仓库。这意味着一个部门中的终端用户可以访问和使用另一部门中数据集市中的数据
D
二、为什么提出数据集市
虽然OLTP和遗留系统拥有宝贵的信息,但是可能难以从这些系统中提取有意义的信息并且速度也较慢。而且这些系统虽然一般可支持预先定义操作的报表,但却经常无法支持一个组织对于历史的、联合的、智能的或易于访问的信息的需求。因为数据分布在许多跨系统和平台的表中,而且通常是脏的,包含了不一致的和无效的值,使得难于分析。
数据集市将合并不同系统的数据源来满足业务信息需求。若能有效地得以实现,数据集市将可以快速且方便地访问简单信息以及系统的和历史的视图。一个设计良好的数据集市有如下特点(有些特点数据仓库也具有,有些特点是相对于数据仓库来讲的):叫
特定用户体所需的信息,通常是一个部门或者一个特定组织的用户,且无需受制于源
系统的大量需求和操作性危机(想对于数据仓库)。叫
支持访问非易变(nonvolatile)的业务信息。(非易变的信息是以预定的时间间隔进行更新的,并且不受OLTP系统进行中的更新的影响。)
(3)口调和来自于组织里多个运行系统的信息,比如账目、销售、库存和客户管理以及组织外部的行业数据。叫
通过默认有效值、使各系统的值保持一致以及添加描述以使隐含代码有意义,从而提供净化的(cleansed)数据。口口
为即席分析和预定义报表提供合理的查询响应时间(由于数据集市是部门级的,相对于庞大的数据仓库来讲,其查询和分析的响应时间会大大缩短)。
D
三、数据仓库设计方法论
在数据仓库建立之前,会考虑其实现方法,通常有自顶向下、自底向上和两者综合进行的这
样三种实现方案,下面分别对其做简要阐述:
(1)自顶向下的实现
自顶向下的方法就是在单个项目阶段中实现数据仓库。自顶向下的实现需要在项目开始时完成更多计划和设计工作。这就需要涉及参与数据仓库实现的每个工作组、部门或业务线中的人员。要使用的数据源、安全性、数据结构、数据质量、数据标准和整个数据模型的有关决策一般需要在真正的实现开始之前就完成。
2自底向上的实现
自底向上的实现包含数据仓库的计划和设计,无需等待安置好更大业务范围的数据仓库设计。这并不意味着不会开发更大业务范围的数据仓库设计;随着初始数据仓库实现的扩展,将逐渐增加对它的构建。现在,该方法得到了比自顶向下方法更广泛的接受,因为数据仓库的直接结果可以实现,并可以用作扩展更大业务范围实现的证明。
3一种折中方案
每种实现方法都有利弊。在许多情况下,最好的方法可能是某两种的组合。该方法的关键之一就是确定业务范围的架构需要用于支持集成的计划和设计的程度,因为数据仓库是用自底向上的方法进行构建。在使用自底向上或阶段性数据仓库项目模型来构建业务范围架构中的一系列数据集市时,您可以一个接一个地集成不同业务主题领域中的数据集市,从而形成设计良好的业务数据仓库。这样的方法可以极好地适用于业务。在这种方法中,可以把数据集市理解为整个数据仓库系统的逻辑子集,换句话说数据仓库就是一致化了的数据集市的集合。这种方案的实施步骤通常分如下几步:
从整个企业的角度定义计划和需求
7构建完整的仓库体系结构
使数据内容一致而且标准化
将数据仓库作为一种超级数据集市来实施
关于inmonKimball的大辩论:
Ralphmba皿和口Biinmon口一直是商业智能领域中的革新者,开发并测试了新的技术和体
系结构。
Biinmon将数据仓库定义为一个面向主题的、集成的、随时间变化的、非易变的用于支持管理的决策过程的数据集合;他通过面向主题表示应该围绕主题来组织数据仓库中的数据,例如客户、销售、产品等等。每个主题区域仅仅包含该主题相关的信息。数据仓库应该一次增加一个主题,并且当需要容易地访问多个主题时,应该创建以数据仓库为来源的数据集市。换言之,某个特定数据集市中的所有数据都应该来自于面向主题的数据存储。unmon的方法包含了更多上述工作而减少了对于信息的初始访问。但他认为这个集中式的体系结构持续下去将提供更强的一致性和灵活性,并且从长远来看将真正节省资源和工作。下图是他的设计方法图解:
500){thisoresized=true;thisostyieowidth=50o}"D/>D
RaiPhDKimbaiio数据仓库仅仅是构成它的数据集市的联合,他认为可以通过一系列维数
相同的数据集市递增地构建数据仓库。每个数据集市将联合多个数据源来满足特定的业务需求。通过使用一致的维,能够共同看到不同数据集市中的信息,这表示它们拥有公共定
口皿口皿的方法将提供集成的数据来回答组织迫切的业务问题并且要快于inmon的方法。inmon的方法是只有在构建几个单主题区域之后,集中式的数据仓库才创建数据集市。而皿口皿认为该方法缺乏灵活性并且在现在的商业环境中所花时间太长。叫
实际上,方法的选择取决于项目的主要商业驱动。如果该组织正忍受糟糕的数据管理和不一致的数据,或者希望为今后打下良好的基础,那么inmon的方法就更好一些。如果该组织迫切需要给用户提供信息,那么口皿口口皿的方法将满足该需求。而一旦满足了迫切的
信息需求后,就应该考虑包含独立数据仓库的数据体系结构的转换计划。数据仓库将使数据集市与遗留系统和oltp系统隔离,并且支持更快地创建将来的数据集市。由于数据仓库在整个发展中一直承担了重任,所以它将支持极力关注数据集市。实际上基于商业驱动的需要,采用上面三种设计方案中的最后一种方法:自顶向下和自底向上综合的方案会很好的适应数据仓库建立过程中的不同需求。
四、数据仓库与数据集市的区别数据仓库是企业级的,能为整个企业各个部门的运行提供决策支持手段;而数据集市则是一种微型的数据仓库,它通常有更少的数据更少的主题区域,以及更少的历史数据因此是部门级的,一般只能为某个局部范围内的管理人员服务,因此也称之为部门级数据仓库。数据仓库和数据集市之间的区别如下图:
数据仓库和数据集市的区别可从如下三个方面进行理解:(1)数据仓库向各个数据集市提供数据
2)几个部门的数据集市组成一个数据仓库
数据他理
数据集市
数描来
遢徵系烧◎TP摹统、外都效据
数据■&库
郭国
企性级
部门嫌或工昨组豌
企业主超
部门就耕殊的好所立虺
数据粒度
录组的粒度
较相的粒假
数据结闾
规范化玷构t三范为
员缠膑式、雪用艮式或两者在台
圻里毅鞘
大哲的历史数据
适度的历史数相
优化
处理海信数据
救樨探索
健干的问和分加快速新恂
索引
高度则1
避度索引
500){sized=true;this.style.width=500;}"resized="true"/>
3)下面从其数据内容特征进行分析,数据仓库中数据结构采用规范化模式,数据集市中的数据结构采用星型模式,通常仓库中数据粒度比集市的粒度要细,下图反映了数据结构和数据内容特征的区别
500){sized=true;this.style.width=500;}"resized="true"/>
五、数据仓库建模与数据集市建模数据只是所有业务活动、资源以及企业结果的记录。数据模型是对那些数据的组织良好的抽象,因此数据模型成为理解和管理企业业务的最佳方法是极其自然的。数据模型起到了指导或计划数据仓库的实现的作用。在真正的实现开始之前,联合每个业务领域的数据模型可以帮助确保其结果是有效的数据仓库,并且可以帮助减少实现的成本。
⑴数据仓库的建模
数据仓库数据的建模是将需求转换成图画以及支持表示那些需求的元数据的过程。出于易读性目的,本文将关于需求和建模的讨论相分离,但实际上这些步骤通常是重叠的。一旦在文档中记录一些初始需求,初始模型就开始成型。随着需求变得更加完整,模型也会如此。最重要的是向终端用户提供良好集成并易于解释的数据仓库的逻辑模型。这些逻辑模型是数据仓库元数据的核心之一。为终端用户提供的简单性以及历史数据的集成和联合是建模方法应该帮助提供的关键原则。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。