ETL模型设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ETL模型设计
传统的关系数据库⼀般采⽤⼆维数表的形式来表⽰数据,⼀个维是⾏,另⼀个维是列,⾏和列的交叉处就是数据元素。

关系数据的基础是关系数据库模型,通过标准的SQL语⾔来加以实现。

数据仓库是多维数据库,它扩展了关系数据库模型,以星形架构为主要结构⽅式的,并在它的基础上,扩展出理论雪花形架构和数据星座等⽅式,但不管是哪⼀种架构,维度表、事实表和事实表中的量度都是必不可少的组成要素。

维度:是多维数据集的结构性特性。

它们是事实数据表中⽤来描述数据的分类的有组织层次结构(级别)。

这些分类和级别分别描述了⼀些相似的成员集合,⽤户将基于这些成员集合进⾏分析。

度量值:在多维数据集中,度量值是⼀组值,这些值基于多维数据集的事实数据表中的⼀列,⽽且通常为数字。

此外,度量值是所分析的多维数据集的中⼼值。

即,度量值是最终⽤户浏览多维数据集时重点查看的数字数据(如销售、⽑利、成本)。

所选择的度量值取决于最终⽤户所请求的信息类型。

⼀些常见的度量值有sales、cost、expenditures和production count等
事实表:是数据聚合后依据某个维度⽣成的结果表。

1)星型模型
星形模型是最常⽤的数据仓库设计结构的实现模式,它使数据仓库形成了⼀个集成系统,为最终⽤户提供报表服务,为⽤户提供分析服务对象。

星形模式通过使⽤⼀个包含主题的事实表和多个包含事实的⾮正规化描述的维度表来⽀持各种决策查询。

星形模型可以采⽤关系型数据库结构,模型的核⼼是事实表,围绕事实表的是维度表。

通过事实表将各种不同的维度表连接起来,各个维度表都连接到中央事实表。

维度表中的对象通过事实表与另⼀维度表中的对象相关联这样就能建⽴各个维度表对象之间的联系。

每⼀个维度表通过⼀个主键与事实表进⾏连接。

事实表主要包含了描述特定商业事件的数据,即某些特定商业事件的度量值。

⼀般情况下,事实表中的数据不允许修改,新的数据只是简单地添加进事实表中,维度表主要包含了存储在事实表中数据的特征数据。

每⼀个维度表利⽤维度关键字通过事实表中的外键约束于事实表中的某⼀⾏,实现与事实表的关联,这就要求事实表中的外键不能为空,这与⼀般数据库中外键允许为空是不同的。

这种结构使⽤户能够很容易地从维度表中的数据分析开始,获得维度关键字,以便连接到中⼼的事实表,进⾏查询,这样就可以减少在事实表中扫描的数据量,以提⾼查询性能。

使⽤星形模式主要有两⽅⾯的原因:提⾼查询的效率。

采⽤星形模式设计的数据仓库的优点是由于数据的组织已经过预处理,主要数据都在庞⼤的事实表中,所以只要扫描事实表就可以进⾏查询,⽽不必把多个庞⼤的表联接起来,查询访问效率较⾼,同时由于维表⼀般都很⼩,甚⾄可以放在⾼速缓存中,与事实表进⾏连接时其速度较快,便于⽤户理解;对于⾮计算机专业的⽤户⽽⾔,星形模式⽐较直观,通过分析星形模式,很容易组合出各种查询。

2)雪花模型
雪花模型是对星形模型的扩展,每⼀个维度都可以向外连接多个详细类别表。

在这种模式中,维度表除了具有星形模型中维度表的功能外,还连接对事实表进⾏详细描述的详细类别表,详细类别表通过对事实表在有关维上的详细描述达到了缩⼩事实表和提⾼查询效率的⽬的。

雪花模型对星形模型的维度表进⼀步标准化,对星形模型中的维度表进⾏了规范化处理。

雪花模型的维度表中存储了正规化的数据,这种结构通过把多个较⼩的标准化表(⽽不是星形模型中的⼤的⾮标准化表)联合在⼀起来改善查询性能。

由于采取了标准化及维的低粒度,雪花模型提⾼了数据仓库应⽤的灵活性。

这些连接需要花费相当多的时间。

⼀般来说,⼀个雪花形图表要⽐⼀个星形图表效率低。

3)星座模式
⼀个复杂的商业智能应⽤往往会在数据仓库中存放多个事实表,这时就会出现多个事实表共享某⼀个或多个维表的情况,这就是事实星座,也称为星系模式(galaxy schema)。

4)数据集市
数据集市是在构建数据仓库的时候经常⽤到的⼀个词汇。

如果说数据仓库是企业范围的,收集的是关于整个组织的主题,如顾客、商品、销售、资产和⼈员等⽅⾯的信息,那么数据集市则是包含企业范围数据的⼀个⼦集,例如只包含销售主题的信息,这样数据集市只对特定的⽤户是有⽤的,其范围限于选定的主题。

数据集市⾯向企业中的某个部门(或某个主题)是从数据仓库中划分出来的,这种划分可以是逻辑上的,也可以是物理上的。

数据仓库中存放了企业的整体信息,⽽数据集市只存放了某个主题需要的信息,其⽬的是减少数据处理量,使信息的利⽤更加快捷和灵活。

数据仓库由于是企业范围的,能对多个相关的主题建模,所以在设计其数据构成时⼀般采⽤星系模式。

相关文档
最新文档