第三章 数据仓库的数据存储与处理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系 统 分 析 与 设 计
第三章
2012-3-12
3.2 数据粒度
定义 粒度是指数据仓库的数据单位中保存数据的细化或综合程 度的级别。细化程度越高,粒度级就越小;相反, 度的级别。细化程度越高,粒度级就越小;相反,细化程度越 粒度级就越大。 低,粒度级就越大。 粒度深深地影响存放在数据仓库中数据量的大小, 粒度深深地影响存放在数据仓库中数据量的大小,同时影 响数据仓库所能回答的查询类型。 响数据仓库所能回答的查询类型。 在数据仓库中的数据粒度与查询的详细程度之间要做出权 衡。
第三章
2012-3-12
加载管理器
建议 用户尽量选用适合的软件工具来协助进行整个加载 管理的工作; 管理的工作; 但是,因为源数据的特性存在很大的差异,数据仓 但是,因为源数据的特性存在很大的差异, 库中加载管理器的功能无法一致, 库中加载管理器的功能无法一致,所以不可能完全使用 外购的软件工具, 外购的软件工具,而必须自行设计针对特殊需要而编写 的程序、存储过程或是脚本文件。 的程序、存储过程或是脚本文件。
维的层次
人们观察数据的某个特定角度还可以存在细节程度不同的多个 描述,这就是维的层次。一个维往往有多个层次, 描述,这就是维的层次。一个维往往有多个层次,比如描述时间维 可以从年份、季度、月份、天等不同层次来描述,那么年份、 时,可以从年份、季度、月份、天等不同层次来描述,那么年份、 季度、月份和天就是时间维的层次; 季度、月份和天就是时间维的层次;
系 统 分 析 与 设 计
• 复杂度
视数据仓库系统而定。 视数据仓库系统而定。
2012-3-12
第三章
查询管理器
系 统 分 析 与 设 计
第三章
2012-3-12
查询管理器的具体功能
• 将查询引导至正确的表
• 实现客户查询的调度
查询管理器将把查询统计分析的结果存入查询概述 文件,供仓库管理器使用, 文件 , 供仓库管理器使用, 以决定为哪些项目执行数据 集合的工作。 集合的工作。
系 统 分 析 与 设 计
概念模型 逻辑模型 物理模型
2012-3-12
第三章
3.3 数据模型
• 概念模型 客观世界到计算机系统的一个中间层次, 客观世界到计算机系统的一个中间层次,它最常用 的表示方法是E- 法 实体-关系)。 的表示方法是 -R法(实体-关系)。 目前,数据仓库一般是建立在关系型数据库的基础 目前, 之上, 之上,所以其概念模型与一般关系型数据库采用的概念 模型相一致。 模型相一致。
city
city_key city province_or_street country
第三章 数据仓库的数据存储与处理
系 统 分 析 与 设 计
第三章
2012-3-12
3.1 数据仓库组成
系 统 分 析 与 设 计
第三章
2012-3-12
数据仓库的管理器
• 加载管理器
执行程序: 执行程序:抽取与加载程序 功能:抽取并加载数据、 功能:抽取并加载数据、在加载数据之前与进行中执行简单的 转换
系 统 分 析 与 设 计
第三章
2012-3-12
星型结构的实例
time
time_key day day_of_the_week month quarter year
item
Sales Fact Table time_key item_key branch_key
item_key item_name brand type supplier_type
系 统 分 析 与 设 计
第三章
2012-3-12
仓库管理器
系 统 分 析 与 设 计
第三章
2012-3-12
仓库管理器的具体功能
• • • • • • • • 检验各字段相互之间的关系与一致性 将临时保在存储介质中的数据转换与合并, 将临时保在存储介质中的数据转换与合并,然后加载至数据仓库 对数据仓库数据添加索引、视图、 对数据仓库数据添加索引、视图、数据分区 根据需要进行数据的标准化 根据需要生成新的集合信息 更新已有的集合信息 备份数据仓库(完整或是递增式) 备份数据仓库(完整或是递增式) 备存数据仓库中过时的数据(另存至其它存储介质) 备存数据仓库中过时的数据(另存至其它存储介质)
第三章
加载管理器
• 功能 支持数据抽取与加载 • 实现途径 1)外购的软件工具 (1)外购的软件工具 (2)针对特殊要求而编写程序 针对特殊要求而编写程序、 (2)针对特殊要求而编写程序、存储过程以及脚本文 件
系 统 分 析 与 设 计
第三章
2012-3-12
加载管理器
系 统 分 析 与 设 计
2012-3-12
第三章
雪花结构的实例
time
time_key day day_of_the_week month quarter year
item
Sales Fact Table time_key item_key branch_key
item_key item_name brand type supplier_key
系 统 分 析 与 设 计
branch
branch_key branch_name branch_type
location
location_key street city province_or_street country
location_key units_sold dollars_sold avg_sales Measures
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
目前,对数据仓库模型的讨论大多集中在逻辑模型, 目前,对数据仓库模型的讨论大多集中在逻辑模型,其中最常 用的是多维模型。 用的是多维模型。
维
人们观察数据的特定角度。例如, 人们观察数据的特定角度。例如,企业常常关心不同销售数据 随时间的变化情况,所以时间就是一个维; 随时间的变化情况,所以时间就是一个维;
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
数据模型是对现实世界的一种抽象, 数据模型是对现实世界的一种抽象,根据抽象程度 的不同,可形成不同抽象层次上的数据模型。 的不同,可形成不同抽象层次上的数据模型。与数据库 的数据模型相类似, 的数据模型相类似,数据仓库的数据模型也分为三个层 次:
系 统 分 析 与 设 计
2012-3-12
第三章
查询管理器
• 功能
执行管理数据仓库系统中所有查询工作的相关处理程序。 执行管理数据仓库系统中所有查询工作的相关处理程序。
• 实现途径
(1)外购调度软件 (2)使用用户存取工具 (3)数据仓库系统所提供的系统监控工具 (4)数据库管理系统所提供的管理工具 (5)针对特殊需要而编写程序以及脚本文件
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 物理模型 是逻辑模型的具体实现,如物理存取方式、 是逻辑模型的具体实现,如物理存取方式、数据存 储结构、数据存放位置以及存储分配等。 储结构、数据存放位置以及存储分配等。在设计数据仓 库的物理模型时,需要考虑一些提高性能的技术, 库的物理模型时,需要考虑一些提高性能的技术,如表 分区,建立索引等。 分区,建立索引等。
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 逻辑模型 指数据的逻辑结构,如多维模型、关系模型、 指数据的逻辑结构,如多维模型、关系模型、层次 模型等。 模型等。数据仓库的逻辑模型描述了数据仓库的主题的 逻辑实现,即每个主题对应的模式定义。 逻辑实现,即每个主题对应的模式定义。
系 统 分 析 与 设 计
第三章
2012-3-12
系 统 分 析 与 设 计
左图是一个低粒度级,每个活动(在这里是一次电话) 左图是一个低粒度级,每个活动(在这里是一次电话)被详细 记录下来,数据的格式如图所示。到月底每个顾客平均有200条 记录下来, 数据的格式如图所示。 到月底每个顾客平均有200条 200 记录(全月中每个电话都记录一次) 因而总共需要40000个字节; 40000个字节 记录(全月中每个电话都记录一次),因而总共需要40000个字节; 右图的边是一个高粒度级。数据代表一位顾客一个月的综合 右图的边是一个高粒度级。 信息,每位顾客一个月只有一个记录,这样的记录大约只需200 信息,每位顾客一个月只有一个记录,这样的记录大约只需200 个字节。 个字节。
系 统 分 析 与 设 计
2012-3-12
第三章
3.3 数据模型
• 星型架构的维度表只会与事实表生成关系,维度表与 星型架构的维度表只会与事实表生成关系, 维度表之间并不会生成任何的关系。 维度表之间并不会生成任何的关系。 • 雪花型架构描述可合并在一起使用的维度数据。 雪花型架构描述可合并在一起使用的维度数据。
系 统 分 析 与 设 计
Hale Waihona Puke Baidu
2012-3-12
第三章
3.3 数据模型
维成员 维的一个取值称为该维的一个成员。如果一个维是多层次的, 维的一个取值称为该维的一个成员。如果一个维是多层次的, 那么该维的成员就是在不同层次取值的组合。例如时间维分为年、 那么该维的成员就是在不同层次取值的组合。例如时间维分为年、 月和天三个层次则分别在其上各取一个值组合起来即得到日期维的 一个成员, 某年某月某日” 一个成员,即“某年某月某日”; 度量 描述了要分析的数值,例如话费、用户数量等; 描述了要分析的数值,例如话费、用户数量等;
系 统 分 析 与 设 计
第三章
2012-3-12
3.2 数据粒度
当提高粒度级别时, 当提高粒度级别时,数据所能回答查询的能力会 随之降低。换言之,在一个很低的粒度级别上, 随之降低。换言之,在一个很低的粒度级别上,几乎 可以回答任何问题,但在高粒度级别上, 可以回答任何问题,但在高粒度级别上,数据所能处 理的问题的数量是有限的。 理的问题的数量是有限的。
supplier
supplier_key supplier_type
系 branch 统 branch_key 分 branch_name 析 branch_type 与 设 计
location
location_key street city_key
location_key units_sold dollars_sold avg_sales
2012-3-12
第三章
问题: 上星期某某顾客是否给某某人打了电话 问题:“上星期某某顾客是否给某某人打了电话?” 在低粒度级别上, 完全可以回答这一问题, 在低粒度级别上 , 完全可以回答这一问题 , 虽然 这种回答将花费大量资源去查询大量的记录, 这种回答将花费大量资源去查询大量的记录 , 但是 问题结果是可以确定的。 问题结果是可以确定的。 在高粒度级别上, 则无法明确地回答这个问题。 在高粒度级别上 , 则无法明确地回答这个问题 。 假如在数据仓库中存放的只是所打电话的总数, 假如在数据仓库中存放的只是所打电话的总数 , 那 么就无法确定其中是否有一个电话是打给某人的。 么就无法确定其中是否有一个电话是打给某人的。
• 仓库管理器
执行程序:数据整理与转换程序、 执行程序:数据整理与转换程序、备份与备存程序 功能:转换并管理数据仓库数据、 功能:转换并管理数据仓库数据、备份与备存数据
• 查询管理器
系 统 分 析 与 设 计
执行程序: 执行程序:查询管理程序 功能: 功能:引导并管理数据仓库的查询
2012-3-12
系 统 分 析 与 设 计
第三章
2012-3-12
加载管理器的具体功能
• • • •
系 统 分 析 与 设 计
抽取来自源系统的数据 将抽取的数据快速加载临时保存介质 执行简单的数据转换任务 将转换后数据加载至与数据仓库类似的数据 结构之中
2012-3-12
第三章
仓库管理器
• 功能 执行管理一个数据仓库所需的必要程序 • 实现途径 (1)外购的系统管理工具 (2)针对特殊需要而编写的程序以及脚本文件 • 复杂度 因自动化的程度而异
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 数据仓库的数据模型 星型结构 雪花型结构 星型雪花型结构 • 数据仓库的数据=事实数据+维度数据 数据仓库的数据=事实数据+ 不论是星型、 不论是星型、雪花型或者是星型雪花型结构都是以 事实表为中心。 事实表为中心。不同点只是在外围维度表相互之间的关 系不同而已。 系不同而已。
第三章
2012-3-12
3.2 数据粒度
定义 粒度是指数据仓库的数据单位中保存数据的细化或综合程 度的级别。细化程度越高,粒度级就越小;相反, 度的级别。细化程度越高,粒度级就越小;相反,细化程度越 粒度级就越大。 低,粒度级就越大。 粒度深深地影响存放在数据仓库中数据量的大小, 粒度深深地影响存放在数据仓库中数据量的大小,同时影 响数据仓库所能回答的查询类型。 响数据仓库所能回答的查询类型。 在数据仓库中的数据粒度与查询的详细程度之间要做出权 衡。
第三章
2012-3-12
加载管理器
建议 用户尽量选用适合的软件工具来协助进行整个加载 管理的工作; 管理的工作; 但是,因为源数据的特性存在很大的差异,数据仓 但是,因为源数据的特性存在很大的差异, 库中加载管理器的功能无法一致, 库中加载管理器的功能无法一致,所以不可能完全使用 外购的软件工具, 外购的软件工具,而必须自行设计针对特殊需要而编写 的程序、存储过程或是脚本文件。 的程序、存储过程或是脚本文件。
维的层次
人们观察数据的某个特定角度还可以存在细节程度不同的多个 描述,这就是维的层次。一个维往往有多个层次, 描述,这就是维的层次。一个维往往有多个层次,比如描述时间维 可以从年份、季度、月份、天等不同层次来描述,那么年份、 时,可以从年份、季度、月份、天等不同层次来描述,那么年份、 季度、月份和天就是时间维的层次; 季度、月份和天就是时间维的层次;
系 统 分 析 与 设 计
• 复杂度
视数据仓库系统而定。 视数据仓库系统而定。
2012-3-12
第三章
查询管理器
系 统 分 析 与 设 计
第三章
2012-3-12
查询管理器的具体功能
• 将查询引导至正确的表
• 实现客户查询的调度
查询管理器将把查询统计分析的结果存入查询概述 文件,供仓库管理器使用, 文件 , 供仓库管理器使用, 以决定为哪些项目执行数据 集合的工作。 集合的工作。
系 统 分 析 与 设 计
概念模型 逻辑模型 物理模型
2012-3-12
第三章
3.3 数据模型
• 概念模型 客观世界到计算机系统的一个中间层次, 客观世界到计算机系统的一个中间层次,它最常用 的表示方法是E- 法 实体-关系)。 的表示方法是 -R法(实体-关系)。 目前,数据仓库一般是建立在关系型数据库的基础 目前, 之上, 之上,所以其概念模型与一般关系型数据库采用的概念 模型相一致。 模型相一致。
city
city_key city province_or_street country
第三章 数据仓库的数据存储与处理
系 统 分 析 与 设 计
第三章
2012-3-12
3.1 数据仓库组成
系 统 分 析 与 设 计
第三章
2012-3-12
数据仓库的管理器
• 加载管理器
执行程序: 执行程序:抽取与加载程序 功能:抽取并加载数据、 功能:抽取并加载数据、在加载数据之前与进行中执行简单的 转换
系 统 分 析 与 设 计
第三章
2012-3-12
星型结构的实例
time
time_key day day_of_the_week month quarter year
item
Sales Fact Table time_key item_key branch_key
item_key item_name brand type supplier_type
系 统 分 析 与 设 计
第三章
2012-3-12
仓库管理器
系 统 分 析 与 设 计
第三章
2012-3-12
仓库管理器的具体功能
• • • • • • • • 检验各字段相互之间的关系与一致性 将临时保在存储介质中的数据转换与合并, 将临时保在存储介质中的数据转换与合并,然后加载至数据仓库 对数据仓库数据添加索引、视图、 对数据仓库数据添加索引、视图、数据分区 根据需要进行数据的标准化 根据需要生成新的集合信息 更新已有的集合信息 备份数据仓库(完整或是递增式) 备份数据仓库(完整或是递增式) 备存数据仓库中过时的数据(另存至其它存储介质) 备存数据仓库中过时的数据(另存至其它存储介质)
第三章
加载管理器
• 功能 支持数据抽取与加载 • 实现途径 1)外购的软件工具 (1)外购的软件工具 (2)针对特殊要求而编写程序 针对特殊要求而编写程序、 (2)针对特殊要求而编写程序、存储过程以及脚本文 件
系 统 分 析 与 设 计
第三章
2012-3-12
加载管理器
系 统 分 析 与 设 计
2012-3-12
第三章
雪花结构的实例
time
time_key day day_of_the_week month quarter year
item
Sales Fact Table time_key item_key branch_key
item_key item_name brand type supplier_key
系 统 分 析 与 设 计
branch
branch_key branch_name branch_type
location
location_key street city province_or_street country
location_key units_sold dollars_sold avg_sales Measures
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
目前,对数据仓库模型的讨论大多集中在逻辑模型, 目前,对数据仓库模型的讨论大多集中在逻辑模型,其中最常 用的是多维模型。 用的是多维模型。
维
人们观察数据的特定角度。例如, 人们观察数据的特定角度。例如,企业常常关心不同销售数据 随时间的变化情况,所以时间就是一个维; 随时间的变化情况,所以时间就是一个维;
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
数据模型是对现实世界的一种抽象, 数据模型是对现实世界的一种抽象,根据抽象程度 的不同,可形成不同抽象层次上的数据模型。 的不同,可形成不同抽象层次上的数据模型。与数据库 的数据模型相类似, 的数据模型相类似,数据仓库的数据模型也分为三个层 次:
系 统 分 析 与 设 计
2012-3-12
第三章
查询管理器
• 功能
执行管理数据仓库系统中所有查询工作的相关处理程序。 执行管理数据仓库系统中所有查询工作的相关处理程序。
• 实现途径
(1)外购调度软件 (2)使用用户存取工具 (3)数据仓库系统所提供的系统监控工具 (4)数据库管理系统所提供的管理工具 (5)针对特殊需要而编写程序以及脚本文件
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 物理模型 是逻辑模型的具体实现,如物理存取方式、 是逻辑模型的具体实现,如物理存取方式、数据存 储结构、数据存放位置以及存储分配等。 储结构、数据存放位置以及存储分配等。在设计数据仓 库的物理模型时,需要考虑一些提高性能的技术, 库的物理模型时,需要考虑一些提高性能的技术,如表 分区,建立索引等。 分区,建立索引等。
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 逻辑模型 指数据的逻辑结构,如多维模型、关系模型、 指数据的逻辑结构,如多维模型、关系模型、层次 模型等。 模型等。数据仓库的逻辑模型描述了数据仓库的主题的 逻辑实现,即每个主题对应的模式定义。 逻辑实现,即每个主题对应的模式定义。
系 统 分 析 与 设 计
第三章
2012-3-12
系 统 分 析 与 设 计
左图是一个低粒度级,每个活动(在这里是一次电话) 左图是一个低粒度级,每个活动(在这里是一次电话)被详细 记录下来,数据的格式如图所示。到月底每个顾客平均有200条 记录下来, 数据的格式如图所示。 到月底每个顾客平均有200条 200 记录(全月中每个电话都记录一次) 因而总共需要40000个字节; 40000个字节 记录(全月中每个电话都记录一次),因而总共需要40000个字节; 右图的边是一个高粒度级。数据代表一位顾客一个月的综合 右图的边是一个高粒度级。 信息,每位顾客一个月只有一个记录,这样的记录大约只需200 信息,每位顾客一个月只有一个记录,这样的记录大约只需200 个字节。 个字节。
系 统 分 析 与 设 计
2012-3-12
第三章
3.3 数据模型
• 星型架构的维度表只会与事实表生成关系,维度表与 星型架构的维度表只会与事实表生成关系, 维度表之间并不会生成任何的关系。 维度表之间并不会生成任何的关系。 • 雪花型架构描述可合并在一起使用的维度数据。 雪花型架构描述可合并在一起使用的维度数据。
系 统 分 析 与 设 计
Hale Waihona Puke Baidu
2012-3-12
第三章
3.3 数据模型
维成员 维的一个取值称为该维的一个成员。如果一个维是多层次的, 维的一个取值称为该维的一个成员。如果一个维是多层次的, 那么该维的成员就是在不同层次取值的组合。例如时间维分为年、 那么该维的成员就是在不同层次取值的组合。例如时间维分为年、 月和天三个层次则分别在其上各取一个值组合起来即得到日期维的 一个成员, 某年某月某日” 一个成员,即“某年某月某日”; 度量 描述了要分析的数值,例如话费、用户数量等; 描述了要分析的数值,例如话费、用户数量等;
系 统 分 析 与 设 计
第三章
2012-3-12
3.2 数据粒度
当提高粒度级别时, 当提高粒度级别时,数据所能回答查询的能力会 随之降低。换言之,在一个很低的粒度级别上, 随之降低。换言之,在一个很低的粒度级别上,几乎 可以回答任何问题,但在高粒度级别上, 可以回答任何问题,但在高粒度级别上,数据所能处 理的问题的数量是有限的。 理的问题的数量是有限的。
supplier
supplier_key supplier_type
系 branch 统 branch_key 分 branch_name 析 branch_type 与 设 计
location
location_key street city_key
location_key units_sold dollars_sold avg_sales
2012-3-12
第三章
问题: 上星期某某顾客是否给某某人打了电话 问题:“上星期某某顾客是否给某某人打了电话?” 在低粒度级别上, 完全可以回答这一问题, 在低粒度级别上 , 完全可以回答这一问题 , 虽然 这种回答将花费大量资源去查询大量的记录, 这种回答将花费大量资源去查询大量的记录 , 但是 问题结果是可以确定的。 问题结果是可以确定的。 在高粒度级别上, 则无法明确地回答这个问题。 在高粒度级别上 , 则无法明确地回答这个问题 。 假如在数据仓库中存放的只是所打电话的总数, 假如在数据仓库中存放的只是所打电话的总数 , 那 么就无法确定其中是否有一个电话是打给某人的。 么就无法确定其中是否有一个电话是打给某人的。
• 仓库管理器
执行程序:数据整理与转换程序、 执行程序:数据整理与转换程序、备份与备存程序 功能:转换并管理数据仓库数据、 功能:转换并管理数据仓库数据、备份与备存数据
• 查询管理器
系 统 分 析 与 设 计
执行程序: 执行程序:查询管理程序 功能: 功能:引导并管理数据仓库的查询
2012-3-12
系 统 分 析 与 设 计
第三章
2012-3-12
加载管理器的具体功能
• • • •
系 统 分 析 与 设 计
抽取来自源系统的数据 将抽取的数据快速加载临时保存介质 执行简单的数据转换任务 将转换后数据加载至与数据仓库类似的数据 结构之中
2012-3-12
第三章
仓库管理器
• 功能 执行管理一个数据仓库所需的必要程序 • 实现途径 (1)外购的系统管理工具 (2)针对特殊需要而编写的程序以及脚本文件 • 复杂度 因自动化的程度而异
系 统 分 析 与 设 计
第三章
2012-3-12
3.3 数据模型
• 数据仓库的数据模型 星型结构 雪花型结构 星型雪花型结构 • 数据仓库的数据=事实数据+维度数据 数据仓库的数据=事实数据+ 不论是星型、 不论是星型、雪花型或者是星型雪花型结构都是以 事实表为中心。 事实表为中心。不同点只是在外围维度表相互之间的关 系不同而已。 系不同而已。