数据仓库的开发流程.ppt
数据仓库的技术与开发,数据仓库设计开发流程,数据库系统的开发流程,数据库设计流程的特点,有明确的应用需求;严格遵循系统生命同期的阶段划分,较清楚的设计开发步骤;良好的可操作性,每一步骤的任务、文档内容与格式有细致的规定。举例:项目文档,数据库设计举例,1.需求分析(沟通、会议演示、软件需求说明书)2.系统概念设计(系统功能结构、流程、数据结构等)3.系统详细设计(E-R、功能模块、界面、业务过程、接口)5.系统实现(数据库实现、程序实现)4.系统测试与实施,数据库与数据仓库设计的区别,数据仓库开发流程的特点,原始需求不明确,且不断变化与增加,不能较准确地预见到以后的需求;采用原型法开发,从构建系统的简单的基本框架着手;数据驱动,着眼于有效地抽取、综合、集成和挖掘已有数据库的数据资源。,原型法,原型(Prototype)是开发信息系统的一个可执行模型或引导性版本;帮助得到目标系统明确而严格的需求,促进客户和各阶段系统人员之间的相互有效的信息交流,并以此为基础进行需求分析和系统设计。从本质上看,原型是未来目标系统的一个模型。,原型法,原型不是系统开发的最终产品,而是在某个开发阶段中为达到一定的目的所生成的系统简化模拟版本;可能只是目标系统的一个式样,或只包含目标系统的某些功能,或仅仅是具有目标系统的一个结构。,原型法,数据仓库的开发流程,数据仓库的开发流程,数据仓库系统的开发是一个经过不断循环、反馈而使系统不断增长与完善的过程,这也是原型法区别于系统生命周期法的主要特点。,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,数据仓库的设计步骤,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库运行与维护,概念模型设计,任务:界定系统边界 确定主题域及其属性描述 数据模型(多维数据模型,或E-R)成果:是在原有的数据库的基础上建立一个较为稳固的概念模型。,概念模型设计,任务:界定系统边界 确定主题域及其属性描述 数据模型(多维数据模型,或E-R)成果:是在原有的数据库的基础上建立一个较为稳固的概念模型。,界定系统边界(初步需求分析),基本的方向性需求:要做的决策类型有哪些?决策者感兴趣的是什么问题?这些问题需要什么样的信息?要得到这些信息需要包含原有数据库系统的哪些部分的数据?可以划定一个当前的大致的系统边界,集中精力进行最需要的部分的开发。,概念模型设计,任务:界定系统边界 确定主题域及其属性描述 数据模型(多维数据模型,或E-R)成果:是在原有的数据库的基础上建立一个较为稳固的概念模型。,确定主题域及其内容,确定主要的主题域对每个主题域的内容进行较明确的描述:主题域的公共码键;主题域之间的联系;充分代表主题的属性组。举例以商场的数据仓库设计为例,商场数据仓库概念模型设计,日趋激烈的市场竞争要求商场经营者更加准确地了解商场经营状况,跟踪市场趋势,更加合理地制定商品采购与销售策略。由于商场以前的一些OLTP 的需要,在各个部门建立了许多分散的数据库,分别处理各自的业务。如在人事、采购、库存、销售等部门分别存储着各自的数据库,各个部门的数据按自己业务需要加以组织。这样的组织使得数据各自为政,缺乏全局性,管理层想要在这些数据的基础上得到一些全局报表、进行一些分析工作是比较困难的。因此商场的领导决定要在原有的数据库系统的基础上建立一个数据仓库。,界定系统的边界,需求:主要是商品采购和销售情况商场经营者目前所要进行的分析主要有:分析顾客的购买趋势;分析商品供应市场的变化趋势;分析供应商信用等级。,界定系统的边界,所需要的数据应包括:商品销售数据;商品采购数据;商品库存数据;顾客信息;供应商信息。所以,我们可以将系统的边界定为包含原有的销售子系统、采购子系统以及库存子系统在内的集合。,确定主要的主题域,三个基本主题:商品、供应商和顾客。主题之间的联系是:供应商供应多种商品,一种商品可由多个供应商提供,即“商品”主题与“供应商”供应的商品直接联系;供应商供应的商品同样也可以被不同的顾客购买,但“顾客”主题与“供应商”主题间并不是直接发生关系的,它们之间的联系是经过“商品”主题的间接联系。,E-R模型,各主题的属性信息,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,技术准备工作,工作包括:技术评估,技术环境准备。成果是:技术评估报告,软硬件配置方案,系统(软、硬件)总体设计方案。,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,逻辑模型设计,分析主题域确定粒度层次划分确定数据分割策略关系模式定义数据源及抽取模型的定义,分析主题域,对概念模型设计步骤中确定的几个基本主题域进行分析,选择首先要实施的主题域;如果所选择的主题域很大并且很复杂,我们甚至可以针对它的一个有意义的子集来进行开发;商场数据仓库设计的例子:“商品”主题既是一个商场的最基本的业务对象,又是进行决策分析的最主要的领域,因而较之另两个主题来说,“商品”主题具有更重要的意义与作用。所以,我们可以先选定“商品”主题来实施。,粒度层次划分,粒度层次划分适当与否直接影响到数据仓库中的数据量和所适合的查询类型;通过估算数据行数和所需的DASD 数,确定采用单一粒度或多重粒度,以及粒度划分的层次。DASD(Direct Access Storage Device)例子:商品主题多重粒度,数据分割策略,数据量的大小是决定是否进行数据分割和如何分割的主要因素;数据分析处理的要求是选择数据分割标准的一个主要依据;还要考虑到所选择的数据分割标准应是自然的、易于实施的;同时也要考虑数据分割的标准与粒度划分层次是适应的。,关系模式定义,由多个表实现;对于多维数据模型:事实表和维度表;对于E-R模型:主题的相关信息的内容表如,商品主题的关系模式定义包括:商品固有信息、商品采购信息、商品销售信息、商品库存信息、其它数据等。,数据源及抽取模型的定义,由三种表实现;数据源抽取对象表;数据源抽取规则表;数据目标列与源列对应关系表。,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,物理模型设计,工作:确定数据的存储结构,确定索引策略,确定数据存放位置,确定存储分配。前提要求:1.全面了解所选用的数据库管理系统,特别是存储结构和存取方法。2.了解数据环境、数据的使用频度、使用方式、数据规模以及响应时间要求等,这些是对时间和空间效率进行平衡和优化的重要依据。3.了解外部存储设备的特性,如分块原则,块大小的规定,设备的 IO 特性等。,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,数据仓库的生成,工作:接口编程,数据装入;成果:数据已经装入到数据仓库中,可以在其上建立数据仓库的应用,即DSS 应用。,数据仓库的生成,接口编程:在两个不同环境的记录系统之间建立一个接口,能完整、准确地完成从操作型环境到数据仓库环境的数据抽取、转换与集成。数据装入:运行接口程序,将数据装入到数据仓库中。,数据仓库的设计步骤,概念模型设计技术准备工作逻辑模型设计物理模型设计数据仓库生成数据仓库使用与维护,数据仓库使用与维护,使用数据仓库:在数据仓库中建立起DSS 应用;维护:根据用户使用情况和反馈来的新的需求,开发人员进一步完善系统,并管理数据仓库的一些日常活动。包括:刷新数据仓库的当前详细数据,将过时的数据转化成历史数据,清除不再使用的数据,管理元数据,利用接口定期从操作型环境向数据仓库追加数据,确定数据仓库的数据刷新频率,等等。,数据仓库使用与维护,在“商品”主题的数据装人数据仓库后,就可以进行在“商品”主题上的分析处理,即建立“商品这一分析领域上的DSS 应用,如有关商品销售情况的月统计分析或商品库存情况的分析等。在分析应用中,我们会对“商品”主题有一个实践基础上的更深的认识,从而对原来的设计作出评价和调整。比如,实践证明原来的粒度划分不合理,就应该调整粒度定义。,数据仓库使用与维护,在这一过程中,商场经营者可能会提出新的要求,对消费市场进行分析研究,以进行市场定位等,那么就要着手开发“顾客”主题,并可能要对原有的“商品”主题进行调整,如“商品”主题中可能要增加“商品档次”这么一个属性。,讨论,在学习了数据仓库的相关知识和技术后,你觉得日常生活中,那些方面可以用到数据仓库技术?,举例,零售个性化系统。在系统中,客户阅读到由零售商编制的目录或宣传广告后促使他有了购买的念头,或者至少想查询一下目录,结果是给零售商打电话。,举例,举例,当客户定货或咨询情况时,零售商代表查出一些与此有关的其他信息,如:客户上次购物的时间;上次购物的类型;客户所属的市场地段。,举例,对话的过程中,销售代表说出以下一些事情:“我记得我们曾在二月份通过话”“你购买的兰色运动衫怎么样?”“你的那条裤子的问题解决了吗?”交谈进行得很有人情味。这样,将会更加激起客户的购买欲望。,举例,数据仓库的分析功能给出市场地段信息,如:男/女专业/其他用品市场城市/乡村市场儿童用品市场(年龄、性别)体育用品市场,举例,对话可以进行得很个性化。销售代表能够根据客户所属的市场地段信息进行针对性的提问,如:“你知道我们在泳装方面还有未公布的产品吗?”“我们刚刚进一批意大利太阳镜,我想你可能有兴趣。”“天气预报这是打野鸭的寒冬,我们有一种特制的长筒靴。”,举例,客户已经完全投入了电话对话中,个性化的电话和关于客户对什么商品感兴趣的知识使得销售商在不增加资本投入、不增加广告量的情况下增加了收入。,举例,这种个性化的电话对话是通过对数据仓库的间接访问而完成的,举例,后台(即数据仓库环境中)有一个分析程序在不断读入和分析客户的记录。这个分析程序通过一种复杂的方法扫描,分析客户的历史记录。它定时地提供给操作型环境一个包括下面内容的文件:上次购物的类型;上次购物的日期;市场分析/市场地段信息。,