- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第12章 数据仓库与决策支持系统 12.1 数据仓库技术概述 12.1.1 决策支持查询的新特征 查询表达的WHERE子句通常是包含很多AND和OR的复杂条件。 传统RDBMS针对OR的处理能力很弱。 数据分析应用需要广泛使用各种统计函数。 SQL-92只内置支持的了min/max/avg/sum/count五个统计函数,不支持象标准差等一些其它基本统计函数。 完成高级统计需要由嵌入SQL的应用代码来完成。 许多查询包括与时间有关的条件,通常需要基于各种典型时间周期进行分析和汇总。 SQL-92缺乏处理时间序列数据方面的功能支持。 在数据分析应用中,用户可能需要反复提出同一组类似查询。 这不仅枯燥乏味,也使得DBMS无法从中识别或发掘查询优化机会。 12.1.2 决策支持查询的系统类型 1)增强或扩展了OLAP特性的DBMS OLAP: OnLine Analytic Processing 这类系统可高性能支持包含GROUP-BY和汇总操作符型式查询,且能对复杂布尔条件、统计函数和时间序列分析提供良好支持。 2)专用OLAP系统 在已有DBMSs的基础上,面向决策支持进行优化,以增强支持高效OLAP查询的一类专用系统。 随时间推移,专用OLAP系统和增强了OLAP特性的RDBMS系统之间区别可能会越来越小。 3)数据挖掘(Data Mining, DM)。 希望从大数据集中探索发现有趣、意外趋势,探索特别数据模式。 12.1.3 数据仓库系统 12.2 OLAP 12.2.1 多维数据模型 在多维数据模型中,核心数据项是一组事实度量,每个度量依赖于一组维度。 例如,在一个关于销售数据管理的应用中, sales (销售数量)是度量属性。 维度则包括Product(产品)、Location(地区)和Time(时间)。 给定一个产品、一个地区和一个时间点,我们最多只有一个销售值。 12.2.1 多维数据模型 MOLAP 直接用多维数组来存储多维数据集的OLAP专用系统。 MOLAP: multidimensional OLAP ROLAP 直接关系来存储多维数据集的OLAP专用系统。 例如对前述销售管理,可被表示为以下一组关系: Sales(pid、timeid、locid, sales) Locations (locid : integer, city : string , state : string , country : string); Products (pid : integer, pname : string , category : string); Times (timeid : integer, date : string , week : integer , month : integer, quarter : integer, year : integer, holiday_flag : boolean); 12.2.2 OLAP查询 OLAP系统的目标是给最终用户提供一个直观且强有力的查询接口,满足一般的面向商务分析任务。 常见的OLAP操作是基于多维数据集,在一个或多个维度上的度量值汇总。 一些典型的OLAP操作 上卷(roll up) 下钻(drill-down) 绕轴旋转(pivoting) … 以下几个查询非常具有典型性, 查销售总额; 查询每个城市的销售总额; 查询每个州的销售总额; 查询销售总额排行前五名的产品类 (该查询无法用标准SQL语法来表达)。 12.2.3 与SQL操作比较 虽然有些OLAP查询很难用SQL表达,或根本不能用SQL表达(如TOP n查询)。但大多数的OLAP查询都可用SQL表达。典型地,它们是一些包含分组和聚合操作的SQL语句。 单个OLAP操作可能导致几个密切相关的SQL查询。例如,对图12.5的交叉表,是通过绕轴(Time, Locatin)旋转获得。我们也可用下面查询来获得同样的结果: SELECT SUM (S.sales) FROM Sales S, Time T, Locations L WHERE S.timeid=T.timeid AND S.locid=L.locid GROUP BY T.year, L.state 这个查询产生图12.5中灰色背景部分的单元。而该图中最下汇总行和最右汇总列则可分别通过下面两个SQL语句获得: 12.2.3 与SQL操作比较 这个交叉表也可被认为是在Location维、时间维、以及同时在Location维和时间维上的上卷。每个上卷对应一个带GR
文档评论(0)