《管理信息化数据仓库指南..》由会员分享,可在线阅读,更多相关《管理信息化数据仓库指南..(157页珍藏版)》请在金锄头文库上搜索。
1、MySQL数据仓库指南前言欢迎使用 mysql多维数据仓库指南。数据仓库可以通过集成各种多样的数据实现信息的统一,这些数据来源包括现行的事务操作和管理信息系统,以及外部各种信息源。这些源数据将被整合,清洗,转换,如果需要直接从这些数据来源读取数据的话,该数据将会在数据仓库中以更有利于操作的方式存储。数据仓库的数据构造方式使你可以存储当前和历史的数据。当前数据是实际事务操作活动必要的,一般是定期的硬拷贝(比如打印出的报表)或者是联机报表。而历史数据,往往不是那么容易利用,可以提供基于时间点分析的商业信息,比如:追踪、推论分析,以及对比,这些对于长期计划和战略性的市场决策都是很重要的。如 何从多个
2、信息源整合信息,定期积聚存储,有效的需求设计和发展技术,所有这些都和事务型管理信息系统所应用的技术有很大的不同。本书都是关于数据仓库的设 计和开发技术,它涵盖了大部分建立数据仓库所涉及到的大部分技术问题。更为重要的是,本书提供了一个易懂的操作指南,便于开发一个实际的数据仓库。本书的适用范围mysql多维数据仓库指南是一个实战的书籍。你将使用mysql数据库,但该书不是关于mysql的。本书不涉及任何硬件架构方面的问题。本书主要关心数据仓库的设计和开发技术。它不涉及开发项目的管理,理论,以及如何领导开发等相关的技术问题。本书用一个数据仓库开发的例子来展示技术如何应用。提供数据模型和sql脚本,将
3、能够适用于实际的数据仓库开发。这些脚本已经在Windows xp professional sp2 平台上用mysql 5。0。21 版本测试通过。另外,本书不再对以下的几个主题进行特别的论述: 数据仓库的概念 Sql MySQL数据库适合阅读本书的人:数据仓库应用于各种组织和商业机构,从政府部门,非盈利组织到学校,从制造业到零售店,从金融机构到医疗机构,从传统公司到互联网商家。本书首先面向数据仓库开发人员。但是,it 经理和其他it职业,特别是那些对mis(经营报告)和dss(决策支撑应用)感兴趣的人将发现本书同样有用。总的说来,本书是给那些为分析应用准备数据工作相关的人,以及那些需要递交信
4、息的人,比如打印报表,联机报表。本书同样适用于那些数据仓库初学者。它将直接快速的为那些正在准备开发他们第一个数据仓库的人提供帮助。教师和学生可以将该书作为教科书,以便于明确他们对于数据仓库原理,概念的理解。大部分章节可以被定制用于实验练习。预备的技能本书不是面向it新人,为了更有效的利用本书,读者必须有一些系统开发经验。但是,不要求先有数据仓库的建设经验。需要实践操作本书例子的人需要有rdbms(关系数据库管理系统)和sql的实际操作技能。你可以从本书得到你将可以仅仅用一个示例,一个最先存储商业销售相关数据的数据仓库,并且进行实践操作,就可以磨练你的数据仓库知识和实际技能。该示例是一个精简版的
5、实际数据仓库,可以在很多种商业类型中找到它的原型。你将基于mysql数据库用本书介绍的技术一步步的开发该示例中销售相关数据仓库。这些技术是在通常数据仓库开发中将碰到的问题的分解技巧。通过完成本文的学习并且完成所有的练习,你将获得相关工作经验并可以为负责第一个实际数据仓库项目做好准备。章节总览本书包含25个章节和一个附录。所有章节组织为四个部分。第一部分涵盖数据仓库基础。第二部分描述从原始数据到数据仓库的迁移。第三部分讨论如何控制数据仓库的发展演化。第四部分涉及到一些高级的多维技术。接下来的部分将给出每个章节的预览。第一篇 基本原理第一篇,涵盖多维数据仓库的基础原理,有四个章节。第1章,“基本组
6、成”,介绍星型模式(一种数据库模式,有一个事实表,周围围绕着多个维表)以及解释该模式的基本组成。第2章,”维度历史“ 介绍用代理健来维护维成员的历史记录。第3章,“度量可加性”,包含维度数据仓库中最重要的特性之一,也就是存储在数据仓库事实表中的度量的可加性。第4章,“维度查询”,介绍最适合应用于星型模式的一种sql查询,维度查询可以用来证明一个维度数据仓库是否具备两个最基本的设计指标:简单和高效。第二篇: 提取、转换和加载该篇的所有5个章节涉及了数据集成,事实表,维表。第5章,“源数据提取”介绍了不同类型数据的提取。第6章“导入时间维”涵盖了三种最通用的加载时间维的技术。第7章 “初始化导入“
7、和第8章,“定期导入”涉及到两种类型的导入技术,初始化和周期性。第9章,“周期导入计划”,作为第二篇的总结,提供一个进阶式的指导,关于如何利用Windows的任务管理器实现定期导入计划。第三篇:成长第三篇介绍了不同的处理技术,这些技术主要处理一个成功的多维数据仓库成长过程中碰到的相关问题。该部分有十个章节。第10章,“增加字段”讨论关于向现有数据仓库中的表增加一个字段的技术问题。第11章,“按需载入”涉及按需载入的技术。第12章,“维表子集”,介绍相关技术以帮助用户处理维表子集问题。第13章,“维度角色扮演”,关于在一个事实表中多次使用同一个维度的问题。第14章,“快照”让你在需要作出汇总数据
8、的时候,能提供快速性能的查询。第15章,“唯度层次”和第16章“多路径和不齐整的维度层次”是关于简单和多路径维度技术,相应的,这些技术帮助人们进行汇聚和钻取分析。第17章,“维度退化”,展示了如何用维度退化技术去减少一个数据仓库模式的复杂性。第18章,“垃圾维”,是关于垃圾维的技术,即将表面上不相关的但是经常会被用户进行要求分析的数据,用维的方式组织起来。第19章,“多星型模式”展示了如何在模式中增加多个星型模式。第四篇:高级技术包含六个章节。第20章,“不齐整数据源”,介绍如何在数据仓库中处理那些结构无法直接映射到目标表的数据源。第21章,“无事实的事实表”,帮助你为客户建立一种可供分析的辅
9、助数据,一种无事实字段的事实表,该数据无法从数据源直接取得度量。第22章,“迟来的事实”,包含一个技术,用于处理当数据源中某个特殊的事实没有在计划载入时间之前产生的情况。第23章,“外部数据源和维度合并“,包括两个主题:处理外部数据源和如何将多个维中分散的属性合并到一个维的技术。第24章,“累积度量”,讨论两个相关的问题:计算度量和累积度量的不可相加性。第25章,“分段维度”,阐述一种技术,可以帮助使用者针对那些有连续值的属性进行数据分析。附录附录a,“格式文件数据源”,介绍如何使用本书例子中的格式文件数据源。源代码下载可以从http:/.上面下载本书的示例的程序脚本。=Dimensional
10、 Data Warehousing with MySQL: A TutorialbyDjoni DarmawikartaBrainy Software Corp. 2007 (432 pages)ISBN:9780975212820Computer programmers who need to build a data warehouse will find relevant examples and information written in a thorough, easy-to-follow style in this step-by-step tutorial.封底 Back Co
11、ver将Mysql这个最流行的开源数据库软件进行数据仓库应用,在本书之前还从来没有被在创建多维数据仓库方面用这种入门指南的方式进行介绍。主题包括 星型模式建模,数据载入(数据的提取、转换和加载:etl),测试检验,以及多维查询。本书由始至终应用一个可实践,相对精简的真实的项目。其全面,易于接受的写作形式使得那些需要建立数据仓库的程序员可以得到相关的示例和资料。关于作者Djoni Darmawikarta 曾就职于ibm,现在是一个加拿大保险公司的数据仓库、商业智能团队中的技术专家。目前生活在Toronto, Ontario。第一篇基本原理章节列表:第1章:基本组成第2章:维度历史第3章:维度可
12、加性第4章:维度查询本篇概述你将运用关系数据库来实施一个维度数据仓库。事实表和维表这两种类型的关系表构成了一个数据仓库模式的基本部分,在本书的第一部分,你将用mysql数据库建立这些基本部分。第1章:基本组成概述本章将了解两个重要的主题:星型模式和代理键。星型模式是一种维度数据仓库的数据结构。代理键是在数据仓库中添加到事实表以作为主键的字段。在本章你将开始一个关于建立真实数据仓库的漫长旅程。一些任务需要在本章完成:n 建立一个数据库用户。n 建立两个关系数据库,一个作为数据仓库,另外一个作为源数据库。n 为数据仓库建立数据库表。n 产生代理键:你需要建立一个源数据库是因为你的数据仓库还没有源数
13、据。实际应用中这一步并不是必要的,因为你的数据仓库很有可能是基于已有的数据源建立的。你将在本书的第二篇开始使用这个源数据库。第1节 星型模式一个好的维度数据仓库需要有简洁的数据结构。从技术角度看,一个简洁的结构将意味着更快速的查询。在一个维度数据仓库,关系数据库的实施中有两种类型的表,事实表和维度表。事实表包含商业事实数据(或者称为度量值)。维度表包含查询该数据库的种类。注意 在看完本书前面两个章节后,你对事实表和维度表将有更好的理解。这些表在数据仓库中的联系模式看起来象星星状,因此该模式的术语就称为星型模式。注意 除了星型模式外,雪花模式也会用于数据仓库中。但是较之星型结构,其建模更为困难。
14、而且,雪花模式不容易理解和应用,而且其查询性能也低于星型模式。这些缺陷是雪花模式不适合建立维度数据仓库,因此本书只是涉及星型模式。一个星型模式包含一个事实表,该事实表环绕着两个甚至更多的维表。单星结构只有一个事实表,而多星结构则是每个星有多个的事实表,另外,维度表可以为多个事实表所共享。本章只包括单星结构,读者将会在19章“多星模式”中学习到多星结构。图1-1 展示了一个单星结构的维度模式,这是一个我们将会在本书中扩展的销售订单的数据仓库。图1-1 一个单星型的维度模式事实表名称的后缀通常是fact,而dim(维度dimension的缩写)通常用于维度表的后缀。根据这种命名规则,很明显,图1-
15、1 中有一个事实表(销售订单事实表sales_order_fact)和四个维度表(客户维customer_dim,订单维 order_dim,产品维 product_dim, 以及 日期维date_dim)。事实表包含一个或者多个可测的事实值(一个可以测的事实值简称为度量),而维表则对度量进行分类。每个维表有且只有一个代理键字段,代理键字段名称的后缀是sk。维表中的每个代理键字段在事实表中都会有对应的相同的字段,这样使得数据库的查询更为容易。但是,事实表中以sk为后缀的字段并不是代表一个代理键字段。图1-1中连接事实表sales_order_fact和四个维表的线指明了查询这些表的连接关系。这些连接是基于维表的代理键字段的。当建立一个维度数据仓库的时候,你将会在数据仓库中自己产生代理键的值,这些代理键值不是从源数据得到的。代理键的值是连续的数值。注意 后面关于“代理键”的章节将对代