数据仓库主题设计及元数据设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
明确仓库的对象:主题和元数据
大多数商务数据都是多维的,所以采集和表示三维以上的数据不能完全借用业务数据库设计中的方法,必须有一种新的方法来表达多维数据。现阶段流行的有2种方法,一是面向对象方法,即把商务数据抽象为对象,再使用Rational Rose等对象建模工具来表达这些对象;另一种方法就是使用信息包图,这是一种简便且高效的方法,在项目中使用的普及率很高。
信息包图实际上是自上而下数据建模方法的一个很好的工具。自上而下的建模技术从用户的观点开始设计。用户的观点是通过与用户交流得到的,可以进一步明确用户的信息需求。自上而下的方法几乎考虑了所有的信息源,以及这些信息源影响商务活动的方式,它使得设计者可以围绕着一个通常的主题或商务领域进行信息包的开发。
下面就详述如何通过信息打包技术建立信息包图,从而确定数据仓库中的主题和元数据。
3.4.1 信息打包技术
1.信息打包技术的基本使用
信息打包法是一种自顶向下的设计方法,它从管理者的角度出发把焦点集中在企业的一个或几个主题上,着重分析主题所涉及数据的多维特性。此法具体分4个阶段:(1)采用自顶向下的方法对商务数据的多维特性进行分析,用信息打包图表示维度和类别之间的传递和映射关系,建立概念模型。其中类别是按一定的标准对一个维度的分类划分,如产品可按颜色、质地、产地和销地等不同标准分类。
(2)对企业的大量的指标实体数据进行筛选,提取出可利用的中心指标。其中指标也称为关键性能指标和关键商务测量的值,是在维度空间衡量商务信息的一种方法。比如产品收入金额、原材料消耗、补充新雇员或设备运行时间等都可以叫做指标。
(3)在信息打包图的基础上构造星形图,对其中的详细类别实体进行分析,进一步扩展为雪花图,建立逻辑模型。
(4)在星形图和雪花图的基础上,根据所定义数据标准,通过对实体、键标、非键标、数据容量、更新频率和实体特征进行定义,完成物理数据模型的设计。
信息包图可以帮助用户完成以下工作:
定义某一商务中涉及的共同主题范围,例如:时间、顾客、地理位置和产品。
设计可以跟踪的、确定一个商务事件怎样被运行和完成的关键商务指标。
决定数据怎样被传递给数据仓库的用户。
确定用户怎样按层次聚合数据和移动数据。
决定在给定的用户分析或查询中实际包含了多少数据。
定义怎样访问数据,它的进入点是什么。用户想访问哪里,以及怎样引导进入信息包。
估计数据仓库大小。
确定一个数据仓库里数据的更新频率。
制定信息怎样被打包才能更好地提供给用户。
图3-24是一个空白的信息包图。注意信息包图上面的横线,这里要写上信息包的说明。可以有选择地填上概括说明和详细说明或者说明信息包图描述的是什么信息。而阴影部分就是代表在一定的维度和类别下的度量指标,这部分体现的就是数据分析的主要任务,在制作信息包图时需要和用户一起完成。
在以后对AdventureWorksDW数据仓库的分析中,主要是对Adventure Works Cycles公司的销售情况进行分析,根据前面对需求的分析,结合信息打包法的4个阶段,可以通过如下的方法建立信息包图。
图3-24 一个空白的信息包
(1)获取各个商务部门对商务数据的多维特性分析结果,确定影响销售的维度,这里可以提炼出日期、区域、产品、客户年龄和客户状况等5个维度。
(2)对每个维度进行分析,确定它与类别之间的传递和映射关系,如在AdventureWorks 业务数据库中,日期有年、季度和月甚至更小的级别,而区域一般就分为国家、地区、城市和具体的商店。
(3)确定用户需要的指标体系,这里以销售情况作为事实依据确定相关的销售指标,如实际销售、计划销售、预测销售、计划偏差和预测偏差等。
有了以上的分析,就可以画出销售分析的信息包图,如图3-25所示,其他分析需求的信息包图可以用类似的方法表示。
图3-25 销售分析的信息包图
(4)这一步可以在信息打包图的基础上构造星形图,如图3-26所示。然后根据实际情况,把详细类别实体连接到星形图中就可以得到企业数据仓库的雪花模型。如在这里的AdventureWorks业务数据库中,已经通过表“ProductCategory”、“ProductSubcategory”和“Product”对产品进行了层次分类,把它们挂到图3-26的星形图中可以形成图3-27所示的雪花架构图。
图3-26 信息包图的基础上构造的星形图
图3-27 在星形图基础上构建的雪花架构图
注意,按照设计惯例,指标实体、维度实体和详细类别实体分别用矩形、菱形和六角形表示。
通过以上技术,实际上建立起了数据仓库的概念模型和逻辑模型。如图3-25所示的信息包图是在最终用户和技术人员共同完成的,通过它数据的构成便由客观世界转换到了主观世界。而图3-26则属于逻辑模型,因为它在信息包图的基础上将信息转换成了关系模型。对比最终数据仓库的架构(在,这时离构建完整的数据仓库数据库已经很近了。
2.信息动态打包
信息打包图中涉及的维度及其对应的类别是事先固定的。这种将维度和类别固定所带来的最直接的问题是,所设计的数据仓库不仅对一些特定的查询分析操作的适应能力差,而且当查询或分析的要求发生变化时根本无法适应。解决该问题的方法是允许维度和类别进行自由改变,这就是信息动态打包的方法。
信息动态打包包括2方面的内容:与该指标分析对应的维度的动态组合及与维度关联的类别的动态组合。参考南京大学李雪梅等人的《一种基于信息动态打包的数据仓库的设计方法》一文,可以得到信息动态打包方法的7步大法。
(1)采用自顶向下的方法,通过与企业的领导和管理人员交谈挖掘出尽可能多的主题,然后根据这些主题找出对应的指标实体,进一步对每个指标实体采用基本信息打包法分析出其中包含的最明显的维度实体。
图3-28和图3-29分别是对销售分析和顾客人口统计分析得到的两个星形图,其中前者包括时间、地区和产品3个维度实体,后者包括时间、地区和顾客3个维度实体。
图3-28 从销售分析的星形图
图3-29 从顾客统计分析的星形图
(2)综合考虑所有的主题,采用指标实体矩阵对定义的信息包和维度实体进行统一和标准化处理。利用图3-30所示的统一实体矩阵来消除实体定义中的歧异和不一致,从而保证数据仓库中实体定义的一致性。矩阵中交叉点的‘X’表示相关。
图3-30 统一实体矩阵
(3)对于单个指标实体(信息包)找出所有的与该指标实体相关的但属于其他信息包的维度实体,再根据其与该信息包的相关程度进行排序,得到该指标实体的一个所有相关维度指标的一个有序集。需要特别指出的是,由于维度定义的相对性,当某些详细类别实体中的单个类别与指标实体的查询或分析密切相关时也可以将它作为单独的维度实体。如顾客细节实体中包括年龄组、性别、收入组、职业、教育和婚姻状况等,而其中年龄组、性别、收入组和职业与销售分析密切相关,故可以将它们分别作为销售的不同的维度实体。这样我们就可以得到与销售分析相关的维度实体集Dim销售={时期,地区,产品,年龄组,性别,收入组,职业}。这里我们定义前3者的相关度为1,其他维度实体的相关度为0.5。
(4)对于每个维度实体,进行类别划分,找出所有可行类别。然后对这些类别的划分条件根据其粒度从大到小进行排序,得到该维度实体的类别指标的一个有序集。
(5)创建指标实体的动态维。可以把维度实体分为2类,一类是指对该指标实体的分析必不可少的维度实体,称之为必需维;另一类则可以根据需要自由选择,称为可选维。如DIM销售集合中,时期、地区和产品是必需维,其余的则是可选维。
(6)创建与维度实体对应的动态类别实体。不同于维度实体,类别实体均设为可选的,类别实体可以根据具体情况自行确定。