数据仓库的概念模型定义
数据仓库是面向决策进行分析的数据库,无法在数据仓库设计时就确定用户明确而详细的需求,只有一些基本的需求方向、基本的数据需求摆在设计着面前:要做的决策有哪些?决策者感兴趣的是什么问题?解决这些问题需要什么样的信息?
作为传统的业务处理系统的开发,在其开发分析中需要明确业务处理的具体功能,即系统的开发是基于功能驱动的,数据仓库开发人员在数据仓库形成与应用之前是不可能了解数据仓库的功能的。因此,无法采用功能驱动开发方法进行数据仓库的开发,但是,数据仓库的开发人员可以在数据仓库开发之前通过数据仓库的需求分析,了解数据仓库用户的大致需求,即在决策过程中需要什么信息。这样,就可以界定一个数据仓库的大致系统边界,集中精力进行主要部分的开发。因而,界定边界的工作也可看作是数据仓库系统设计的需求分析,因为它将决策者的数据分析的需求用系统边界的定义形式反映出来。
例如,以某个超市的数据仓库设计为例。由于超市的业务需求,已经建立了一些分散的数据库,分别处理各自的业务,各个数据库是按照各个部门的具体需求建立起来的,这样的组织是的数据各自为政、缺乏全局性,管理层想要在这些数据库的基础上得到一些全局报表,进行一些分析工作是比较困难的。因此,超市的管理层决定要在原有的数据库系统基础上建立一个数据仓库。为实现该数据仓库的概念模型的定义,首先需要分析用户的决策需求,其次,分析为实现这些决策分析,数据仓库应该提供哪些信息。
1、数据仓库用户的决策分析
从决定数据仓库的开发初衷来说,超市管理者最迫切的需求是能更准确地把握超市商品的销售情况和库存情况。
为制定一个较长期的营销策略,超市经营者目前所要进行的分析有:客户的购买趋势、商品供应市场的变化趋势,供应商和客户的信息用等级等情况。
2、支持决策的数据需求分析
管理决策者完成以上的决策分析,需要商品销售量、商品采购量、客户情况和供应商情况这样一些数据。
3、数据需求分析工具
为了对数据进行完整的、规范的分析,可以采用用户信息需求表来描述用户的信息需求状况。在用户信息需求表中列出概念模型定义中所确定的数据仓库用户决策分析问题以及所要的信息。在列出所有需要信息的同时,还要明确这些信息的详略程度。例如,对客户购买商品趋势分析时,可能根据客户购买商品时所在的国家、省、市、街道、商店进行分析。此时,应将这些不同层次的信息按照层次的高低一次填写在用户信息需求表中,并且在所需要的信息名称后面表明这些信息可能分成多少个组别,才能满足决策分析的需要。利用这张表可以为客户购买商品趋势分析的主题确定不同的维:时间、地点和商品等,并且可以进一步确定维的层次。
表1 用户信息需求表
4、CRUD矩阵
CRUD矩阵是指利用矩阵的形式来表示各个不同用户对不同操作的动作行为。其中,C是Creat——产生,R是Read——引用,U是Update——更新,D是Delete——删除。
概念模型的定义,不仅需要构建一个ERD模型,还要了解ERD模型中每一个实体的诞生与消亡事件。因为只有在实体诞生以后,数据仓库才能从数据源中获取关于这一实体的数据。当这个实体消亡后,还需要将该实体的消亡状况在数据仓库的元数据中记录下来。为了提高系统的处理效率,在业务处理系统中常将一些历史数据删除,但是在数据仓库中这些历史数据却要保留下来。
例如,在销售业务处理系统中,某个客户第一次购买商品,系统会将一些相关信息记录在案,但是,某个已经记录在案的客户,如果在两年中没有订购商品,就要在业务系统中将其置于停顿状态,如果在三年内没有购买商品,系统将会删除该客户的记录。而在数据仓库中,该客户的信息将长期存在,因为管理人员可能需要了解五年中的客户信息,数据仓库就需要提供销售情况的五年快照。这些快照的信息包含客户的第一次订购时间、最后一次订购时间、目前的状况等信息。为了获取这些信息,在数据仓库的高层模型中就需要使用CRUD矩阵反映实体的生成、引用、更新和删除状况。利用CRUD矩阵还可以使数据源与数据仓库的联系得到确认。在CRUD矩阵中使用只描述那些重要的数据实体事件,对并不重要的实体可以不考虑。
在实体的CRUD时间中,最重要的是CD事件,因为CD事件提供了数据仓库的数据源的数据质量和数据完整性信息。同时,CD事件对数据仓库的时间标识机制会产生较大的影响;而U事件对数据仓库的维护具有重要意义,只有了解了数据源的更新状况,才能确定数据仓库中数据的刷新处理。在使用CRUD矩阵进行概念模型的分析是,可以了解到数千种潜在的数据仓库应用关系,这些应用将会产生大量的实体与功能关系CRUD矩阵,如表2所示。因此,在使用该矩阵时,一定要和用户以及业务系统的使用人员保持紧密的联系,对实体和功能关系的CRUD矩阵进行仔细的分析,存照对数据仓库真正有用的数据源。
表2 实体与功能关系CRUD矩阵
5、企业业务处理系统数据存储表
数据仓库分析人员在数据仓库的概念模型定义中还要了解组织现行业务处理系统的数据存储方式,从中找到数据仓库的数据映射源的物理状况,这对数据仓库的创建与刷新十分重要。因此,需要使用数据存储模式表,如表3所示,将所有的数据源存储模式列出。数据存储表的第一列给出组织现有的各种业务处理系统,其他列为这些业务处理系统中数据的存储模式。根据这张表,数据仓库设计人员还需要对每个数据源进行分析:
·这些数据源存储模式的管理者是否能为数据仓库的建设提供某种程度的支持?
·客户/服务器之间的联接通过那种通信协议予以支持?
·数据源的存储模式使用哪些数据操作语言?
在了解这些情况后,数据仓库设计人员可将数据仓库与特定的业务处理系统中的数据源成功地联结在一起。在了解组织现有的数据源的存储模式时,还要了解现有业务处理系统的数据库是如何管理的,便于为数据仓库与数据源的连接寻找合适的中间件。
表3 现行业务处理系统的数据存储模式表
文章来源于领测软件测试网 https://www.ltesting.net/