`
adamed
  • 浏览: 181471 次
社区版块
存档分类
最新评论

《数据仓库》读书笔记 3

阅读更多
这两天读了《数据仓库》第三章,这一章讲解的是设计数据仓库。


将主要的内容梳理如下:

1、建造数据仓库主要包括两个部分的工作---与操作型系统接口的设计和数据仓库本身的设计。数据仓库是在启发方式下建造的,在这个过程中一个阶段的开发完全依赖于上一个阶段的结构。

2、将数据从操作型环境移入数据仓库环境不是简单的抽取。

3、从多处抽取数据并将数据集成到一个统一的视图中是一个十分复杂的问题。


4、数据缺乏集成的一个简单例子就是数据编码不一致,例如不同系统对性别采用不同的编码。

5、字段语义的转换时数据集成的另一个问题。例如同一字段在四个应用中有四个不同观点名字。为了转换数据使其正确地进入仓库,就必须建立各个不同源字段到数据仓库字段的映射。

6、另一个问题是原有数据在不同的DBMS下可能以多种不同格式存储。

7、对于数据体系结构设计者而言,当操作型环境发生变化时,不断地将变化的数据装载到仓库中是最为困难的。于是扫描现有系统文件成了数据仓库体系结构设计者要面对的主要问题。

8、数据仓库刷新时为了限制扫描的操作型数据库。
通常采用五种技术:
第一种技术史扫描在操作型环境中那些被打上时间戳的数据。
第二种控制扫描数据库的技术是扫描增量文件。
第三种技术是对作为食物处理副产品产生 的日志文件或审计文件进行扫描。
第四种是修改应用程序代码。这并不常用,因为很多应用程序的代码陈旧且不易修改。
第五种是将一个前映像文件和后一个映像文件进行比较。这种使用方法,抽取时就建立一个数据库的快照。另一轮抽取时,建立另一个快照。然后将这两个快照顺序比较,以确定已发生的业务活动。这种方法很麻烦、复杂还需要各种各样的资源。所以该方法不过是没有办法时才采用的办法。

9、当数据从现有操作型环境传送到数据仓库时,要考虑的另一个问题是需要对数据仓库中的已有的及腰传入数据的规模进行管理。数据在抽取盒进入数据仓库时都要进行压缩,否则数据仓库中的数据量就会失控。

10、如果没有认真地管理和压缩大量的数据,那么仅仅是聚集在数据仓库中的全局量就会使得数据仓库的目标难以实现。

11、数据建模分为三个层次:高层建模(称为实体关系图),中间层建模(称为数据项集)、底层建模

12、屋里数据模型是从中间层数据建模创建而来的,建立窝里模型通过扩展中间层模型,使模型中包含有关键字和物理特征。这时,屋里模型看上去像一系列表这些表有时被称为关系表。

13、将关系表作用于物理数据库还有最后一个步骤就是进行性能特征的优化系数。在数据仓库的情况下,设计中的第一步就是确定数据的粒度和分区。

14、数据模型输出是表,但表应该尽可能的合并以减少IO消耗。

15、除了合并表,另一种非常有用的技术是创建数据数组。

16另一个与数据仓库环境特别相关的物理设计是有意引入冗余数据。

17、数据仓库设计最后一个设计技术就是参照完整性的管理(个人感觉就是去掉动态连接数据)

18、元数据是数据仓库环境的一个重要组成部分。元数据就是数据的数据。元素语句与指向数据仓库内容的索引相似处于数据仓库的上层,并且记录数据仓库中对象的位置。

19、数据周期--时间间隔。数据周期指从操作型环境中的数据发生改变起,到这个变化反映到数据仓库中所用的时间。时间间隔的目的是减小开销节约成本。

20、在有操作型环境直接访问数据仓库的过程中(事实上确实有这种不正常的访问。)有一些严格的、不能妥协的限制:
  1)从相应时间角度来讲,这个请求必须能够忍受冗长的响应时间 。它可能在经过24个小时后才被相应,这意味着请求数据仓库数据的操作型处理绝不具有在线特性。
  2)对数据的请求必须是最小量的。数据的传输时以字节计的,而不是以MB或GB计。
  3)从数据仓库缺取得的、准备传输到操作型环境的数据必须不做(或仅需最小量的)格式化,。

21、多维方法只适用于创建数据集市,并不适用于数据仓库。因为:数据集市很大程度上时根据需求来形成的,这与数据仓库不同。
为了建立一个数据集市,首先要对喜爱数据集市上进行的处理的需求有很多了解。一旦这些需求已知,可以将数据集市建成一个最有的星型连接结构。
但数据仓库与此有着本质不同,这是因为数据仓库是为一个非常大的群体服务的,正因为如此,数据仓库对于任何一个需求集合而言,性能和便捷性都不是最优的。数据仓库是根据企业信息需求而非部门信息需求建立的。因此,对于数据仓库建立星形连接将是一个错误,因为最终结果是数据仓库在牺牲所有其他群里利益的代价中对一个群体实现了最优。

22、多维方法对于数据集市的数据库设计的吸引力起始于数据模型。所有使用数据模型作为设计基础的实践都有一些缺点。(如果从数据模型的角度来看,所有的实体之间关系是对等的。仅仅从数据模型的角度着手设计数据仓库会产生一种“平面”效应。实际上,由于种种原因,数据集市的实体绝不是相互对等的。一些实体需要有自身的专门处理。)

23、数据仓库与数据集市的一个问题是数据怎样从数据仓库到达数据集市。数据仓库中的数据是粒度化的,数据集市中的数据时紧凑和综合的。

24、必须对数据仓库中的数据进行选择、访问、重组才能适合数据集市的需求。
那么数据集市是数据仓库的替代品嘛??
1)数据集市中的数据结构是根据部门的特殊需求而建立的。
2)任何一个给定的数据集市中的数据结构都与其他数据集市不同。
3)因为每一个数据集市都有一个不同的数据结构,试图将任何一个数据集市转变为数据仓库都不具意义。
4)通常数据集市数据结构,贯穿整个企业,不能重用,没有灵活性,不能作为调和矛盾的基础,也不能为新出现的位置需求集合提供便利。然而,数据仓库中规范化粒度却正好满足所有这些要求。

25、数据仓库不是由处理需求建立的,而是根据企业需求而设计的。企业需求集中于整个企业,而不只是直接的应用程序。企业需求综合地看待对于处理、数据和基础框架的所有需求。

最后是本章小结:

         数据仓库设计始于数据模型。企业数据模型用于操作型环境设计,而修改后的企业数据模型用于数据仓库。数据仓库已一种反复进行的方式建造。无法事先预知数据仓库的需求。

         数据仓库开发者主要关心的问题是对大量数据的管理。为了达到这个目标,数据粒度与分区称为了数据库设计的两个最重要的问题。然而,这里仍然存在很多其他的物理设计问题,其中大部分围绕数据访问的效率。

         当数据从传统操作型环境相数据仓库中传送时,数据仓库就开始装载数据。数据从传统操作型环境相数据仓库传送要经过一个非常复杂的转换、重新格式化和集成的过程。当数据进入数据仓库是经常存在一个时间的转变。一些情况下,操作型数据没有加时间戳、而另一些情况下,这需要对操作型数据的粒度级别进行调整。

         数据模型有三个层次---高层、中层、低层。数据模型是能够采用反复方式建造数据仓库的关键。高层模型中的实体与企业的主要主体域有关。低层模型与数据仓库的物理数据库设计有关。

         在最底层次的数据库设计中,如何整个机构对数据都有统一的观察方式,那么可以进行轻度反响规范化处理。数据轻度反向规范处理的一些技术包括建立数组、明智地建立数据冗余以及建立创造性索引。

         数据仓库记录的基本结构包括时间戳、关键字、直接数据和二级数据。所有数据仓库数据库设计都遵循这种简单模式。

         参照表应当至于数据仓库中,并于其他数据一样根据时间变化进行管理。对包含在数据仓库的参照数据设计有多种方法。


         数据以一种称为“时间间隔”的方式装载进入数据仓库。这意味着操作型环境一有活动发生,数据不是马上进入数据仓库。相反,操作型环境新更新的数据可以再操作型环境中提留打24小时,然后才转移到数据仓库。

         数据在从操作型环境相数据仓库环境的传送过程中所经历的转换时非常复杂的。这其中有DBMS的变化、操作系统的变化、硬件体系结构的变化、语义的边和和编码变化等等。在数据从操作型环境相数据仓库环境的传送中腰考虑到许多种问题。

         数据仓库中记录的创建时由操作型环境中发生的活动或事件触发的。一些情况下,发生了如销售这样的事件;另一些情况下,这是用于标记规律性的时间推移时间,如一个月的结束、一个星期的结束。

         概要记录是由许多不同的历史活动组成的符合记录。概要记录是数据的符合表示。

         星形连接时一种经常被错误地用于数据仓库环境的数据库设计技术。在星形连接多维方法中,数据库设计是基于一个主体域中数据的出现次数和数据的访问方式进行的。星形连接设计适用于数据集市领域,而不适用于数据仓库领域。使用星形连接来建造数据仓库是一种错误,因为这将使建立起来的数据仓库对于一部分用于来说是最优的,而无法为所有其他用户带来最优的结果。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics