《数据仓库概念(ppt-69页)课件》由会员分享,可在线阅读,更多相关《数据仓库概念(ppt-69页)课件(70页珍藏版)》请在金锄头文库上搜索。
1、1第一章第一章 数据仓库基本概念数据仓库基本概念2第一章 目录1.1 从数据库到数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结3 1.1 从数据库到数据仓库 传 统 数 据 库 以 及 OLTP( On-Line Transaction Processing 联机事务处理)在日常的管理事务处理中获得了巨大的成功,但是对管理人员的决策分析要求却无法满足。因为,管理人员常常希望能够通过对组织中的大量数据进行分析,了解业务的发展趋势。而传统数据库只保留了当前的业务处理信息,缺乏决策分析所需要的大量的历史信息。为满足
2、管理人员的决策分析需要,就需要在数据库的基础上产生适应决策分析的数据环境数据仓库(Data Warehose)。 4 1.1.1 蜘蛛网问题(1) 在市场经济的激烈竞争中,信息对于企业的生存和发展起着至关重要的作用。企业对信息的需求是多方面的,为了避免企业中各部门或各用户间的冲突和简化用户的数据视图,一种称作“抽取程序”的方法被广泛地应用。 比如,市场部人员通常只关心企业的销售、市场策划方面的信息,而不注重企业的研发、生产等其他环节。因此,将销售、市场策划方面的信息抽取出来单独建立部门级的数据库很有必要,这样可以提高数据的访问效率。5 在部门级数据的基础上可能还要被继续执行抽取程序,以建立个人
3、级的数据库。比如,专门负责制作公司财务报表的数据人员,常常需要从财务部门的数据库系统中抽取数据。又如,部门经理可能经常抽取常用的数据到本地,有针对性的建立个人级数据库就显得尤为重要。 随着数据的逐层抽取,很可能最终导致系统内的数据间形成了错综复杂的网状结构,如图1.1所示,人们形象地称为“蜘蛛网”。一个大型的公司每天进行上万次的数据抽取很普遍。这种演变不是人为制造的,而是自然演变的结果。企业的规模越大,“蜘蛛网”问题就越严重。 1.1.1 蜘蛛网问题(2)6 网上的任意两个节点的数据可能归根结底是从一个原始库中抽取出来的,但其数据没有统一的时间基准,因而错综复杂的抽取与访问将产生很多问题,主要
4、有以下几个方面。1.1.1 蜘蛛网问题(3)7 1. 数据分析的结果缺乏可靠性数据分析的结果缺乏可靠性 图1.2中展示了某企业的市场部和计划部对项目I是否具有市场前景的分析过程和结果。市场部认为“项目I的市场前景很好”,而计划部却得到截然相反的结果-“项目I没有市场前景”。作为企业的最终决策者,将如何根据这样的结论进行决策呢? 为什么分析同一个企业数据库中的数据,却得到截然相反的结论呢? 首先,两部门可能抽取数据的内容不同。比如,市场部抽取的是项目I在大客户中的应用情况,而计划部抽取的是项目I在普通客户中的应用情况。 1.1.1 蜘蛛网问题(4)8 其次,可能两部门抽取数据的时间不同。如市场部
5、在星期日晚上提取分析所需的数据,而计划部在星期三下午就抽取了数据。有任何理由相信对某一天抽取的数据样本进行分析与对另一天抽取的数据样本进行的分析可能相同吗?当然不能!企业内的数据总是在变的。 再次,引用外部信息的不同。分析项目的发展趋势常常需要引入企业外部的信息,比如报刊信息、国家的政策等。市场部门引用的外部信息来源可能与计划部门不同,而外部信息自然是仁者见仁,智者见智,这也可能是导致最终分析结果不同的原因。 最后,分析程序的差异。市场部门使用的分析程序可能与计划部门不同,分析的内容和指标也可能不同。1.1.1 蜘蛛网问题(5)9 1.1.1 蜘蛛网问题(6)10 2. 数据处理的效率很低数据
6、处理的效率很低 数据分析的结果缺乏可靠性并不是蜘蛛网问题中唯一的主要问题。在一个大型企业中,不同级别的数据库可能使用不同类型的数据库系统,对于拥有巨型数据量的企业级数据库可能使用IBM DB2,而对于部门级和个人级的中小型数据库可能使用SQL Server。各种数据库的开发工具和开发环境不同,当需要在整个企业范围内查询数据时,数据处理的低效率将是不容忽视的。 如果一个大型企业的决策领导需要一份关于公司整体运营情况的报表,通常需要动用大量的人力和物力才能达到。首先,定位报表需要的数据,即确定报表涉及的内容分布在哪个数据库的哪个位置,然后调动各个部门的程序员/分析员对应用进行分析、设计和编码。 1
7、.1.1 蜘蛛网问题(7)11 由于数据分散在各个数据库中,因此需要编写的程序很多。由于企业中使用的数据库类型很多,因此可能需要使用多种技术来实现。可见,面对企业中存在的蜘蛛网现象,为产生一份关于公司整体运营情况的报表,将动用大量的人力、物力和时间才能完成。 如果低效率的过程是一次性的,那么为生成报表花费大量的资源也是可取的。换句话说,如果生成第一份企业报表需要大量资源,生成所有后继报表可以建立在第一份企业报表基础之上,那么不妨为生成第一份报表付出一些代价。但是事实并非如此。 除非事先知道未来的企业报表需求,并且除非这些需求影响到第一张报表的建造,每个新的企业报表总是要花费同前面差不多的代价。
8、 因此,数据处理的低效率是蜘蛛网问题所面临的又一个问题。1.1.1 蜘蛛网问题(8)123. 难以将数据转化成信息难以将数据转化成信息 除了数据处理效率和数据可信度的问题之外,“蜘蛛网”式的结构还难以将数据转化成信息。比如,某电信公司要想分析某个大客户今年的情况和过去3年有什么不同?大客户的情况可能包括呼叫行为、话费情况、交费情况、咨询问题等。因此要想比较完整地回答这个问题,实际上需要将客户多方面的数据综合成信息。但“蜘蛛网”式的结构中数据缺乏集成性,因此,对综合信息需求的支持确实是不充分的。 另外,每个数据库由于其数据量和业务处理的需求不同,对历史数据的存储时间也不同,因此在蜘蛛网环境中的系
9、统难以提供完整的历史数据。如,记录客户呼叫行为的数据库通常只保留最近3个月的呼叫话单,财务数据库可能保留客户今年的交费情况,客户咨询数据库可能只保留客户2年内的咨询信息,于是,从这些数据中提取出完整的信息是不可能的。1.1.1 蜘蛛网问题(9)13 数据库系统作为数据管理手段,主要用于事务处理。在这些数据库中已经保存了大量的日常业务数据。传统的DSS(Decision Support System,决策支持系统)一般是直接建立在这种事务处理环境上的。数据库技术一直力图使自己能胜任从事务处理、批处理到分析处理的各种类型的信息处理任务。尽管数据库在事务处理方面的应用获得了巨大的成功,但它对分析处理
10、的支持一直不能令人满意,这也正是产生“蜘蛛网”问题的原因之所在。因此,要解决“蜘蛛网”问题,必须将用于事务处理的数据环境和用于分析处理的数据环境分离开。 这样,数据处理被分为事务型处理和分析型处理两大类。事务型处理以传统的数据库为中心进行企业的日常业务处理。比如电信部门的计费数据库用于记录客户的通信消费情况,银行的数据库用于记录客户的帐号、密码、存入和支出等一系列业务行为。 1.1.2 事务处理和分析处理数据环境的分离(1)14 分析型处理以数据仓库为中心分析数据背后的关联和规律,为企业的决策提供可靠有效的依据。比如,通过对超市近期数据进行分析可以发现近期畅销的产品,从而为公司的采购部门提供指
11、导信息。 事务处理的使用人员通常是企业的具体操作人员,处理的数据通常是企业业务的细节信息,其目标是实现企业的业务运营;而分析处理的使用人员通常是企业的中高层的管理者,或者是从事数据分析的工程师。决策分析数据环境包含的信息往往是企业的宏观信息而非具体的细节,其目的是为企业的决策者提供信息支持,并最终指导企业的商务活动。事务处理和信息分析数据环境的划分如图1.3所示。 事务处理和信息分析数据环境的分离,划清了数据处理的分析型环境与事务型环境之间的界限,从而由原来以单一数据库为中心的数据环境发展为以数据库为中心的事务处理系统和以数据仓库为基础的分析处理系统。企业的生产环境,也由以数据库为中心的环境发
12、展为以数据库和数据仓库为中心的环境。 1.1.2 事务处理和分析处理数据环境的分离(2)15 1.1.2 事务处理和分析处理数据环境的分离(3)16 综上所述,在事务处理环境中直接构建分析处理应用是不合适的,要提高分析和决策的效率和有效性,分析型处理及其数据必须与操作型处理及其数据相分离。必须把分析型数据从事务处理环境中提取出来,按照DSS处理的需要进行重新组织,建立单独的分析处理环境,数据仓库正是为了构建这种新的分析处理环境而出现的一种数据存储和组织技术。 目前,数据仓库技术正成为企业信息集成和辅助决策应用的关键技术之一。当然,数据仓库的主要驱动力并不是过去的缺点和问题,而是市场商业经营行为
13、的改变,市场竞争要求捕获和分析事务级的业务数据。 1.1.2 事务处理和分析处理数据环境的分离(4)17第一章 目录1.1 从数据库到数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结18 1.2 什么是数据仓库 20世纪80年代中期,“数据仓库”这个名词首次出现在号称“数据仓库之父”W.H.Inmon的Building Data Warehouse一书中,在该书中,W.H.Inmon把数据仓库定义为“一个面向主题的、集成的、稳定的、随时间变化的数据的集合,以用于支持管理决策过程。”(“A data wareho
14、use is a subject-oriented, integrated, non-volatile, time-variant collection of data in support of management decisions.”) 对于什么是数据仓库,还有许多不同的定义,如: “数据仓库是融合方法、技术和工具以在完整的平台上将数据提交给终端用户的一种手段”。 “数据仓库是对分布在企业内部各处的业务数据的整合、加工和分析的过程”。 “数据仓库是一种具有集成性、稳定性和提供决策支持的处理”。 “为查询和分析(不是事务处理)而设计的关系数据库” 在众多的数据仓库定义中,公认的仍然是W.
15、H.Inmon的定义,该定义指出了数据仓库面向主题、集成、稳定、随时间变化这4个最重要的特征。19 与传统数据库面向应用进行数据组织的特点相对应,数据仓库中的数据是面向主题进行组织的。什么是主题呢?首先,从信息管理的角度看,主题就是在一个较高的管理层次上对信主题就是在一个较高的管理层次上对信息系统的数据按照某一具体的管理对象进行综合、归类所形成息系统的数据按照某一具体的管理对象进行综合、归类所形成的分析对象的分析对象。从数据组织的角度看,主题是一些数据集合,这主题是一些数据集合,这些数据集合对分析对象作了比较完整的、一致的描述,这种描些数据集合对分析对象作了比较完整的、一致的描述,这种描述不仅
16、涉及到数据自身,而且涉及到数据之间的关系。述不仅涉及到数据自身,而且涉及到数据之间的关系。 面向主题的数据组织方式,就是在较高层次上对分析对象的数据的一个完整、一致的描述,能完整、统一地刻画各个分析对象所涉及的企业的各项数据,以及数据之间的联系。所谓较高层次是相对面向应用的数据组织方式而言的,是指按照主题进行数据组织的方式具有更高的数据抽象级别 1.2.1 面向主题(1)201.2.1 面向主题(2)21 例如在图1.4所示中,我们示例了一个电信企业的情况。该企业基于传统数据库已经建立有计费数据库、财务数据库、客户服务数据库等。其中,计费数据库记录了客户的消费情况,财务数据库记录了客户的缴费情
17、况,客户服务数据库记录了客户的咨询和投诉情况,这些数据库里都有与客户主题相关的数据。如果直接基于传统数据库系统进行“客户”和“收益”信息的分析,则需要访问多个数据库才能获得客户或收益各个侧面的信息(收益主题需从计费数据库和财务数据库中了解公司各项业务的收入情况;客户主题则要从计费数据库、财务数据库、客户服务数据库中获得客户消费、交费、咨询等全方位的信息。),这样将极大的影响系统处理的时间和效率,并且数据之间的不一致性和不同步等问题将影响决策的可靠性。而以“客户”和“收益”主题组织的数据仓库,将某个主题的全部相关数据集中于一个地方,这样决策者可以非常方便地在数据仓库中的一个位置检索包含某个主题的
18、所有数据。 1.2.1 面向主题(3)22 如图1.5所示显示了某电信企业的“客户主题”的数据存储,属于“客户”主题域的数据集合使用相同的公共键码“客户标识”来连接。从图1.5中可看到,数据在数据仓库中还是以数据表的形式进行存储,但是,数据的组织方式和建模方法已经同数据库系统有了较大的改变。1.2.1 面向主题(4)23 数据仓库中存储的数据一般从企业原来已建立的数据库系统中提取出来,但并不是原有数据的简单拷贝,而是经过了抽取、筛选、清理、综合等工作。这是因为: 1) 原有数据库系统记录的是每一项业务处理的流水帐,这些数据不适合于分析处理。在进入数据仓库之前必须经过综合、计算,同时抛弃一些分析
19、处理不需要的数据项,必要时还要增加一些可能涉及的外部数据。 2) 数据仓库每一个主题所对应的源数据在源分散数据库中有许多重复或不一致之处,必须将这些数据转换成全局统一的定义,消除不一致和错误之处,以保证数据的质量;显然,对不准确,甚至不正确的数据分析得出的结果将不能用于指导企业做出科学的决策。 3) 源数据加载到数据仓库后,还要根据决策分析的需要对这些数据进行概括、聚集处理。 事实上,决策支持系统需要集成的数据。全面而正确的数据是有效地分析和决策的首要前提,相关数据收集得越完整,得到的结果就越可靠。因此,对源数据的集成是数据仓库建设中最关键,也是最复杂的一步。 1.2.2 集成24 业务系统一
20、般只需要当前数据,在数据库中一般也只存储短期数据,因此在数据库系统中数据是不稳定的,它记录的是系统中数据变化的瞬态。 但对于决策分析而言,历史数据是相当重要的,许多分析方法必须以大量的历史数据为依托。没有大量历史数据的支持是难以进行企业的决策分析的,因此数据仓库中的数据大多表示过去某一时刻的数据,主要用于查询、分析,不像业务系统中的数据库那样,要经常进行修改、添加,除非数据仓库中的数据是错误的。 图1.6中形象地说明了数据仓库中数据的稳定性,可以看到数据仓库在数据存储方面是分批进行的,定期执行提取过程为数据仓库增加数据,这些数据一旦加入,一般不再从系统中删除。1.2.3 稳定性(1)251.2
21、.3 稳定性(2)26 1.2.4 随时间而变化 数据仓库中数据是批量载入的,是稳定的,这使得数据仓库中的数据总是拥有时间维度。从这个角度,数据仓库实际是记录了系统的各个瞬态,并通过将各个瞬态连接起来形成动画,从而在数据分析的时候再现系统运动的全过程。数据批量载入(提取)的周期实际上决定了动画间隔的时间,数据提取的周期短,则动画的速度快,图1.7示意了这种特点。27第一章 目录1.1 从数据库到数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结28 1.3 数据仓库与传统数据库的比较 1.3.1 两个系统的主要区
22、别(1) 传统数据库系统的主要任务是执行联机事务和查询处理。这种系统称为联机事务处理(OLTP)系统。它们涵盖了一个组织的大部分日常操作,如购买、库存、制造、银行、工资、注册、记帐等。另一方面,数据仓库系统在数据分析和决策支持方面提供服务。这种系统称为联机分析处理(OLAP)系统。 两个系统的主要区别概括如下: 数数据据内内容容:数据库系统管理当前数据。通常,这种数据太琐碎,难以用于决策。数据仓库系统管理大量历史的、存档的、归纳的、计算的数据,提供汇总和聚集机制,并在不同的粒度级别上存储和管理信息。这种特点使得系统容易用于“见多识广”的决策。29 数数据据目目标标:数据库系统是面向业务操作,用
23、于办事员、客户和信息技术专业人员的事务和查询处理。数据仓库是面向主题的,用于知识工人(包括经理、主管和分析人员)的决策分析。 数数据据特特性性:数据库系统存储的是当前数据,数据是动态变化的,按字段进行更新操作。数据仓库中数据是批量载入的、静态的,系统定期执行提取过程为数据仓库增加数据,这些数据一旦加入,一般不再从系统中删除。 数数据据结结构构:数据库系统采用面向应用的数据库设计,以高度结构化和复杂的形式组织数据,以适应复杂的事务操作计算的需求。数据仓库通常采用面向主题的星型或雪花数据组织模式(在4.3.2节讨论),以适应分析决策,数据结构简单。 1.3.1 两个系统的主要区别(2)30 两个系
24、统的其他区别包括使用频率、数据访问量、对响应时间的要求等。这些都概括在表1.1中。1.3.1 两个系统的主要区别(3)31 1.3.2 两个系统的查询支持不同 OLTP系统是为了快速回答简单查询,而不是为了存储分析趋势的历史数据而创建的。一般的,OLTP提供了大量的原始数据,这些数据不易被分析。 数据仓库需要回答更复杂的查询,而不仅仅是一些像“英国主要城市的商品平均销售价格是多少”之类的简单聚集数据查询。数据仓库需要回答的查询类型可以是简单的查询,也可以是高度复杂的,且还与终端用户使用的查询工具相关。 以下是某数据仓库支持的一些查询示例: 2008年第三季度,整个英格兰的总收入是多少? 200
25、7年英国每一类房产销售的总收入是多少? 2008年租借房产业务中每个城市哪个地域最受欢迎?与过去的两年相比有何不同? 每个分支机构本月的房产销售月收入是多少,并与刚过去的12个月相比较。 如果对于10万英镑以上的房产,法定价格上升3.5%而政府税收下降1.5%,对英国不同区域的销售会产生什么影响? 在英国主要城市中,哪种类型的房产销售价格高于平均房产销售价格?这与人口统计数据有何联系?321.3.3 两个系统数据组织模式示例比较(1)331.3.3 两个系统数据组织模式示例比较(2)34从上述实例,不难看出:1)在从面向应用到面向主题的转变过程中,丢弃了原来有的但不必要的、不适于分析的信息;2
26、)在原有的数据库模式中,有关商品的信息分散在各个子系统之中;面向主题的数据组织方式所强调的就是要形成关于主题一致的信息集合;3)不同主题之间有重叠内容。1.3.3 两个系统数据组织模式示例比较(3)35第一章 目录1.1 从数据库到数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结36 1.4 数据仓库的系统结构 1.4.1 三层数据仓库结构(1) 数据仓库的系统结构可以用图1.8来表示。由于数据库和数据仓库应用的出发点不同,数据仓库将独立于业务数据库系统,但是数据仓库又同业务数据库系统息息相关。37 1.4.1
27、 三层数据仓库结构(2)38 原则上,数据仓库的系统结构被划分为三层:数据仓库服务器、OLAP服务器和前端工具。 1) 底层是数据仓库服务器,它几乎总是一个关系数据库系统。数据仓库系统使用后端工具和实用程序从操作数据库和外部信息源加载和刷新它的数据,这些机制统称ETL (Extract/Transformation/Load)工具,它们具有数据抽取、数据清洗、数据转换、数据加载和数据刷新等功能。此外,这一层还包含一个元数据存储,它是关于数据仓库和数据仓库中数据的信息,关于元数据的进一步描述在1.4.2小节。 2) 中间层是OLAP服务器,其典型的实现有:()关系OLAP(ROLAP)模型,即扩
28、展的关系DBMS,它将多维数据上的操作映射为标准的关系操作;()多维OLAP(MOALP)模型,一种特殊的服务器,它直接实现多维数据操作。OLAP服务器将在4.4小节讨论。 3) 顶层是客户,它包括查询和报告工具、分析工具和/或数据挖掘工具(例如关联分析、分类分析、预测等)。 1.4.1 三层数据仓库结构(3)39 1.4.2 数据仓库中的关键名词(1) 下面详细讨论数据仓库中的一些关键名词。 1. ETL(Extract/Transformation/Load)数据抽取、转换、加载工具 ETL工具就是进行数据的抽取、转换和加载。具体来讲,ETL工具包括:数据提取(data extract)、
29、数据转换(data transform)、数据清洗(data cleaning)和数据加载(data loading)。 (1) 数据提取(Data Extract) 从数据仓库的角度来看,并不是业务数据库中的所有数据都是决策支持所必需的。通常,数据仓库按照分析的主题来组织数据,我们只需提取出系统分析必需的那一部分数据。例如,某超市确定以分析客户的购买行为为主题建立数据仓库,则我们只需将与客户购买行为相关的数据提取出来,而超市服务员工的数据就没有必要放进数据仓库。 现有的数据仓库产品几乎都提供各种关系型数据接口,提供提取引擎,从关系型数据中提取数据。40 (2) 数据转换(Data Trans
30、form) 由于业务系统可能使用不同的数据库厂商的产品,比如IBM DB2、Oracle、Informix、Sybase、 NCR Teradata、 SQL Server等,各种数据库产品提供的数据类型可能不同,因此,需要将不同格式的数据转换成统一的数据格式。如时间格式“年/月/日”,“月/日/年”、“日-月-年”的不一致问题等。 (3) 数据清洗(Data Clean) 由于企业常常为不同的应用对象建立不同的业务数据库,比如一个电信运营公司拥有计费数据库、财务数据库、客服数据库、客户投诉数据库等业务系统,这些业务系统中可能包含重复的信息,比如客服数据库中的部分客户基本信息也在客户投诉数据库
31、中存在,由于不同的数据库可能使用不同数据库公司的产品,不同的业务系统可能由不同的软件开发商提供,这使得各个业务数据库中的数据可能存在不一致现象。再者,由于数据被冗余地存放在不同的数据库中,如果不同数据库间的数据刷新不是实时的,则可能出现数据不同步的情况。 1.4.2 数据仓库中的关键名词(2)41 对于决策支持系统来说,最重要的是决策的准确性,因此确保数据仓库中数据的准确性是极其重要的。从多个业务系统中获取数据时,必须对数据进行必要的清洗,从而得到准确的数据。 所谓“清洗”就是将错误的、不一致的数据在进入数据仓库之前予以更正或删除,以免影响决策支持系统决策的正确性。 (4) 数据加载(Data
32、 Load) 数据加载部件负责将数据按照物理数据模型定义的表结构装入数据仓库,包括清空数据域、填充空格、有效性检查等步骤。 现在ETL工具的功能越来越强。它具有支持数据的“净化提炼”功能、数据加工功能和自动运行功能(包括处理过程的监控、调度和外部批处理作业的启动等),支持多种数据源,能自动实现数据抽取。所谓数据的“净化提炼”就是对从多个不同业务数据库所抽取的数据,进行数据项名称的统一、位数的统一、编码的统一和形式的统一,消除重复数据。 1.4.2 数据仓库中的关键名词(3)422. 元数据(MetaData) “什么是元数据?”元数据元数据是描述数据的数据。在数据仓库中,元数据是定义数据仓库对
33、象的数据。元数据包括相应数据仓库的数据名和定义、数据提取操作时被提取数据的时间和地点以及数据清理或数据集成过程添加的字段等。它提供了有关数据的环境,用于构造、维持、管理、和使用数据仓库,在数据仓库中尤为重要。 元数据通常包括: 数数据据仓仓库库结结构构的的描描述述信信息息,包括仓库模式、视图、维、层次结构和导出数据的定义,以及数据集市的位置和内容。 操操作作元元数数据据,包括数据血统信息(来自何处以及如何转换的),数据流通信息(主动的、档案的或净化的)以及监视信息(仓库使用统计、错误报告、审计跟踪)。 汇汇总总用用的的算算法法,包括度量与维定义算法,数据粒度、分割、主题域、聚集、汇总、预定义查
34、询与报告的算法。 1.4.2 数据仓库中的关键名词(4)43 由操作环境到数据仓库的映射信息由操作环境到数据仓库的映射信息,包括源数据库和它们的内容,ETL程序描述,数据分割、提取、清理和转换的规则和缺省,数据刷新和裁减的规则以及数据安全信息(用户授权和存取控制)。 关于系统性能的数据信息关于系统性能的数据信息,除刷新、更新和复制周期的定时和调度的规则外,还包括改善数据存取和检索性能的索引和配置。 业务元数据业务元数据,包括商务术语和定义,数据拥有者信息和收费策略。 数据仓库包括不同级别的综合,元数据是其中一种类型。其它类型包括当前的细节数据(几乎总是在磁盘上),老的细节数据(通常在三级存储器
35、上),稍加综合的数据,以及高度综合的数据(可以存入仓库也可以不存入)。 1.4.2 数据仓库中的关键名词(5)44 与数据仓库中的其它数据相比,元数据扮演很不相同的角色,并且由于种种原因,也是重要的角色。例如元数据用作目录,帮助决策支持系统分析者对数据仓库的内容定位;当数据由操作环境到数据仓库环境转换时,作为数据映射指南;对于用在当前细节数据与稍加综合的数据之间以及稍加综合的数据与高度综合的数据之间的汇总算法,也作为指南。 元数据应当持久存放和管理(即存放在磁盘上)。通常,数据仓库将建立专用的元数据库来存放和管理元数据。3. 数据集市(Data Market) 数据仓库中存放的是整个企业的信息
36、,并且数据是按照不同主题来组织的。比如市场发展规律的分析主题主要由市场部门的人员使用,我们可以在逻辑上或者物理上将这部分数据分离出来,当市场部门人员需要信息时,不需要到数据仓库的巨量数据中检索,而只需在相应的部门数据上进行分析,因此从效率和处理速度的角度出发,这种划分是合算的。 1.4.2 数据仓库中的关键名词(6)45 我们把这种面向企业中的某个部门(主题)而在逻辑上或物理上划分出来的数据仓库中的数据子集称为数数据据集集市市。换句话说,数据集市包含了用于特殊目的数据仓库的部分数据。 数据仓库面向整个企业,而数据集市则是面向企业中的某个部门。典型示例是销售部门、库存和发货部门、财务部门和高级管
37、理部门等的数据集市。数据仓库中存放了企业的整体信息,而数据集市只存放了某个主题需要的信息,其目的是减少数据处理量,使信息的利用更快捷、灵活。 通常,数据集市可以在低价格的部门服务器上实现。实现数据集市的周期一般是数以周计,而不是数以月计或数以年计。然而,如果它们的规划不是企业范围的,从长远讲,可能涉及很复杂的集成。 根据数据的来源不同,数据集市分为独立的和依赖的两类。在独独立立的数据集市中,数据来自一个或多个操作的系统或外部信息提供者,或者来自一个特定的部门或地域局部产生的数据。依赖依赖的数据集市中的数据直接来自企业数据仓库。 1.4.2 数据仓库中的关键名词(7)464. OLAP 数据仓库
38、是管理决策分析的基础,要有效地利用数据仓库的信息资源,必须要有强大的工具对数据仓库的信息进行分析决策。OLAP(On-line Analytical Processing,在在线线分分析析处处理理或或联联机机分分析析处处理理)就是一个应用广泛的数据仓库使用技术。它可以根据分析人员的要求,迅速灵活地对大量的数据进行复杂的查询处理,并以直观的容易理解的形式将查询结果提供给各种决策人员,使他们能够迅速准确地掌握企业的运营情况,了解市场的需求。这就是说,OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地查询,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决
39、策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是“维”这个概念。 维(dimension)是人们观察数据的特定角度。例如,一个企业在考虑产品的销售情况时,通常从时间、地区和产品的不同角度来深入观察产品的销售情况。这里的时间、地区和产品就是维。而这些维的不同组合和所考察的度量指标构成的多维数组则是OLAP分析的基础,可形式化表示为(维1,维2,维n,度量指标),如(地区、时间、产品、销售额)。 1.4.2 数据仓库中的关键名词(8)47 “维”一般包含着层次关系,这种层次关系有时会相当复杂。通过把一个实体的多项重要的属性定义为多个维,使用户能从不同维对数据进行分析比较。因此OLAP
40、也可以说是多维数据分析工具的集合。 多维分析是指对以多维形式组织起来的数据采取切片(Slice)、切块(Dice)、钻取(Drill-down和Roll-up)、旋转(Pivot)等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入理解包含在数据中的信息。 切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。 1.4.2 数据仓库中的关键名词(9)48 钻取是改变维的层次,变换分析的粒度。它包括向上探取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节
41、数据概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。 旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。 根据数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。在数据仓库应用中,OLAP应用一般是数据仓库应用的前端工具,同时OLAP工具还可以同数据挖掘工具、统计分析工具配合使用,增强决策分析功能 1.4.2 数据仓库中的关键名词(10)49第一章 目录1.1 从数据库到
42、数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结501.5.1 数据仓库的数据组织结构(1) 在数据仓库中,数据一般分成4个级别:高度综合级、轻度综合级、当前细节级和早期细节级。51 一个典型的数据仓库的数据组织如图1.9所示1.5.1 数据仓库的数据组织结构(2)52 源数据(早期细节级数据)经过综合后,首先进入当前细节级,然后根据应用的需求,通过预运算将数据聚合成轻度综合和高度综合级。由此可见,数据仓库中存储着不同综合级别的数据,一般称之为“数据粒度”。粒度越大,表示细节程度越低,综合程度越高。比如,在电信
43、公司中的电话呼叫数据中记录了每个用户的每次呼叫。进行OLAP分析时,常常需要不同层次的数据粒度,因此可以通过预运算将数据综合成每个用户每“天”的通话次数,还可以进一步聚合成每个用户每“月”的通话次数(图1.9中右列所示)。 在数据仓库中,轻度和高度综合级别的数据一般是由细节数据聚合而来,但需要说明的是轻度和高度是相对的概念,而没有绝对的界限,并且在数据仓库中数据的综合程度常常有很多的级别。1.5.1 数据仓库的数据组织结构(3)53 随着时间的推移,系统中的一些细节数据已经“老化”了,很少会被用户使用,此时为了节省系统的存储空间,可以将这些老化的细节数据导出到备份设备上。实际应用中,综合数据也
44、可能被导出系统。比如企业的管理者认为企业的决策只同企业近15年来的运营数据有关,则15年之前的综合数据也可以导出。对于高度综合的数据,由于其数据量已经很少,所以一般可以不考虑它们的导出问题。 在数据仓库中,处理提取和综合后的数据还包含非常重要的元数据,它描述的是提取和综合后的数据的组织方式,属于数据的一种综合类型,我们在数据仓库的体系结构(1.4节)中已经介绍了元数据。1.5.1 数据仓库的数据组织结构(4)541. 数据粒度 数据粒度是数据仓库中极其重要的概念。粒度可以分为两种形式,一种是对数据仓库中的数据的综合程度高低的一个度量,它既影响数据仓库中数据量的多少,也影响数据仓库中数据的用途。
45、在数据仓库中,多重的数据粒度是必不可少。由于数据仓库最主要的目的是反映企业整体信息和DSS分析,因而决大多数查询都是基于一定程度的综合数据之上,只有极少数查询涉及到细节。所以,应该将大粒度数据存储于快速设备(如磁盘)上,而将细节数据定期导出到低速设备(如磁带)上。 粒度的第二种形式是指抽样率,即以一定的抽样率对数据仓库中的数据进行抽样后得到一个样本数据库。这种样本数据库中的粒度不是根据综合程度的不同来划分的,而是由抽样率的高低来划分,抽样粒度不同的样本数据库可以具有相同的数据综合程度。 在数据仓库环境中粒度之所以是一个极其重要的概念,是因为它深深地影响存放在数据仓库中的数据量的大小,同时影响数
46、据仓库所能回答的查询类型,在数据仓库中数据量大小与查询的详细程度之间要做出权衡。 1.5.2 数据粒度与数据分割(1)552. 数据分割 数据分割是数据仓库中又一重要概念。所谓数据分割是指将数据分散到各自的物理单元中以便能够独立处理,提高数据处理的效率。数据分割没有固定的标准,分割的方法和粒度应当根据实际情况来确定。分割方法常常可以选择时间、地点、业务领域来划分,也可以是其组合。按照时间进行分割符合数据仓库数据随时间变化的特点,并且分割后数据分布比较均匀,所以是最常用的分割方法。 不过需注意的是:在数据仓库中,围绕分割问题的关键并不是该不该对数据进行分割,而是如何分割。这也是为什么有人说,如果
47、粒度和分割都做得很好的话,几乎数据仓库设计和实现的所有其他问题都容易解决。但是,假如粒度处理不当,并且分割也没有认真地设计与实现,将严重影响其他方面的设计效果。 1.5.2 数据粒度与数据分割(2)56 分割的一个简单例子: 如表1.2所示,分割是按照时间和业务领域的组合来划分的。 1.5.2 数据粒度与数据分割(3)57 1.5.3 数据仓库的数据组织形式(1) 在数据仓库发展过程中,出现了多种不同的数据组织形式:1. 简单堆积文件 简单堆积文件就是将每天由业务数据库提取并处理后的数据逐天存储起来,如图1.10所示。还有一种形式被称为简单直接文件,它同简单堆积文件非常类似,只是按照一定的时间
48、间隔对业务数据库进行快照并存储,但是时间间隔不一定是每天。582. 定期综合文件 在定期综合文件这种方式中,数据存储单位被分成日、周、月、季、年等多个级别。首先数据被逐一添加到每天的数据集合中,当一个星期过去了,每天数据被综合成周数据,依此类推,周数据被综合成月数据。 定期综合文件的组织方式使得数据量比简单堆积文件方式大大减少,但是由于数据被进行了综合,使得数据的细节在综合中丢失。因此,定期综合文件的形式是牺牲数据的细节信息换取数据量级的减少。 3. 连续文件 定期综合文件其数据量级小时丢失了数据细节,简单堆积文件保留细节但数据量级又很大,是否可以综合两者的优点呢?答案是肯定的。 1.5.3
49、数据仓库的数据组织形式(2)59 在简单堆积文件中,每天的数据表中有许多雷同的信息,如图1.11所示的某商场2007年1月和2007年2月的两张采购表,其中“钢笔”和“水杯”在两个表都出现了。“上海”产的“钢笔”既在2007/1购买,又在2007/2购买。如果能够用一条记录将两条记录所包含的信息记录下来,则既能保留细节信息,又能大大减少数据量。 1.5.3 数据仓库的数据组织形式(3)60 图1.12中显示了对两张表使用连续文件的形式进行存储的结果。对于两张表中相同的项“钢笔”,只需在时间列上说明购买时间是“2007/12007/2”,对于两表不同的表项分别记录 。 1.5.3 数据仓库的数据
50、组织形式(4)61 随着时间的推移,如果又有新的数据表加入,则可以使用连续文件和新的数据表进行类似的处理,以达到“两全其美”的目的。但是,应当指出:连续文件增加的“时间”列也会为查询带来一定的不便。一个系统某些性能的提高,总是以牺牲其他性能为代价的。 1.5.3 数据仓库的数据组织形式(5)621.5.4 数据仓库的数据追加和清理(1)1.数据追加 数据的组织结构和数据的组织形式解决的是数据仓库数据的存储问题。而数据追加解决的是数据仓库初始数据加载后,如何再向数据仓库输入数据的问题。 如果业务数据库中的数据没有发生变化,则不需要对数据仓库进行追加,因此,数据追加实际上只增加在上次数据输入后业务
51、数据库中变化了的数据。要完成数据追加的工作,最关键的是“捕获”数据变化,并将数据的变化记录下来。63 (1)时标法 “时标法”的思想是为数据记录增加一个时间标记字段。当数据在上次数据导入完成后发生了变化,则修改这条记录的时间标记。 但是,在业务数据库系统中,通常没有专门的时间标记字段。数据库应用的设计者主要是从实现事务处理的功能角度来考虑问题,因此,数据库应用的设计者通常不会增加时间标记字段,因为该列对于事务处理系统来说是不必要的。由于这些原因,时标法虽然简单,但很难得到实际应用。1.5.4 数据仓库的数据追加和清理(2)64(2)前后快照比较法 其思想很简单:将上次执行完数据追加任务的当前业
52、务数据库快照记录下来,同要执行新的数据追加任务前的原先业务数据库快照进行比较,比较这两次快照的不同,来生成追加的内容。 这种方法简单,但是数据库的数量级很大时,进行这样全数据库的比较将会耗费大量的系统资源和时间,所以这种方法并不实用。(3)DELTA文件法 “DELTA文件法”是一种从应用程序来感知数据变化的方法。其基本思想是;数据的变化是由业务数据库应用程序引发的,因此业务数据库应用程序应当知道它修改了哪些数据,应用程序可以将它执行成功的修改操作记录下来,形成DELTA文件作为追加的内容。 业务数据库应用程序主要是为了完成事务处理而设计的,要使所有的应用程序都支持DELTA文件的功能在实际的
53、工程应用中很难,因此,这种方法也没有得到实用化。 1.5.4 数据仓库的数据追加和清理(3)65(4)日志文件法 DELTA文件法从能够感知业务数据变化的应用程序来生成追加文件,这种想法是很巧妙,但是它没有考虑到应用程序常常是由不同的软件开发商开发的,因此很难对其进行统一的规范。 我们知道,各个应用程序都是通过同数据库服务器进程通信来实现其数据访问功能,最终数据的访问和处理工作是由数据库服务器来承担,因此数据库服务器能够感知数据的变化。如果数据库开启了系统日志,数据库服务器将会把它所执行的所有操作详细地记录下来。我们可以通过分析数据库系统日志来获取数据变化的情况,得到追加内容。 虽然日志文件法
54、需要对日志本身进行比较复杂的分析,但是由于它能够极大程度地减少工作量,所以得到了广泛的应用。 1.5.4 数据仓库的数据追加和清理(4)662.数据清理 数据仓库的数据清理与传统数据库系统中数据清理的含义有区别。在传统数据库系统中,数据清理意味着将数据删除。数据仓库系统中数据清理并不是简单地删除,而是从细化级别的数据逐渐上升为高度综合级的数据,直到数据已经不再具备任何意义时被清除的过程。事实上,数据仓库中的数据清理包括: 1)数据从操作型环境进入分析型环境; 2)数据从细节数据逐渐转换为综合数据; 3)数据从高速磁盘中转移到低速存储介质上; 4)数据失去实际意义,最终被清除。 这个过程实际上也
55、是数据在数据仓库中的生命周期。 1.5.4 数据仓库的数据追加和清理(5)67第一章 目录1.1 从数据库到数据仓库1.2 什么是数据仓库1.3 数据仓库与传统数据库的比较1.4 数据仓库的系统结构1.5 数据仓库的数据组织1.6 本章小结681.6 本章小结 本章以“蜘蛛网”问题为导引,介绍了从数据库到数据仓库的演变过程。在给出数据仓库的定义后,详细阐述数据仓库面向主题、数据集成、数据稳定、数据随时间变化的基本特征。讨论传统数据库与数据仓库的区别。介绍数据仓库的体系结构及数据仓库中ETL、元数据、OLAP等一系列重要的概念。最后介绍了数据仓库的数据组织,以及数据粒度、数据分割、数据追加等概念
56、。69End of Chapter 1(第14讲)考场作文开拓文路能力分解层次(网友来稿)江苏省镇江中学 陈乃香说明:本系列稿共24讲,20XX年1月6日开始在资源上连载【要义解说】文章主旨确立以后,就应该恰当地分解层次,使几个层次构成一个有机的整体,形成一篇完整的文章。如何分解层次主要取决于表现主旨的需要。【策略解读】一般说来,记人叙事的文章常按时间顺序分解层次,写景状物的文章常按时间顺序、空间顺序分解层次;说明文根据说明对象的特点,可按时间顺序、空间顺序或逻辑顺序分解层次;议论文主要根据“提出问题分析问题解决问题”顺序来分解层次。当然,分解层次不是一层不变的固定模式,而应该富于变化。文章的
57、层次,也常常有些外在的形式:1小标题式。即围绕话题把一篇文章划分为几个相对独立的部分,再给它们加上一个简洁、恰当的小标题。如世界改变了模样四个小标题:寿命变“长”了、世界变“小”了、劳动变“轻”了、文明变“绿”了。 2序号式。序号式作文与小标题作文有相同的特点。序号可以是“一、二、三”,可以是“A、B、C”,也可以是“甲、乙、丙”从全文看,序号式干净、明快;但从题目上看,却看不出文章内容,只是标明了层次与部分。有时序号式作文,也适用于叙述性文章,为故事情节的展开,提供了明晰的层次。 3总分式。如高考佳作人生也是一张答卷。开头:“人生就是一张答卷。它上面有选择题、填空题、判断题和问答题,但它又不
58、同于一般的答卷。一般的答卷用手来书写,人生的答卷却要用行动来书写。”主体部分每段首句分别为:选择题是对人生进行正确的取舍,填空题是充实自己的人生,判断题是表明自己的人生态度,问答题是考验自己解决问题的能力。这份“试卷”设计得合理而且实在,每个人的人生都是不同的,这就意味着这份人生试卷的“答案是丰富多彩的”。分解层次,应追求作文美学的三个价值取向:一要匀称美。什么材料在前,什么材料在后,要合理安排;什么材料详写,什么材料略写,要通盘考虑。自然段是构成文章的基本单位,恰当划分自然段,自然就成为分解层次的基本要求。该分段处就分段,不要老是开头、正文、结尾“三段式”,这种老套的层次显得呆板。二要波澜美
59、。文章内容应该有张有弛,有起有伏,如波如澜。只有这样才能使文章起伏错落,一波三折,吸引读者。三要圆合美。文章的开头与结尾要遥相照应,把开头描写的事物或提出的问题,在结尾处用各种方式加以深化或回答,给人首尾圆合的感觉。【例文解剖】 话题:忙忙,不亦乐乎 忙,是人生中一个个步骤,每个人所忙的事务不同,但是不能是碌碌无为地白忙,要忙就忙得精彩,忙得不亦乐乎。 忙是问号。忙看似简单,但其中却大有学问。忙是人生中不可缺少的一部分,但是怎么才能忙出精彩,忙得不亦乐乎,却并不简单。人生如同一张地图,我们一直在自己的地图上行走,时不时我们眼前就出现一个十字路口,我们该向哪儿,面对那纵轴横轴相交的十字路口,我们
60、该怎样选择?不急,静下心来分析一下,选择适合自己的坐标轴才是最重要的。忙就是如此,选择自己该忙的才能忙得有意义。忙是问号,这个问号一直提醒我们要忙得有意义,忙得不亦乐乎。 忙是省略号。四季在有规律地进行着冷暖交替,大自然就一直按照这样的规律不停地忙,人们亦如此。为自己找一个目标,为目标而不停地忙,让这种忙一直忙下去。当目标已达成,那么再找一个目标,继续这样忙,就像省略号一样,毫无休止地忙下去,翻开历史的长卷,我们看到牛顿在忙着他的实验;爱迪生在忙着思考;徐霞客在忙着记载游玩;李时珍在忙着编写本草纲目。再看那位以笔为刀枪的充满着朝气与力量的文学泰斗鲁迅,他正忙着用他独有的刀和枪在不停地奋斗。忙是
61、省略号,确定了一个目标那么就一直忙下去吧!这样的忙一定会忙出生命灵动的色彩。 忙是惊叹号。世界上的人都在忙着自己的事,大自然亦如此,小蜜蜂在忙,以蜂蜜为回报。那么人呢?居里夫人的忙,以放射性元素的发现而得到了圆满的休止符;爱因斯坦在忙,以相对论的问世而画上了惊叹号;李白的忙,以那豪放的诗歌而有了很大的成功;张衡的忙,因为那地动仪的问世而让世人仰慕。每个人都应该有效率的忙,而不是整天碌碌无为地白忙。人生是有限的、短暂的,因此,每个人都应该在有限的生命里忙出属于他的惊叹号;都应在有限的生命里忙出他的人生精彩篇章。 忙是万物、世界、人生中都不可缺少的一部分。作为这世上最高级动物的我们,我们在忙什么呢
62、?我们要忙得有意义,有价值,我们要忙出属于我们的精彩。我们的忙不能永远是问号,而应是省略号和感叹号。忙就要忙得精彩,忙得不亦乐乎。 解剖:本文将生活中的一句口头禅“忙得不亦乐乎”机智翻新,拟作标题,亮出一道美丽的风景。并据此展开述说,让人神清气爽。文章开篇扣题,亮出观点:忙,是人生中一个个步骤,不能碌碌无为地白忙,要忙就忙得精彩,忙得不亦乐乎。然后,作者分别用问号、省略号、惊叹号巧妙设喻,抓住这三种标点符号的特征,摆实事,讲道理,入情入理,入理入心。深刻地阐明人生忙,忙要像问号一样,经常问问自己,不能盲目,不能瞎忙,要忙得有意义;人生如四季一样是有规律的,要选准目标,像省略号一样,毫无休止地忙
63、下去,忙出生命灵动的色彩;而人生有限,每个人都应有限的生命里忙出属于他的惊叹号,忙出人生精彩的篇章。结尾,作者用一个段落总结全文,照应开头,照应题目,有力收束。【精题解析】阅读下面的材料,根据要求作文。在一处地势十分险恶的峡谷,谷底奔腾着咆哮的急流,峡谷间有一座索桥,几根光秃秃、晃悠悠的铁索横在峡谷间,它是通过这个地方的唯一路径,这里经常有人因为失足而跌入深谷。有一天,有三个人来到了这里。一个聋子,一个瞎子,还有一个健康的人。聋子看看这座桥,很害怕,但是他听不到急流的声音,他用眼睛看着脚下步伐,很顺利地过去了。瞎子不知峡谷的险恶,他心平气和,十分稳妥地通过了。第三个人是健康人,一直犹豫不敢走这索桥,可是又没有其他路可走。于是,他十分紧张地硬着头皮走上索桥,到了桥中央,他看到脚下万丈深渊,云雾升腾,听到谷底急流咆哮,早已两腿颤颤,面如土色,一不小心跌下桥去。请就“不要把困难看得太明白”为话题写一篇文章。注意所写内容必须在话题范围之内。试题引用的材料,考生在文章中可用也可不用。立意自定。文体自选。题目自拟。不少于800字。不得抄袭。解析:有时候,把困难看得太明白,分析得太透彻,反而会被困难吓倒以至于阻拦我们前进的脚步。倒是那些未把困难完全看清楚而勇往直前的人,更容易达到终点。 作者邮箱: 13952865227谢谢观赏谢谢观赏