首页 数据挖掘概念与技术原书第2版第3章数据仓库与OLAP技术概述

数据挖掘概念与技术原书第2版第3章数据仓库与OLAP技术概述

举报
开通vip

数据挖掘概念与技术原书第2版第3章数据仓库与OLAP技术概述 什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库的定义很多,但却很难有一种严格的定义 数据仓库是一个数据库,它与公司的操作数据库分开维护。 允许将各种应用系统集成在一起,为统一的历史数据分析提供坚实的平台,对信息处理提供支持 数据仓库区别于其他数据存储系统 “数据仓库是一个面向主题的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策过程.”—W.H.Inmon*DW在物理本质上,和DB,FILESYSTEM一样,也是...

数据挖掘概念与技术原书第2版第3章数据仓库与OLAP技术概述
什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库的定义很多,但却很难有一种严格的定义 数据仓库是一个数据库,它与公司的操作数据库分开维护。 允许将各种应用系统集成在一起,为统一的历史数据分析提供坚实的平台,对信息处理提供支持 数据仓库区别于其他数据存储系统 “数据仓库是一个面向主 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策过程.”—W.H.Inmon*DW在物理本质上,和DB,FILESYSTEM一样,也是一堆数据的集合 面向主题,是数据仓库显著区别于关系数据库系统的一个特征 围绕一些主题,如顾客、供应商、产品等 关注决策者的数据建模与分析,而不是集中于组织机构的日常操作和事务处理。 排除对于决策无用的数据,提供特定主题的简明视图。 一个数据仓库是通过集成多个异种数据源来构造的。 关系数据库,一般文件,联机事务处理记录 使用数据清理和数据集成技术。 确保命名约定、编码结构、属性度量等的一致性。 当数据被移到数据仓库时,它们要经过转化。 数据仓库是从历史的角度提供信息 数据仓库的时间范围比操作数据库系统要长的多。 操作数据库系统:主要保存当前数据。 数据仓库:从历史的角度提供信息(比如过去5-10年) 数据仓库中的每一个关键结构都隐式或显式地包含时间元素,而操作数据库中的关键结构可能就不包括时间元素。 尽管数据仓库中的数据来自于操作数据库,但他们却是在物理上分离保存的。 操作数据库的更新操作不会出现在数据仓库环境下 不需要事务处理,恢复,和并发控制等机制 只需要两种数据访问: 数据的初始转载和数据访问(读操作) 异种数据库的集成 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 传统的异种数据库集成:(查询驱动) 在多个异种数据库上建立包装程序(wrappers)和中介程序(mediators) 查询驱动方法——当从客户端传过来一个查询时,首先使用元数据字典将查询转换成相应异种数据库上的查询;然后,将这些查询映射和发送到局部查询处理器 数据仓库:(更新驱动) 将来自多个异种源的信息预先集成,并存储在数据仓库中,供直接查询和分析 查询驱动的方法 需要负责的信息过滤和集成处理 与局部数据源上的处理竞争资源 对于频繁的查询,尤其是涉及聚集(汇总)操作的查询,开销很大(决策支持中常见的查询形式) 更新驱动的方法(带来高性能) 数据经预处理后单独存储,对聚集操作提供良好支持 不影响局部数据源上的处理 集成历史信息,支持负责的多维查询 操作数据库系统的主要任务是联机事务处理OLTP 日常操作:购买,库存,银行,制造,工资,注册,记帐等 数据仓库的主要任务是联机分析处理OLAP 数据分析和决策支持,支持以不同的形式显示数据以满足不同的用户需要 用户和系统的面向性 面向顾客(事务)VS.面向市场(分析) 数据内容 当前的、详细的数据VS.历史的、汇总的数据 数据库 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 实体-联系模型(ER)和面向应用的数据库设计VS.星型/雪花模型和面向主题的数据库设计 数据视图 当前的、企业内部的数据VS.经过演化的、集成的数据 访问模式 事务操作VS.只读查询(但很多是复杂的查询) 任务单位 简短的事务VS.复杂的查询 访问数据量 数十个VS.数百万个 用户数 数千个VS.数百个 数据库规模 100M-数GBVS.100GB-数TB 设计优先性 高性能、高可用性VS.高灵活性、端点用户自治 度量 事务吞吐量VS.查询吞吐量、响应时间 提高两个系统的性能 DBMS是为OLTP而设计的:存储方式,索引,并发控制,恢复 数据仓库是为OLAP而设计:复杂的OLAP查询,多维视图,汇总 不同的功能和不同的数据: 历史数据:决策支持需要历史数据,而这些数据在操作数据库中一般不会去维护 数据汇总:决策支持需要将来自异种源的数据统一(如聚集和汇总) 数据质量:不同的源使用不一致的数据表示、编码和格式,对这些数据进行有效的分析需要将他们转化后进行集成 什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库和OLAP工具基于多维数据模型 在多维数据模型中,数据以数据立方体(datacube)的形式存在 数据立方体允许以多维数据建模和观察。它由维和事实定义 维是关于一个组织想要记录的视角或观点。每个维都有一个表与之相关联,称为维表。 多维数据模型围绕中心主题组织,该主题用事实表表示 事实表包括事实的名称或度量以及每个相关维表的关键字 事实指的是一些数字度量time_keydayday_of_the_weekmonthquarteryeartime维表location_keystreetcitystate_or_provincecountrylocation维表Sales事实表time_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_sales度量item_keyitem_namebrandtypesupplier_typeitem维表branch_keybranch_namebranch_typebranch维表 在数据仓库中,数据立方体是n-D的(n维) (关系表和电子表格是几维的?) 示例 AllElectronics的销售数据按维time,item的2-D视图(P71,表3-2) AllElectronics的销售数据按维time,item和location的3-D视图(P71,表3-3) AllElectronics的销售数据按维time,item和location的3-D视图的3-D数据立方体表示(P71,图3-1) 销售数据的4-D立方体表示(P72,图3-2) 多维数据模型为不同角度上的数据建模和观察提供了一个良好的基础 在数据仓库的研究文献中,一个n维的数据的立方体叫做基本方体。给定一个维的集合,我们可以构造一个方体的格,每个都在不同的汇总级或不同的数据子集显示数据,方体的格称为数据立方体。0维方体存放最高层的汇总,称作顶点方体;而存放最底层汇总的方体则称为基本方体。alltimeitemlocationsuppliertime,itemtime,locationtime,supplieritem,locationitem,supplierlocation,suppliertime,item,locationtime,item,suppliertime,location,supplieritem,location,suppliertime,item,location,supplier0-D(顶点)方体1-D方体2-D方体3-D方体4-D(基本)方体 最流行的数据仓库概念模型是多维数据模型。这种模型可以以星型模式、雪花模式、或事实星座模式的形式存在。 星型模式(Starschema):事实表在中心,周围围绕地连接着维表(每维一个),事实表含有大量数据,没有冗余。 雪花模式(Snowflakeschema):是星型模式的变种,其中某些维表是 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 化的,因而把数据进一步分解到附加表中。结果,模式图形成类似于雪花的形状。 事实星座(Factconstellations):复杂应用可能需要多个事实表共享维表,这种模式可以看作星型模式的汇集,因此称为星系模式(galaxyschema),或者事实星座(factconstellation)SalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresSalesFactTabletime_keyitem_keybranch_keylocation_keyunits_solddollars_soldavg_salesMeasuresShippingFactTabletime_keyitem_keyshipper_keyfrom_locationto_locationdollars_costunits_shipped DMQL首先包括定义数据仓库和数据集市的语言原语,这包括两种原语定义:一种是立方体定义,一种是维定义 立方体定义(事实表)definecube<cube_name>[<dimension_list>]:<measure_list> 维定义(维表)definedimension<dimension_name>as(<attribute_or_subdimension_list>) 特殊案例(共享维表的定义) 第一次作为维表定义“cubedefinition” 然后:definedimension<dimension_name>as<dimension_name_first_time>incube<cube_name_first_time>definecubesales_star[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)definecubesales_snowflake[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier(supplier_key,supplier_type))definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city(city_key,province_or_state,country))definecubesales[time,item,branch,location]:dollars_sold=sum(sales_in_dollars),avg_sales=avg(sales_in_dollars),units_sold=count(*)definedimensiontimeas(time_key,day,day_of_week,month,quarter,year)definedimensionitemas(item_key,item_name,brand,type,supplier_type)definedimensionbranchas(branch_key,branch_name,branch_type)definedimensionlocationas(location_key,street,city,province_or_state,country)definecubeshipping[time,item,shipper,from_location,to_location]:dollar_cost=sum(cost_in_dollars),unit_shipped=count(*)definedimensiontimeastimeincubesalesdefinedimensionitemasitemincubesalesdefinedimensionshipperas(shipper_key,shipper_name,locationaslocationincubesales,shipper_type)definedimensionfrom_locationaslocationincubesalesdefinedimensionto_locationaslocationincubesales 一个数据立方体的度量是一个数值函数,该函数可以对数据立方体空间的每一个点求值。 度量可以根据其所用的聚集函数分为三类: 分布的(distributive):将函数用于n个聚集值得到的结果和将函数用于所有数据得到的结果一样。 比如:count(),sum(),min(),max()等 代数的(algebraic):函数可以由一个带M个参数的代数函数计算(M为有界整数),而每个参数值都可以有一个分布的聚集函数求得。 比如:avg(),min_N(),standard_deviation() 整体的(holistic):描述函数的子聚集所需的存储没有一个常数界(无法以上述方法进行计算)。 比如:median(),mode(),rank() 一个概念分层(concepthierarchy)定义一个映射序列,将低层概念映射到更一般的高层概念 E.g.表示location的概念:杭州浙江中国亚洲 概念分层允许我们在各种抽象级审查和处理数据 概念分层可以由系统用户、领域专家、知识工程师人工的提供,也可以根据数据分布的统计分析自动的产生allEuropeNorth_AmericaMexicoCanadaSpainGermanyVancouverM.WindL.Chan..................allregionofficecountryTorontoFrankfurtcity许多概念分层的定义隐含在数据库的模式中。比如:location维的定义,office<city<country<region;这些属性按一个全序相关,形成一个层次结构:yeardayquartermonthweek维的属性也可以组成一个偏序,形成一个格: 概念分层为不同级别上的数据汇总提供了一个良好的基础 综合概念分层和多维数据模型的潜力,可以对数据获得更深入的洞察力 通过在多维数据模型中,在不同的维上定义概念分层,使得用户在不同的维上从不同的层次对数据进行观察成为可能。 多维数据模型(数据立方体)使得从不同的角度对数据进行观察成为可能,而概念分层则提供了从不同层次对数据进行观察的能力;结合这两者的特征,我们可以在多维数据模型上定义各种OLAP操作,为用户从不同角度不同层次观察数据提供了灵活性: 上卷(roll-up):汇总数据 通过一个维的概念分层向上攀升或者通过维规约 当用维归约进行上卷时,一个或多个维由给定的数据立方体删除 下钻(drill-down):上卷的逆操作 由不太详细的数据到更详细的数据,可以通过沿维的概念分层向下或引入新的维来实现(为给定数据添加更多细节) 切片和切块(sliceanddice) 切片操作在给定的数据立方体的一个维上进行选择,导致一个子方 切块操作通过对两个或多个维进行选择,定义子方*多维数据模型的潜力和概念分层的混合 转轴(pivot) 立方体的重定位,可视化,或将一个3维立方体转化为一个2维平面序列 转轴是一种可视化操作,通过转动当前数据的视图来提供一个数据的替代表示 其他OLAP操作 钻过(drill_across):执行涉及多个事实表的查询 钻透(drill_through):使用关系SQL机制,钻到数据立方体的底层,到后端关系表 其他OLAP操作可能包括列出表中最高或最低的N项,以及计算移动平均值、增长率、利润、统计函数等等 什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库的设计与构造 三层数据仓库结构 数据仓库的后端工具和实用程序 元数据存储与使用 用于OLAP处理的各种类型的数据仓库服务器 数据仓库给商业分析专家提供了什么? 通过提供相关数据与信息,获得竞争优势 通过有效的收集精确的描述组织的数据,获得生产力的提高 通过提供不同级别(部门、市场、商业)的客户视图,协助客户关系管理 通过追踪长期趋势、异常等,降低成本 有效构建数据仓库的关键:理解和分析商业需求 通过提供一个商业分析框架,综合各种不同的数据使用者的视图*数据仓库的构架 数据仓库设计的四种视图 自顶向下视图 允许我们选择数据仓库所需的相关信息 数据源视图 揭示被操作数据库系统所捕获、存储和管理的信息 数据仓库视图 由事实表和维表所组成 商务查询视图 从最终用户的角度透视数据仓库中的数据 数据仓库的构建与使用涉及多种技能 商业技能 理解系统如何存储和管理数据 数据如何提取 数据如何刷新 技术方面的技能 如何通过使用各种数据或量化的信息,到处可以提供决策支持的模式、趋势、判断等 如何通过审查历史数据,分析发展趋势等 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 管理技能 如何通过与不同的技术、厂商、用户交互,来及时、有效、经济的提交结果 自顶向下法、自底向上法或者两者的混合方法 自顶向下法:由总体设计和规划开始 在技术成熟、商业理解透彻的情况下使用 自底向上法:以实验和原型开始 常用在模型和技术开发的初期,可以有效的对使用的技术和模型进行评估,降低风险 混合方法:上述两者的结合 从软件过程的观点 瀑布式方法:在进行下一步前,每一步都进行结构化和系统的分析 螺旋式方法:功能渐增的系统的快速产生,相继版本之间间隔很短 典型的数据仓库设计过程 选取待建模的商务过程 找到所构建的数据仓库的主题,比如:销售、货运、订单等等 选取商务过程的颗粒度 数据起始于多细的颗粒度,比如:记录每条详细订单,或是开始于每日的汇总数据 选取用于每个事实表记录的维 常用的维有:时间、货物、客户、供应商等 选取将安放在事实表中的度量 常用的数字度量包括:售价、货物数量等数据仓库OLAP服务器查询报告分析数据挖掘监控、整合元数据存储数据源前端工具输出数据集市数据仓库服务器OLAP服务器 底层:数据仓库的数据库服务器 关注的问题:如何从这一层提取数据来构建数据仓库(通过Gateway(ODBC,JDBC,OLE/DB等)来提取) 中间层:OLAP服务器 关注的问题:OLAP服务器如何实施(关系型OLAP,多维OLAP等) 前端客户工具层 关注的问题:查询工具、报表工具、分析工具、挖掘工具等 从体系结构的角度去看,数据仓库模型可以有以下三种: 企业仓库 搜集关于跨越整个组织的主题的所有信息 数据集市 企业范围数据的一个子集,对于特定的客户是有用的。其范围限于选定的主题,比如一个商场的数据集市 独立的数据集市VS.非独立的数据集市(数据来自于企业数据仓库) 虚拟仓库 操作数据库上的一系列视图 只有一些可能的汇总视图被物化 数据仓库开发上的困难 自顶向下的开发方法从全系统的角度提供解决方案,使得(模块)集成的问题最小;但是该方法十分昂贵,需要对组织进行长期研究和建模分析。 自底向上方法提供了更多的开发灵活性,价格便宜;但往往会遇到集成问题(每个模块单独运行都没有问题,但是一集成就出异常) 解决方法: 使用递增性、演化性的开发方法 高层数据模型企业仓库和数据集市并行开发通过分布式模型集成各数据集市多层数据仓库*高层数据模型为不同主题的数据提供一个全局的视图(在不同的主题和应用之间,提供一个一致的视图) 数据仓库后端工具主要指的是用来装入和刷新数据的工具,包括: 数据提取: 从多个外部的异构数据源收集数据 数据清理 检测数据种的错误并作可能的订正 数据变换 将数据由历史或主机的格式转化为数据仓库的格式 装载 排序、汇总、合并、计算视图,检查完整性,并建立索引和分区 刷新 将数据源的更新传播到数据仓库中 在数据仓库中,元数据就是定义数据仓库对象的数据。有以下几种: 数据仓库结构的描述 仓库模式、视图、维、层次结构、导出数据的定义,以及数据集市的位置和内容 操作元数据 包括数据血统(datalineage)、数据类别(currencyofdata),以及监视信息 汇总用的算法 由操作环境到数据仓库的映射 关于系统性能的数据 索引,profiles,数据刷新、更新或复制事件的调度和定时 商务元数据 商务术语和定义、数据拥有者信息、收费政策等 元数据与数据一起,构成了数据仓库中的数据模型,元数据所描述的更多的是这个模型的结构方面的信息 在数据仓库中,元数据的主要用途包括: 用作目录,帮助决策支持系统分析者对数据仓库的内容定义 作为数据仓库和操作性数据库之间进行数据转换时的映射标准 用于指导当前细节数据和稍加综合的数据之间的汇总算法,指导稍加综合的数据和高度综合的数据之间的汇总算法。 逻辑上,OLAP服务器从数据仓库或数据集市中给商业用户提供多维数据 物理上,OLAP的底层数据存储实现可以有多种不同的方式 关系OLAP服务器(ROLAP) 使用关系数据库或扩展的关系数据库存放并管理数据仓库的数据,而用OLAP中间件支持其余部分 包括每个DBMS后端优化,聚集导航逻辑的实现,附加的工具和服务 较大的可扩展性 多维OLAP服务器(MOLAP) 基于数组的多维存储引擎(稀疏矩阵技术) 能对预计算的汇总数据快速索引 混合OLAP服务器(HOLAP) 结合上述两种技术,更大的使用灵活性 特殊的SQL服务器 在星型和雪花模型上支持SQL查询 什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库中的OLAP查询是一种海量数据计算 e.g.想象一下对过去10年各地区的软件产品销售的汇总查询 用户却希望这个计算能在数秒钟内完成 解决方法在于以下数据仓库实现的关键技术 数据立方体计算技术 存取方法 查询处理技术 核心:有效计算多个维集合上的聚集(computecube) 类似于实现SQL中的GROUPBY操作 E.g.一个数据立方体sales_cube,包含city,item,year和sales_in_dollars,可以在不同的层次上查询汇总这些数据 (item,city,year)–3D (item,city),(itemyear),(city,year)—2D (item),(city),(year)—1D ()--0D 数据立方体可以被看成是一个方体的格 最底层的方体是基本方体 最顶端的方体(顶点)只包含一个单元的值 一个n维的数据立方体,每维L层,可能产生的方体总数是多少? 维灾难 E.g.假设数据立方体有10个维,每维5层,则可能产生的方体总数为510≈9.8×106个 数据立方体的物化可以有以下三种选择: 全物化 预先计算所有方体 不物化 不预先计算任何“非基本”方体 部分物化 有选择的计算一个所有方体的适当子集 考虑因素:(1)确定要物化的方体;(2)在查询时利用物化的方体;(3)在装载和刷新时,有效的更新物化的方体 确定物化哪些方体 考虑工作负荷下的查询、它们的频率和它们的开销等等 什么是数据仓库 多维数据模型 数据仓库的体系结构 数据仓库实现 从数据仓库到数据挖掘 数据仓库的三种应用 信息处理 支持查询和基本的统计分析,并使用交叉表、表、图标和图进行报表处理 分析处理 对数据仓库中的数据进行多维数据分析 支持基本的OLAP操作,切块、切片、上卷、下钻、转轴等 数据挖掘 从隐藏模式中发现知识 支持关联分析,构建分析性模型,分类和预测,并用可视化工具呈现挖掘的结果 三种应用间的差别 为什么要联机分析挖掘 数据仓库中有高质量的数据 数据仓库中存放着整合的、一致的、清理过的数据 围绕数据仓库的信息处理结构 存取、集成、合并多个异种数据库的转换,ODBC/OLEDB连接,Web访问和访问工具等 基于OLAP的探测式数据分析 使用上卷、下钻、切片、转轴等技术进行数据挖掘 数据挖掘功能的联机选择 多种数据挖掘功能、算法和任务的整合数据仓库元数据多维数据库OLAM引擎OLAP引擎用户图形界面API数据方体API数据库API数据清理数据集成第三层OLAP/OLAM第二层多维数据库第一层数据存储第四层用户界面数据的过滤、集成过滤数据库基于约束的数据挖掘挖掘结果*DW在物理本质上,和DB,FILESYSTEM一样,也是一堆数据的集合*多维数据模型的潜力和概念分层的混合*数据仓库的构架*高层数据模型为不同主题的数据提供一个全局的视图(在不同的主题和应用之间,提供一个一致的视图)
本文档为【数据挖掘概念与技术原书第2版第3章数据仓库与OLAP技术概述】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_410285
暂无简介~
格式:ppt
大小:5MB
软件:PowerPoint
页数:0
分类:工学
上传时间:2011-10-28
浏览量:62