1、数据仓库与数据挖掘第第2 2章章 数据仓库的数据数据仓库的数据 存储与处理存储与处理22.1 数据仓库的三层数据结构数据仓库的三层数据结构 2.2 数据仓库的数据特征数据仓库的数据特征 2.3 数据仓库的数据数据仓库的数据ETL过程过程 2.4 多维数据模型多维数据模型主要内容主要内容32.1 数据仓库的三层数据结构数据仓库的三层数据结构 数据数据元数据元数据源数据源数据数据仓库数据仓库中的数据中的数据数据集市数据集市中的数据中的数据4DataWarehouseExtractTransformLoadRefreshOLAP服务器AnalysisQueryReportsData miningMo
2、nitor&IntegratorMetadata数据源前端工具ServeData MartsOperational DBsothersources数据仓库服务器OLAP Server操作型操作型(元)数据(元)数据数据仓库数据仓库(元)数据(元)数据数据集市数据集市(元)数据(元)数据52.2 数据仓库的数据特征数据仓库的数据特征 2.2.1、状态数据与事件数据、状态数据与事件数据 描述对象的状态即为状态数据,描述对象发生的事件即为事描述对象的状态即为状态数据,描述对象发生的事件即为事件数据件数据,两者关系为两者关系为:状态数据状态数据事件数据事件数据状态数据状态数据 例如:银行取款事件例如:
3、银行取款事件K K 帐户帐户A A余额余额S1 S1 银行取款事件银行取款事件K K 帐户帐户A A余额余额S2 S2 上述数据(含状态数据和事件数据)均可以存储在数据库中。如:上述数据(含状态数据和事件数据)均可以存储在数据库中。如:事件数据:事件数据:日期日期 帐户帐户 取款标示取款标示 取款金额取款金额 2010.2.20 43472 1 50000状态数据状态数据:帐户帐户 日期日期 存存/取取 金额金额 帐户余额帐户余额 43472 2010.1.25 存款存款 7000 193000(S1)43472 2010.2.20 取款取款 5000 143000(S2)62.2.2、当前数
4、据与周期数据、当前数据与周期数据 商品名称商品名称2008-7-252008-7-25100200A品牌方便面品牌方便面B品牌衣服品牌衣服A001B002更新日期更新日期现有库存量现有库存量商品名称商品名称商品编号商品编号2008-7-262008-7-262008-7-2685210300A品牌方便面品牌方便面B品牌衣服品牌衣服C品牌矿泉水品牌矿泉水A001B002C003更新日期更新日期现有库存量现有库存量商品编号商品编号简化的库存表(当前数据类型)简化的库存表(当前数据类型)1天后简化的库存表(当前数据类型)天后简化的库存表(当前数据类型)当前数据当前数据只保留当前的最新数据,现存的最新
5、记录只保留当前的最新数据,现存的最新记录将改变以前记录中的内容;即历史数据将被破坏。如将改变以前记录中的内容;即历史数据将被破坏。如下表。下表。7商品名称商品名称2008-7-252008-7-251550A品牌方便面品牌方便面B品牌衣服品牌衣服A001B002销售日期销售日期日销售量日销售量商品名称商品名称商品编号商品编号2008-7-252008-7-252008-7-262008-7-2615503025A品牌方便面品牌方便面B品牌衣服品牌衣服C品牌矿泉水品牌矿泉水A品牌方便面品牌方便面A001B002C003A001销售日期销售日期日销售量日销售量商品编号商品编号简化的销售日报表(周期
6、数据类型)简化的销售日报表(周期数据类型)1天后简化简化的销售日报表(周期数据类型)天后简化简化的销售日报表(周期数据类型)周期数据周期数据不仅保留当前的最新数据,而且保留历史不仅保留当前的最新数据,而且保留历史数据。作为每条记录,都有一个日期时间戳表示其发数据。作为每条记录,都有一个日期时间戳表示其发生日期。如下表。生日期。如下表。82.2.3 数据仓库中的元数据数据仓库中的元数据 元数据就是定义数据的数据,也就是说明数据仓库对象的数元数据就是定义数据的数据,也就是说明数据仓库对象的数据据.可以分成技术元数据与业务元数据。可以分成技术元数据与业务元数据。p数据仓库结构的描述。如仓库模式、视图
7、、维、层次结数据仓库结构的描述。如仓库模式、视图、维、层次结构、导出数据的定义,以及数据集市的位置和内容构、导出数据的定义,以及数据集市的位置和内容p业务系统、数据仓库和数据集市的体系结构和模式业务系统、数据仓库和数据集市的体系结构和模式p汇总用的算法汇总用的算法p由操作环境到数据仓库的映射由操作环境到数据仓库的映射技术元数据技术元数据9p 操作元数据:包括数据血统操作元数据:包括数据血统(data lineage,即数,即数据来源据来源)、数据类别、数据类别(currency of data),对象名,对象名,属性名等属性名等p 访问数据的原则和数据的来源访问数据的原则和数据的来源p 商务元
8、数据:商务术语和定义、数据拥有者信息商务元数据:商务术语和定义、数据拥有者信息p 系统所提供的分析方法和公式、报表等信息系统所提供的分析方法和公式、报表等信息业务元数据业务元数据从业务角度描述数据仓库的数据从业务角度描述数据仓库的数据10表表2-3 元数据举例元数据举例Table逻辑名逻辑名学生学生姓名姓名定义定义学校的主要成员,主要进行学习任务学校的主要成员,主要进行学习任务物理存储物理存储Student.table(数据库表数据库表)建立日期建立日期2006年年9月月13日日最后更新日期最后更新日期2007年年9月月13日日更新周期更新周期每月每月表逻辑程序名表逻辑程序名STUDENT(程
9、序名称程序名称)11q传统的异种数据库集成传统的异种数据库集成-查询驱动查询驱动 q在多个异种数据库上建立包装程序(wrappers)和中介程序(mediators)q查询驱动方法当从客户端传过来一个查询时,首先使用元数据字典将查询转换成相应异种数据库上的查询;然后,将这些查询映射和发送到局部查询处理器;局部查询集成为全局回答。q缺点:复杂的信息过滤和集成处理,竞争资源q数据仓库数据仓库-更新驱动更新驱动q将来自多个异种源的信息预先集成,并存储在数据仓库中,供直接查询和分析q高性能2.3 数据仓库的数据数据仓库的数据ETL过程过程 12传统的异种数据库集成传统的异种数据库集成:数据仓库数据仓库
10、:更新驱动更新驱动查询转换集成子结果子查询异种数据库查询查询数据归集异种数据库132.3 数据仓库的数据数据仓库的数据ETL过程过程 ETL概念概念数据数据ETL是用来实现异构数据源的数据集成,即是用来实现异构数据源的数据集成,即完成数据的如下工作:完成数据的如下工作:p抓取抓取/抽取(抽取(Capture/Extract)p清洗(清洗(Scrub or data cleansing)p转换(转换(Transform)p装载与索引(装载与索引(Load and Index)等数据集成工作等数据集成工作 14数据具有的特点:数据具有的特点:p 详细的详细的p历史的历史的p规范化的规范化的2.3.
11、1 ETL的目标的目标 ETLETL过程的目标:为决策支持应用提供一个单一的、过程的目标:为决策支持应用提供一个单一的、权威的数据源。权威的数据源。p可以理解的可以理解的p即时的即时的p 质量可控制的质量可控制的152.3.1 ETL的目标的目标 操作性数据的特点:操作性数据的特点:p 即时的,而非历史的即时的,而非历史的p 规范程度不一,依赖于数据来源规范程度不一,依赖于数据来源p 限制在特定的应用范围限制在特定的应用范围p 质量较差,例如不一致等质量较差,例如不一致等162.3.2数据的数据的ETL过程描述过程描述 172.3.3数据数据抽取(抽取(Capture/Extract)定义:从
12、源文件或者源数据库获取相关数据用于填充数据仓库,称为数据抽取。q 静态抽取q 增量抽取注意事项:q 数据命名的透明度q 业务规则的完整性与准确性数据q 数据格式:跨数据源的统一数据格式源文件或者源数据库数据仓库协调可以使用SELECT FROM .INTO.语句实现182.3.3数据数据清洗(清洗(Scrub/Cleaning)定义:使用模式识别和其他技术将原始数据转换和移到数据定义:使用模式识别和其他技术将原始数据转换和移到数据仓库之前来升级原始数据质量的技术。仓库之前来升级原始数据质量的技术。1)空缺值p数据并不总是完整的例如:数据库表中,很多条记录的对应字段没有相应值。例如:数据库表中,
13、很多条记录的对应字段没有相应值。p为数据解码p重新格式化、改变数据类型p增加时间戳p度量单位转换p为表的每一行产生主码p找到缺失数据p192.3.3数据数据清洗(清洗(Scrub/Cleaning)1)空缺值(续)p引起空缺值的原因p设备异常设备异常p与其他已有数据不一致而被删除与其他已有数据不一致而被删除p因为误解而没有被输入的数据因为误解而没有被输入的数据p在输入时,有些数据因为得不到重视而没有被输入在输入时,有些数据因为得不到重视而没有被输入p对数据的改变没有进行日志记载(不能恢复)对数据的改变没有进行日志记载(不能恢复)p空缺值要经过推断而补上20如何处理空缺值如何处理空缺值q忽略元组
14、:假定挖掘任务设计为分类或描述时,缺少类标号假定挖掘任务设计为分类或描述时,缺少类标号的元组通常被忽略。元组中属性缺少值比较多时,挖掘算法的元组通常被忽略。元组中属性缺少值比较多时,挖掘算法的效果非常差。的效果非常差。q人工填写空缺值:工作量大,可行性低:工作量大,可行性低q使用一个使用一个全局常量填充空缺值:比如使用:比如使用unknown或或-q使用属性的使用属性的平均值填充空缺值填充空缺值q使用与给定元组使用与给定元组属同一类的所有样本的平均值q使用最可能的值填充空缺值:使用使用最可能的值填充空缺值:使用Bayesian公式或判定树等等基于推断的方法确定。基于推断的方法确定。21)噪声数
15、据)噪声数据噪声:一个测量变量中的随机错误或偏差。一个测量变量中的随机错误或偏差。引起不正确属性值的引起不正确属性值的原因:q数据收集工具的问题数据收集工具的问题q数据输入错误数据输入错误q数据传输错误数据传输错误q技术限制技术限制q命名规则的不一致命名规则的不一致22处理噪声数据方法处理噪声数据方法 1、分箱(binning)q先排序数据,并将他们分到等深(宽)的箱中q然后对每箱使用平均值平滑、中值平滑和边界平滑等方法23数据平滑的分箱方法数据平滑的分箱方法price的排序后数据:的排序后数据:4,8,15,21,21,24,25,28,34划分为(等深的)箱划分为(等深的)箱箱箱1:4,8
16、,15箱箱2:21,21,24箱箱3:25,28,34q用箱边界平滑用箱边界平滑箱箱1:4,4,15箱箱2:21,21,24箱箱3:25,25,34q用箱平均值平滑用箱平均值平滑箱箱1:9,9,9箱箱2:22,22,22箱箱3:29,29,29q平均值平滑-箱中每个值被平均值替换q中值平滑-箱中每个值被中值(排序后出现次数最多的值)替换q边界平滑-最小最大值视为边界,箱中每个值被靠近的边界值替换24如何处理噪声数据(续)如何处理噪声数据(续)2、聚类 将联系松散的数据当作孤立点,监测并且去除将联系松散的数据当作孤立点,监测并且去除孤立点。聚类集合之外的点即为孤立点。孤立点。聚类集合之外的点即为
17、孤立点。25如何处理噪声数据(续)如何处理噪声数据(续)3、回归通过让数据适应回归函数来平滑数据(线性回通过让数据适应回归函数来平滑数据(线性回归或多线性回归)。归或多线性回归)。xy=x+1X1yY1Y126如何处理噪声数据(续)如何处理噪声数据(续)4、计算机和人工检查结合 计算机检测可疑数据,然后对它们进行人工判计算机检测可疑数据,然后对它们进行人工判断。断。272.3.4数据转换(数据转换(Transform)n定义:定义:将数据从源操作型业务系统的格式转换到企业数据仓将数据从源操作型业务系统的格式转换到企业数据仓 库的数据格式。库的数据格式。n两种类型的数据转换两种类型的数据转换q记
18、录级记录级-选择、连接、规范化和聚集选择、连接、规范化和聚集q字段级字段级-单字段和多字段单字段和多字段 单字段转换的基本方法:算法和查找表注意:连接的复杂性。1)不是关系情形2)不同域情形3)源数据有错误情形282.3.4数据转换(数据转换(Transform)数据集成)数据集成n数据集成:数据集成:将多个数据源中的数据整合到一个一致的数据存将多个数据源中的数据整合到一个一致的数据存储(如数据仓库)中。储(如数据仓库)中。模式集成模式集成-实体识别问题实体识别问题 匹配来自不同数据源的现实世界的实体,比如:匹配来自不同数据源的现实世界的实体,比如:A.custA.cust-id=-id=B.
19、customer_noB.customer_no?冗余问题冗余问题 同一属性在不同的数据库中会有不同的字段名;一个同一属性在不同的数据库中会有不同的字段名;一个属性可以由另外的属性导出,即两个属性是相关的。属性可以由另外的属性导出,即两个属性是相关的。如:工资、基本工资、加班工资如:工资、基本工资、加班工资 29 (A-A平平)()(B-B平平)RA,B =(n-1)A Bq如果如果R RA,BA,B 0 0,则,则A A和和B B是正相关的;该值越大,是正相关的;该值越大,则则A A涵盖涵盖B B的可能性越大。的可能性越大。如果如果A A,B B相关性大,分析时就可以删除其中相关性大,分析时
20、就可以删除其中一个。一个。相关分析:讨论两个属性的相关性。相关分析:讨论两个属性的相关性。A平=A/n A=SQRT(A-A平)2/(n-1)其中其中A A平、平、B B平平分别是分别是A A、B B的平均值;的平均值;A A、B B分别是分别是A A、B B的标准差。的标准差。30 检测并解决数据值的冲突检测并解决数据值的冲突不同的数据表示,不同的度量等等。例如:对现实世界中的同一实体,来自不同数据源的属性值可能是不同的(如价格的单位:元、千元)。)数据集成(续)数据集成(续)31)数据变换)数据变换q平滑:去除数据中的噪声。如分箱、聚类、回归。去除数据中的噪声。如分箱、聚类、回归。q聚集:
21、对数据进行聚集和汇总,数据立方体的构建。对数据进行聚集和汇总,数据立方体的构建。q数据概化:沿概念分层向上汇总。沿概念分层向上汇总。q规范化:将数据按比例缩放,使之落入一个小的特定区间。将数据按比例缩放,使之落入一个小的特定区间。q最小最大规范化最小最大规范化qz-score规范化规范化q小数定标规范化小数定标规范化q属性构造q通过现有属性构造新的属性,并添加到属性集中。通过现有属性构造新的属性,并添加到属性集中。32数据变换数据变换规范化规范化maxA,minA :属性属性A的最大与最小值的最大与最小值new_ maxA,new_minA:属性属性A变换后区间的最大与最小变换后区间的最大与最
22、小值值AAAAAAminnewminnewmaxnewminmaxminvv_)_(最小最大规范化最小最大规范化:对原始数据进行线性变换,使得数据对原始数据进行线性变换,使得数据落在落在new_ maxA,new_minA区间内。区间内。例例:(:(一般映射到一般映射到0,1区间)区间)工资在工资在70012000之间,之间,则工资则工资7830规范化后为:规范化后为:V=(7830-700)/(12000-700)*(1-0)+0=0.743033数据变换数据变换规范化规范化AvAv z-scorez-score规范化规范化:基于属性基于属性A A的平均值和标准差规范化。的平均值和标准差规范
23、化。小数定标规范化:通过移动属性小数定标规范化:通过移动属性A的小数点位置进行规的小数点位置进行规范化。范化。10jvv 其中j是使得max(|v|)1的最小整数。343)数据归约)数据归约q数据立方体聚集数据立方体聚集q维归约维归约q数据压缩数据压缩q数值归约数值归约q离散化和概念分层产生离散化和概念分层产生 数据仓库中往往存有海量数据,在其上进行复杂的数据仓库中往往存有海量数据,在其上进行复杂的数据分析与挖掘需要很长的时间。数据分析与挖掘需要很长的时间。数据归约可以用来得到数据集的归约表示,它小得数据归约可以用来得到数据集的归约表示,它小得多,但可以产生相同的(或几乎相同的)分析结果。多,
24、但可以产生相同的(或几乎相同的)分析结果。数据归约策略:数据归约策略:35(1)数据立方体聚集数据立方体聚集q 最底层的方体对应于基本方体q基本方体对应于感兴趣的实体基本方体对应于感兴趣的实体 (基本事实表)q 在数据立方体中存在着不同级别的汇总q数据立方体可以看成方体的格数据立方体可以看成方体的格q每个较高层次的抽象将进一步减少结果数据每个较高层次的抽象将进一步减少结果数据q 数据立方体提供了对预计算的汇总数据的快速访问q使用与给定任务相关的最小方体使用与给定任务相关的最小方体(基本方体,注意数据立方体的晶格结构)q在可能的情况下,对于汇总数据的查询应当使用数据立方体在可能的情况下,对于汇总
25、数据的查询应当使用数据立方体(item)(city)(year)(city,item)(city,year)(item,year)(city,item,year)36()维归约()维归约q通过通过删除不相干的属性(或维)减少数据量减少数据量q属性子集选择方法q目标:找出最小属性集,使得数据类的概率分布尽目标:找出最小属性集,使得数据类的概率分布尽可能的接近使用所有属性的原分布。可能的接近使用所有属性的原分布。q好处:减少出现在发现模式上的属性的数目,使得好处:减少出现在发现模式上的属性的数目,使得模式更易于理解。模式更易于理解。q启发式的(探索性的贪心算法)方法(探索性的贪心算法)方法q逐步向
26、前选择:从空集开始,逐步添加逐步向前选择:从空集开始,逐步添加q逐步向后删除:从整个属性集开始,逐步删除逐步向后删除:从整个属性集开始,逐步删除q向前选择和向后删除相结合向前选择和向后删除相结合q判定归纳树:如判定归纳树:如ID3和和C4.5算法算法37()数据压缩()数据压缩q 有损压缩有损压缩 VS.无损压缩无损压缩q 字符串压缩字符串压缩q有广泛的理论基础和精妙的算法有广泛的理论基础和精妙的算法q通常是无损压缩通常是无损压缩q在解压缩前对字符串的操作非常有限在解压缩前对字符串的操作非常有限q 音频音频/视频压缩视频压缩q通常是有损压缩,压缩精度可以递进选择通常是有损压缩,压缩精度可以递进
27、选择q有时可以在不解压整体数据的情况下,重构某个片断有时可以在不解压整体数据的情况下,重构某个片断q 两种有损数据压缩方法:小波变换和主要成分分析两种有损数据压缩方法:小波变换和主要成分分析382.数据索引:位图索引和连接索引2.3.6 数据加载和索引(数据加载和索引(Load/Index)1.数据加载:将数据写入数据仓库或数据集市的过程。q 刷新方式:在定期间隔对目标数据进行批量重写-全部更新加载。q 更新方式:只将源数据中的数据改变写进数据仓库的方法,但不覆盖或删除以前的记录而是通过时间戳来区分-部分更新加载。qSQL命令,例如:INSERT或UPDATEq数据仓库供应商或第三方提供专门的
28、加载工具q由数据仓库管理员编写自定义程序3.手段 传统索引:将给定列上的值映射到具有该值的行表上。连接索引:登记来自两个关系数据库的可连接行。例如:R(RID,A)和S(B,SID)在属性A和B上连接,其连接索引为(RID,SID)。连接索引举例:连接索引举例:402.4 多维数据模型多维数据模型导出数据的特征:1.详细数据和聚集数据并存。2.为特定用户和特定应用定制的数据,并为之提供快速响应。3.数据模型为星型模式。EDW、ODS选择、格式化、聚集数据集市调和数据导出数据导出数据层的存储方式:1.存储在多维数据库中,即按照多维数组方式存储,对应MOLAP。2.存储在关系数据库中,采用星型模式
29、及其变体,对应ROLAP。412.4.1 多维数据模型及其相关概念多维数据模型及其相关概念 1、多维数据模型的相关概念、多维数据模型的相关概念l维:维:是人们观察数据的特定角度,是考虑问题时的一类属性,此类属性的集合构成一个维度。(1)从时间角度观察产品的销售,则时间是一个维(时间维)。(2)从地理分布角度观察产品的销售,则地理分布是一个维(地理维)。l维类别(维分层)维类别(维分层):同一维度可以存在细节程度不同的各个类别属性。例如:时间维包括年、月、日;地理维包括省、市、县。l维属性:维属性:维的一个取值。l度量:度量:多维数据空间中的单元格,用于存放数据,也叫事实。l粒度粒度:是对数据仓
30、库中数据的综合程度高低的一个衡量。l分割分割:将数据分散到各自物理单元中以便能分别处理并提高数据处理效率。2.4 多维数据模型多维数据模型422、数据仓库的概念模型、数据仓库的概念模型q星型模式星型模式(Star schema)事实表在中心,周围围绕地连接着维表(每维一个),事实表含有大量数据,没有冗余。q雪花模式雪花模式(Snowflake schema)星型模式的变种,其中某些维表是规范化的,因而把数据进一步分解到附加表中,模式图形成类似于雪花的形状。q事实星座事实星座(Fact constellations)多个事实表共享维表,这种模式可以看作星型模式集,因此称为星系模式(galaxy
31、schema),或者事实星座(fact constellation)43q星型模式实例星型模式实例 time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcitystate_or_provincecountrylocationSales Fact Table time_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_
32、keybranch_namebranch_typebranch44q雪花模式实例雪花模式实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSales Fact Table time_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_type
33、branchsupplier_keysupplier_typesuppliercity_keycitystate_or_provincecountrycitylocation维表包含属性集:location_key,street,city,province_or_state,country例如:Vancouver和Victoria都是加拿大不列颠哥伦比亚省的城市,此时location维表中这些城市实体的该属性有冗余。45q事实星座模式实例事实星座模式实例time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcitypro
34、vince_or_statecountrylocationSales Fact Tabletime_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranchShipping Fact Tabletime_key item_key shipper_key from_location to_location dollars_cost uni
35、ts_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper46q数据综合级别数据综合级别早期细节级早期细节级当前细节级当前细节级轻度综合级轻度综合级高度综合级高度综合级 q数据的粒度数据的粒度-衡量综合级别的指标衡量综合级别的指标 数据粒度越小数据粒度越小 信息越细节信息越细节 数据粒度级别越低数据粒度级别越低 数据量数据量越大越大 数据粒度越大数据粒度越大 综合度越高综合度越高 数据粒度级别越高数据粒度级别越高 数据量数据量越小越小3、数据综合级别与粒度、数据综合级别与粒度q确定粒度级别需要考虑的因素确定粒度级别需要考虑的
36、因素分析类型分析类型 数据最低粒度数据最低粒度存储数据量存储数据量 47当前细节级轻度综合级高度综合级最近3个月(2001年1月-2001年3月)客户呼叫详细数据1995-2001年按月统计的客户呼叫信息1995-2001年按季度统计的客户呼叫信息1995-2001年按年统计的客户呼叫信息2001年1月以前的呼叫详细数据2001/3数据仓库中数据的状态最近3个月(2001年2月-2001年4月)客户呼叫详细数据1995-2001年按月统计的客户呼叫信息1995-2001年按季度统计的客户呼叫信息1995-2001年按年统计的客户呼叫信息2001年2月以前的呼叫详细数据2001/4数据仓库中数据
37、的状态早期细节级482.4.2多维数据模型的实现多维数据模型的实现 q多维数据库(多维数据库(MDDB)数据存储在大量的多维数组中,而不是关系表中数据存储在大量的多维数组中,而不是关系表中,与之相对与之相对应的是多维联机分析处理(应的是多维联机分析处理(MOLAP)。)。q关系数据库关系数据库 存储存储OLAP数据的另一种主要方式,与之对应的是关系联机数据的另一种主要方式,与之对应的是关系联机分析处理(分析处理(ROLAP)。以关系数据库为核心,以关系型结构进)。以关系数据库为核心,以关系型结构进行多维数据的表示和存储。行多维数据的表示和存储。ROLAP将数据的多维结构划分为两将数据的多维结构
38、划分为两类表:事实表和维表。类表:事实表和维表。492.4.3 多维建模技术简介多维建模技术简介 q满足不同层次、用户的需求满足不同层次、用户的需求q兼顾查询效率与数据粒度的需求兼顾查询效率与数据粒度的需求q支持用户需求的变化支持用户需求的变化q避免对业务运营系统的性能影响避免对业务运营系统的性能影响q提供可扩展性提供可扩展性 创建数据仓库数据模型考虑的因素:创建数据仓库数据模型考虑的因素:502.4.3 多维建模技术简介多维建模技术简介 q由由Inmon提出的企业级数据仓库模型提出的企业级数据仓库模型 基于基于3NF,先建立企业级数据仓库,再在其上开,先建立企业级数据仓库,再在其上开发具体应
39、用。发具体应用。优点:信息全面、系统灵活。优点:信息全面、系统灵活。qKimball提出的多维模型提出的多维模型 以分析主题为基本框架组织数据,基于事实表和以分析主题为基本框架组织数据,基于事实表和维表,事实表的主码由维表的所有主码组成。维表,事实表的主码由维表的所有主码组成。1、主流建模技术、主流建模技术512.4.3 多维建模技术简介多维建模技术简介 2、基于关系数据库的多维数据建模、基于关系数据库的多维数据建模q星型模式星型模式q雪花模式雪花模式q事实星座模式事实星座模式521)星型模式由一个事实表和一系列维表组成)星型模式由一个事实表和一系列维表组成 time_keydayday_of
40、_the_weekmonthquarteryeartimelocation_keystreetcitystate_or_provincecountrylocationSales Fact Table time_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitembranch_keybranch_namebranch_typebranch53q雪花模式中维表是规范的雪花模式中维表是规范的time_keyday
41、day_of_the_weekmonthquarteryeartimelocation_keystreetcity_keylocationSales Fact Table time_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_keyitembranch_keybranch_namebranch_typebranchsupplier_keysupplier_typesuppliercity_keycitystate_
42、or_provincecountrycity54q事实星座模式中多个事实表共享维表事实星座模式中多个事实表共享维表time_keydayday_of_the_weekmonthquarteryeartimelocation_keystreetcityprovince_or_statecountrylocationSales Fact Tabletime_key item_key branch_key location_key units_sold dollars_sold avg_salesMeasuresitem_keyitem_namebrandtypesupplier_typeitemb
43、ranch_keybranch_namebranch_typebranchShipping Fact Tabletime_key item_key shipper_key from_location to_location dollars_cost units_shippedshipper_keyshipper_namelocation_keyshipper_typeshipper553、关于事实表、维表及键的设计、关于事实表、维表及键的设计1)关于事实表)关于事实表q事实表与维表的关系:主键与外键q一个事实表对应一个主题q同一主题不同的粒度对应不同的事实表q度量的计算2)关于维表)关于维表q维表的组成:主键、分类层次、属性说明维表的组成:主键、分类层次、属性说明 主键:自然键,代理键主键:自然键,代理键q维表的作用:说明性信息,为事实表的检索条件维表的作用:说明性信息,为事实表的检索条件q维表的个数:维表的个数:4-15个个562.4.4 一个星型模式的例子一个星型模式的例子57作业:作业:P45P45q1-8 1-8 做到书上即可做到书上即可q作业:作业:9 9,1010,1212q补充题:请给出一个实际问题,设计其面向主题的数补充题:请给出一个实际问题,设计其面向主题的数据仓库星型模式或者雪花模型,或者事实星座模型。据仓库星型模式或者雪花模型,或者事实星座模型。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。