何谓数据仓库?一种面向分析的环境;一种把相关的各种数据转换成有商业价值的信息的技术。1、从数据库到数据仓库数据库系统能够很好的用于事务处理,但它对分析处理的支持一直不能令人满意。特别是当以业务处理为主的联机事务处理(OLTP)应用和以分析处理为主的DSS应用共存于一个数据库系统时,就会产生许多问题。例如,事务处理应用一般需要的是当前数据,主要考虑较短的响应时间;而分析处理应用需要是历史的、综合的、集成的数据,它的分析处理过程可能持续几个小时,从而消耗大量的系统资源。人们逐渐认识到直接用事务处理环境来支持DSS是行不通的。要提高分析和决策的有效性,分析型处理及其数据必须与操作型处理及其数据分离。必须把分析型数据从事务处理环境中提取出来,按照DSS处理的需要进行重新组织,建立单独的分析处理环境。数据仓库技术正是为了构建这种新的分析处理环境而出现的一种数据存储和组织技术。操作型数据分析型数据细节的综合的,或提炼的在存取瞬间是准确的代表过去的数据可更新不更新操作需求事先可知道操作需求事先不知道生命周期符合SDLC完全不同的生命周期对性能要求高对性能要求宽松一个时刻操作一个单元一个时刻操作一个集合事物驱动分析驱动面向应用面向分析一次操作数据量小一次操作数据量大支持日常操作支持管理需求数据仓库与决策支持系统(DSS)用户在进行决策制定时需要得到企业各方面的信息,因此用户一般首先根据各个业务部门数据库中的数据,创建数据仓库,存储各种历史信息和汇总信息。对数据仓库的进一步应用由功能强大的分析工具来实现。现在主要有三类分析工具可用于决策支持。第一类能够支持涉及分组和聚集查询,并能够对各种复杂的布尔条件、统计函数和时间序列分析提供支持的系统。主要由上述查询组成的应用称为联机分析处理,即OLAP。在支持OLAP查询的系统中,数据最好看成是一个多维数组。第二类系统仍为支持传统SQL查询的DBMS,但为了有效地执行OLAP查询而进行了特殊的设计。这些系统可以看作是为决策支持应用进行了优化的关系数据库系统。许多关系数据库厂商对他们的产品进行了扩展,并且随着时间的推移,专门的OLAP系统和支持决策支持的关系数据库系统之间的差别将逐渐取消。第三类的分析工具可用于在大量的数据集合中,找到有意义的数据趋势或者模式,而不是上面提到的复杂数据查询。在数据分析过程中,尽管分析者能够判定得到的数据模式是否有意义,但是生成查询来得到有意义的模式还是很困难的。例如,分析者查看信用卡使用记录,希望从中找出不正常的信用卡使用行为,以表明是被滥用的丢失的信用卡;商人希望通过查看客户记录找出潜在的客户来提高收益。许多应用涉及的数据量很大,很难用人工分析或者传统的统计分析方法进行分析,数据挖掘的目的就是对这种大量数据的分析提供支持。2、数据仓库的定义及特征数据仓库理论的创始人W.H.Inmon在其《BuildingtheDataWarehouse》一书中,给出了数据仓库的四个基本特征:面向主题,数据是集成的,数据是不可更新的,数据是随时间不断变化的。采购子系统:订单(订单号,供应商号,商品号,类别,单价。数量,总金额,日期,…)供应商(供应商号,供应商名,地址,电话,…)销售子系统:客户(客户号,姓名,地址,电话,…)销售(客户号,商品号,数量,单价,日期,…)库存子系统:进库单(编号,商品号,数量,单价,日期,…)出库单(编号,商品号,数量,单价,日期,…)库存(商品号,库房号,类别,单价,库存数量,总金额,日期,…)商品固有信息:商品号,类别,单价,颜色,…商品采购信息:商品号,类别,供应商号,供应日期,单价,数量,…商品销售信息:商品号,客户号,数量,单价,销售日期,…商品库存信息:商品号,库房号,库存数量,日期,…)商品主题域:采购子系统销售子系统库存子系统3、数据仓库中的数据组织数据仓库中的数据分为四个级别:早期细节级,当前细节级,轻度综合级,高度综合级。1985~1998年销售明细表1998~2003年销售明细表1998~2003年每月销售表1998~2003年每季度销售表DW中还有一类重要的数据:元数据(metedata)。元数据是“关于数据的数据”(RDBMS中的数据字典就是一种元数据)。数据仓库中的元数据描述了数据的结构、内容、索引、码、数据转换规则、粒度定义等。4、数据仓库系统结构RDBMS数据文件其他综合数据当前数据历史数据元数据抽取、转换、装载数据仓库OLAP工具DM工具查询工具分析工具二、数据仓库设计数据仓库的设计分为如下三个阶段:数据仓库建模分析主题域确定粒度层次确定数据分割策略构建数据仓库数据的存储结构与存储策略DSS应用编程三、操作数据存储(ODS)在许多情况下,DB-DW的两层体系结构并不适合企业的数据处理要求。因为,虽然可以粗略地把数据处理分成操作型和分析型,但这两种处理处理并不是泾渭分明的。ODS(OperationalDataStore)作为一个中间层次,一方面,它包含企业全局一致的、细节的、当前的或接近当前的数据,另一方面,它又是一个面向主题、集成的数据环境,适合完成日常决策的分析处理。四、数据仓库的实现数据仓库的工具主要有:数据预处理工具,数据分析(OLAP)工具,数据挖掘工具,OLAP服务器。数据仓库和OLAP工具基于多维数据模型(在数据仓库中,通常以多维方式来存储数据。)。基本概念维:人们观察数据的特定角度。维的层次:人们观察数据的特定角度可能存在细节程度不同的多个描述方面,我们称其为维的层次。多维分析的基本动作上卷:汇总数据下钻:明细数据切片,旋转,。Salesvolumeasafunctionofproduct,month,andregionProductMonthDimensions:Product,Location,TimeHierarchicalsummarizationpathsIndustryRegionYearCategoryCountryQuarterProductCityMonthWeekOfficeDayTotalannualsalesofTVinU.S.A.DateCountrysumsumTVVCRPC1Qtr2Qtr3Qtr4QtrU.S.ACanadaMexicosum产品销售情况某年某月产品销售情况选定两个维:产品维和地区维时间维数据切片产品维地区维产品维地区维基于RDBMS的数据仓库实现关系数据库将多维数据库中的多维结构分为两类:一类是事实表,用来存储事实的度量值以及各个维的码值;另一类是维表。数据仓库的设计模型有:星型模式,雪花模式,混合模式数据仓库的设计也可以理解为面向OLAP的数据库设计。在星型模式中,主要数据存储在事实表中,没有冗余,并符合3NF或BCNF。维值信息存储在维表中。维表一般不需要规范化。主要原因是维表是静态的,是否会产生因更新而导致异常也就不重要了。ProductsPidpnamecategorypriceLocationsLocidcitystatecountryPidtimeidlocidsalesTimeiddatemonthquarteryearholiday_flagTimesSales定单号销售员号客户号产品号日期标识地区名称数量总价定单号定货日期客户号客户名称客户地址销售员号姓名城市产品号产品名称单价日期标识日月年地区名称省事实表星型模式定单号销售员号客户号产品号日期标识地区名称数量总价定单号定货日期客户号客户名称客户地址销售员号姓名城市产品号产品名称单价日期标识日月年地区名称省事实表雪花模式产品号公司代码公司代码公司名称地址五、SQLServer2000数据仓库工具数据转换服务(DTS)用于向数据仓库中加载数据数据复制用于分布式数据仓库分布和加载数据OLEDB提供应用程序与数据源的接口APIAnalysisService用于采集和分析数据仓库中的数据EnglishQuery提供使用英语语言查询数据仓库MetaDataService浏览数据仓库中的元数据PivotTable服务用于定制操作多维数据的客户端接口在数据仓库或者数据市场中的信息可以由联机分析(OLAP)处理,OLAP可以有效地以由维度和度量组成的立方体方式查看数据。然而,存在着这种问题:虽然OLAP合计是在数据仓库中可以达到的查询性能的关键因素,但是存储这些合计数据的成本是磁盘存储量。事实上,合计数据量可以轻易地超过原有的数据量。另外,当维度和合计量提高时,所要求的OLAP数据存储量也大大地提高。这种对存储量的极大要求一般称为数据爆炸。OLAP描述的是一种多维数据服务,这种服务的设计目的是保证分析员、经理和决策者针对特定的问题,通过快速、一致、交互式的实时数据访问和分析,获得有创意的发现。在SQLServer2000中,有3种用于存储数据仓库中维度数据的方法,每一种方法都随其数据存储要求和其数据检索速度而变化。(l)MOLAP:多维型OLAP在一个用于压缩索引的永久数据存储中存储维度数据和事实数据。合计存储用来加快数据访问。MOLAP查询引擎是专有的,并且优化成由MOLAP数据存储使用的存储格式。MOLAP提供了比ROLAP更快的查询处理速度,并且要求更少的存储空间。然而,它不能较好地伸缩,并且要求使用单独的数据库来存储。(2)ROLAP:关系型OLAP在关系型数据表中存储合计。ROLAP针对关系型数据库的应用允许其利用已有的数据库资源,并且允许ROLAP应用程序很好地伸缩。然而,ROLAP使用表存储合计则要求比MOLAP更多的磁盘空间,速度相对比较慢。(3)HOLAP:正如其名称所示,混合型HOLAP介于MOLAP和ROLAP之间。像ROLAP一样,HOLAP将主数据存储在源数据库中。像MOLAP一样,HOLAP把合计存储在一个永久性数据存储的地方,它与主关系数据库分开。这种混合形式使HOLAP可以具备MOLAP和ROLAP两者的优点。