chap 6 维度建模

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

DataWarehousingandOnlineAnalyticalProcessing第六章维度建模Chapter6DimensionalModelingMarch2012YunhaiTongSchoolofElectronicsEngineeringandComputerScience,PekingUniversityDataWarehousingandOnlineAnalyticalProcessing本章内容关于数据仓库建模方法维度建模的相关概念维度建模方法DataWarehousingandOnlineAnalyticalProcessing数据仓库系统的总体架构抽取、清理装载、刷新外部数据数据仓库管理系统数据集市前端工具和应用系统服务OLAP服务器OLAP服务器数据查询工具自由报表工具数据分析工具各类应用系统元数据管理数据仓库监测、运行与维护工具数据挖掘工具……数据源数据存储及管理OLAP引擎前端工具和应用现有业务系统文档资料DataWarehousingandOnlineAnalyticalProcessing逻辑数据模型设计的目标简洁性用户对设计结果易于理解逻辑数据模型与用户的概念数据模型相匹配各类查询非常易于书写,很直观表达能力强包含各类重要查询所需要的足够的信息包含所有相关数据性能为高效的物理设计提供可能JeffByardandDonovanSchneider,RedBrickSystemsSimplicity,Simplicity,SimplicityDataWarehousingandOnlineAnalyticalProcessing数据仓库的建设方法自顶向下的方法首先建立一个面向企业级别统一的数据仓库其次建立一些面向部门级别特殊子集的数据,建立数据集市自底向上的方法首先考虑重要的问题,建立一个数据集市一个数据集市、另外一个数据集市,……数据仓库=所有数据集市的集合DataWarehousingandOnlineAnalyticalProcessing数据仓库的建模方法规范化建模(使用规范化的模式):减少数据冗余,以最优化总体性能。规范化建模通常会提供详细的实体关系图表。维度建模(使用星型/雪花模式):直观地显示业务结构,以及提供高水平的访问性能。数据模型是业务在数据角度上的体现。数据建模要求具备技术上和更为重要的业务上的专门知识。DataWarehousingandOnlineAnalyticalProcessing数据仓库建模的基础知识体会两种建模方法的差异必须具有建模工具培训与实践经验对数据建模流程的彻底理解:概念数据模型(在规划阶段)、逻辑数据模型(在规划/设计阶段)和物理数据模型(在设计阶段)对企业的业务的深入认识。业务知识是数据建模中最关键的元素。能被业务和IT部门充分理解的优良的数据模型只能来自于对业务上的数据和数据关系的坚实理解数据建模能力和知识并不单独存在于一个团体或部门中,数据模型开发是一项联合工作DataWarehousingandOnlineAnalyticalProcessing本章内容关于数据仓库建模方法维度建模的相关概念维度建模方法DataWarehousingandOnlineAnalyticalProcessing维模型一种非规范化的关系模型由一组属性构成的表所组成表跟表之间的关系通过关键字和外键来定义以良好的可理解性和方便的产生报表来进行数据组织,很少考虑修改的性能通过SQL或者相关的工具实现数据的查询和维护DataWarehousingandOnlineAnalyticalProcessingERModelvs.DimensionalModelsER模型维模型数据组织一张表代表一个实体数据组织以事实表为核心追求目标最少的数据冗余最大的可理解性优化策略面向Update操作进行优化面向检索进行优化面向系统面向事务处理的模型面向数据仓库的模型DataWarehousingandOnlineAnalyticalProcessing星型模式SalesDateProductStorePromotionFactTableDimensiontablesDataWarehousingandOnlineAnalyticalProcessing事实表每一个事实表通常包含了处理所关心的的度量值每一个事实表的行包括具有可加性的数值型的度量值文本事实通常具有不可预见的内容,很难进行分析与维表相连接的外键通常具有两个和两个以上的外键外键之间表示维表之间多对多的关系DataWarehousingandOnlineAnalyticalProcessing事实表(续)事实表的特征非常的大:包含几万、几十万甚至几百几千条的记录内容相对的窄:列数较少经常发生变化现实世界中新事件的发生→事实表中增加一条记录典型情况下,仅仅是数据的追加事实表的使用各类度量值的聚集计算DataWarehousingandOnlineAnalyticalProcessing维表每一张维表对应现实世界中的一个对象或者概念例如:客户、产品、日期、地区、商场维表的特征包含了众多描述性的列:维表的范围很宽(具有多个属性)通常情况下,跟事实表相比,行数相对较小:通常10万条内容相对固定:几乎就是一类查找表,或编码表DataWarehousingandOnlineAnalyticalProcessing维表(续)维表的应用基于维属性的过滤(切片、切块等)基于维属性的各种聚集操作报表中各类标签的主要来源事实表通过维表进行引用DataWarehousingandOnlineAnalyticalProcessing事实表与维表的比较属性个数少(窄)记录行数多(大)数值型度量随着时间的推移,数据增长属性个数多(宽)记录个数少(小)描述型属性静态的,很少发生变化FactsTableDimensionalTableFactscontainnumbers,dimensionscontainlabelsDataWarehousingandOnlineAnalyticalProcessing维模型的优点(AccordingtoKimball)可预见的、标准化的架构针对用户的需求发生变化,具有良好的适应性,能够自然地进行扩展维度模型的简明性,也为提高性能带来好处容易支持增量数据加载标准的设计方法已经趋于成熟现已有不少的产品支持维度建模DataWarehousingandOnlineAnalyticalProcessing维度模型和规范化模型的关系两者之间存在着一种自然的关系单个规范化ER图通常可以分解为多个维度方案规范化模型比较复杂,原因在于它将许多从来就不会出现在单个时间点和单个数据集中的多个业务处理放在了单张绘制图中DataWarehousingandOnlineAnalyticalProcessing维度模型和规范化模型的关系(续)规范化ER图转换到维模型将ER图中分成若干分散的业务处理过程,然后分别单独建模选出ER图中含有数字型与可加性非关键字事实的多对多关系,并标记为事实表将剩下的所有表复合成具有直接连接到事实表的单连关键字的平面表,标记为维表DataWarehousingandOnlineAnalyticalProcessing设计问题:关系模型与多维模型非规范化的、带有索引结构的关系模型具有良好的灵活性利用多维数据模型具有简单、高效的特点DataWarehousingandOnlineAnalyticalProcessing本章内容关于数据仓库建模方法维度建模的相关概念维度建模方法维度建模的步骤维度建模中维的处理维度建模中事实的处理维度建模需要避免的误区DataWarehousingandOnlineAnalyticalProcessing维度建模四个步骤定义需要建模的业务处理过程定义业务处理所涉及事实的粒度选取用于每个事实表的维度确定用于分析形成每个事实表的数字型事实DataWarehousingandOnlineAnalyticalProcessing零售实例:连锁超市的销售POS=Pointofsale:数据收集通过对条形码的扫描得到在5个省份范围内的100多家连锁超市大约有60,000种产品放在货架上,SKUsSKU=stockkeepingunit库存储藏单位,用以表示不同的产品大部分产品来自于外部的生产厂商,并在包装上印有条形码部分内部生产的产品可能没有条形码目标:价格的变动和各项营销活动对产品销售和利润的影响营销活动=临时降价、各类广告、超市的布置DataWarehousingandOnlineAnalyticalProcessing选取业务处理过程基本原则建立的第一个维度模型应该是一个最有影响的模型——它应该对最为紧迫的业务问题做出回答,并且对数据的抽取来说,比较容易对于零售实例研究中:管理方面要做的事情:更好的理解POS系统记录的顾客购买行为建模所需要提供的业务处理:POS零售业务DataWarehousingandOnlineAnalyticalProcessing零售业务的问题Whatistheliftduetoapromotion?(促销活动对产品销售的影响)Lift=gaininsalesinaproductbecauseit’sbeingpromotedRequiresestimatedbaselinesalesvalueCouldbecalculatedbasedonhistoricalsalesfiguresDetecttimeshifting(检测随时间变化的情况)Customersstockupontheproductthat’sonsaleThentheydon’tbuymoreofitforalongtimeDetectcannibalization(检测产品冲突情况)CustomersbuythepromotedproductinsteadofcompetingproductsPromotingBrandAreducessalesofBrandBDetectcross-sellofcomplementaryproducts(检测交叉销售)PromotingcharcoalincreasessalesoflighterfluidPromotinghamburgermeatincreasessalesofhamburgerbunsWhatistheprofitabilityofapromotion?(利润的变化情况)Consideringpromotionalcosts,discounts,lift,timeshifting,cannibalization,andcross-sellDataWarehousingandOnlineAnalyticalProcessing定义事实表的粒度事实表的粒度=事实表每一行的具体含义优先考虑为业务处理获取最有原子性的信息而开发维度模型。原子数据是所收集的最为详细的信息,该数据不能在做进一步的细分维度模型的细节性数据是可靠的,并随时准备接受业务用户各种分析的特殊攻击确定数据仓库最为详细数据的最大层次数目DataWarehousingandOnlineAnalyticalProcessing定义事实表的粒度(续)给业务处理定义较高层次的粒度,这种粒度表示最具有原子性的数据的聚集选取较高层面的粒度,就意味着将自己限制到更少或者细节性可能更小的维度上好的粒度定义的事实数据表更好的表达数据的意义:数据量可能增大可能存在更多的记录行性能和丰富表达能力之间的权衡聚集预计算可以大大提高性能聚集数据作为调整性能的一种手段起着非常重要的作用,但它绝对不能作为用户存取最低层面的细节内容的替代品DataWare

1 / 86
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功