DW设计是一个操作型系统设计方法演变而来的范例。DW设计者不仅要设计一个数据库(DW用DB实现)和一个用户接口(数据展现部分)。而且还必须设计数据与OLTP系统的接口,数据装载策略,数据存取工具,用户培训方案和不间断的维护方案。即必须考虑许多在操作型系统设计中不必考虑的问题。本章的意图就是帮助你完善的理解如何建立和实现DW和在一个完整的DW设计必须考虑的问题。 我们要设计DW,首先要了解他的开发生命周期。
1 2 3 4 5 6 7 ------------需求驱动
传统的 收集 分析 设计 编程 调试 集成 实现 SDLC 需求
DW的 实现DW 集成数据 检验偏差 针对数据编程 设计DSS系
统 分析结果 理解需求 SDLC
---------------- 数据驱动
3.1 数据仓库开发的方法
建立一个DW一般需做以下五个方面的工作: 1、任务和环境的评估。 2、需求的收集和分析。 3、构造DW。
4、DW技术的培训。
5、回顾、总结和再发展。 一、 任务和环境的评估
1、目标:因为数据仓库是建立在原有的运行系统之上的,因此要结合单位的现状来明确数据仓库的目标任务。了解数据源所在系统和其中数据的状况、数据类型、工作平台、数据量、数据质量、DW的环境、网络技术状况。 2、目的: ⑴ 看DW的任务是否可行。
⑵ 所建立的DW是否是用户所期望的。 ⑶ 有没有不逾越的障碍。
⑷ 确定DW系统成功与否的基本原则。
3、组织:高层负责人参加并组织项目组。 人员:项目总负责人
与DW相关的业务部门负责人 计算机软/硬件负责人 DBA 网络人员
4、项目组的任务:初步确定主题 主题的层次结构 二、 需求的收集和分析。
1、任务: ⑴ 了解决策者现在的工作目标。
1
⑵ 现在获得决策支持信息的方法、渠道。 ⑶ 和竞争对手的差距。
⑷ 决策者希望DW提供什么。 ⑸ 制定系统的逻辑模型。
⑹ 分析数据源的物理存储状况、运行平台、数据质量、硬件、软件和网络的
限制条件。
2、分析文档。 ⑴项目概述。
⑵差距分析。
⑶系统基本架构图示。 ⑷逻辑模型。 ⑸物理模型。
⑹DW的初始装载和更新策略。 ⑺ DW的运行计划。
⑻决策信息展现的希望和需求。 ⑼ DW建成的时限。 三、 构造DW
构造数据仓库包括数据仓库的管理、数据仓库的组织和决策支持信息的展现三部分。
设计和编写数据抽取程序/工具。 设计和编写数据转换程序/工具。 1、DW的管理 设计和编写数据更新程序/工具。 设计和编写运行的接口程序。
建立这一阶段的所有管理的数据(元数据) 程序统一标准命名、建档。
初始装载 建立索引 2、DW的组织 建立数据视图
DW及工作平台的安全检查 装入数据和应用功能
建立此阶段的元数据。
3、决策支持信息的展现
利用多维数据展现、数据挖掘等一些工具可预先制作好许多常规的信息市场项目供支持决策使用,也可以直接操作主题数据以得出新的决策支持信息。 四、 数据仓库技术的培训。
培训内容:1、DW中的数据内容(包括逻辑模型、物理模型)、数据质量。 2、元数据的内容、位置,如何使用。 3、用户界面和功能介绍。
4、数据更新计划。 5、DW的安全规则。
6、从OLTP到DW的数据流。 7、全部的数据转换工作。
2
8、数据装载和更新的策略。
五、 回顾、总结和再发展。 1、哪些地方可以做得更好。
2、业务部门对开发的支持是否到位。 3、双方如何合作得更好。
4、什么是业务部门立竿见影的效益。 5、主题选择是否得当。
6、阶段成果是什么?反映如何?
7、DW采用是否提高了公司的竞争力。 8、投资回报率是否达到预计的水平。
六、 SAS数据仓库方法论 见图3-1 评 估
主要数据模型和DW 主题的选
择 需求调查
总 结
设 计 设计DW结构、数据建摸、过
程建摸
构 建 物理的DW 组装、应用程序编
码,测试、验收、
部 署 把DW展示给业务用户,培训。
图 3-1 SAS数据仓库方法论
总结:1、总结早期项目实施成功和失败的经验和公布以后努力的结果。
2、应用配置是否如愿实现,如有必要须调整计划。 3、评估项目对单位的影响和得益。
3.2 数据仓库的技术体系结构
DWS的技术体系结构如图3-2所示
3
外部数据 数据管理员模块 DW的数据 数据传递模块 数据获取模块 中间件模块 数据访问模块 数据源 设计模块 信息目录模块 DW的元数据 外部元数据 管 理 模 块 图3-2 DataBase Association 公司定义的DW技术体系结构
一、 设计模块
功能:是由DW的设计者和管理者来设计和定义的DW的。在设计DW时必须考虑到的其他因素还包括DB和瞬时数据的处理。某些DW数据库还包括星型模型的非规范化DB设计。 二、 数据获取模块
功能:用于开发和运行数据获取应用程序,从源系统中获取数据并加到DW中。 内容:1、数据抽取规则——界定数据源。
2、数据情况——记录和字段的重组,增补丢失的字段值,数据的整性和一致
性检查。
3、数据增强——字段值的解码和转换,增加时间属性(若没有),数据的概括或者衍生值的计算。 4、数据传输。
5、生成的定义作为元数据存入信息目录模块。
三、 数据管理员模块。
功能:是DW用来生成、管理和访问仓库中数据(很可能还有元数据)的模块。一般
使用RDBMS或MDBMS(多维DBMS)。
四、 管理模块。
4
功能:完成维护DW环境的系统管理服务。 内容:1、管理数据获取操作。 2、仓库数据归档。 3、仓库数据备份。 4、仓库数据恢复。
5、访问DW的安全及授权等。 五、 信息目录模块
功能:帮助技术用户和业务用户访问DWS,通过一套维护和观察仓库元数据的工具实
现这一功能。
主要元素:1、源数据管理员:维护、输入/出仓库元数据。 2、技术元数据。
3、信息助理:为最终用户提供访问元数据的简单方法,有些产品能帮助用
户产生、编写、运行查询、报表、分析并预定仓库中找不到数据和信息。
六、 数据访问模块
功能:提供访问工具,使用户访问和分析仓库中的数据。 访问工具:1、查询、报表自动生成和数据分析工具。 2、能访问RDBMS的多维分析工具。 3、能访问MDBMS的多维分析工具。
4、运行4GL或可视化程序设计语言的DSS应用程序开发工具。 七、 中间件模块
功能:将DW数据与最终用户工具连接起来,专门中间件:
①智能数据仓库中间件——位用户提供从业务角度、数据仓库的视角;并能监视和跟踪对DW的访问情况。
②分析服务器——能改善对RDBMS数据进行多维分析的效果。
八、 数据传递模块
功能:将数据集合分布到其他DW和最终用户产品中,如电子报表。数据的传递可以在一天中的某一时刻进行,也可以在一个外部事件结束时进行。
3.3数据仓库和数据模型
数据仓库的设计和OLTP系统的设计一样,也需要先进行模型的设计。
一、 不同层次模型之间的关系.。
1、 企业数据模型:特点:只包含原始数据。OLTP、DW的数据模型均源于企业模型。 2、 操作型数据模型
特点:①基本等价于企业数据模型。②在数据库设计之前要加入性能因素。 3、 DW数据模型。
特点:①去掉纯操作性数据。
②给键码增加时间因素 ③合适之出增加导出数据
④把OLTP系统中数据关系变为人工关系。
4、稳定性分析:根据各个属性的变化特征将这些属性分组(例如按更改频率)。就把原始数据一个表分成多表,完成数据聚集。 二、 数据模型
5
数据模型的级别:
OLTP:概念模型 逻辑模型 物理模型 DW: 高层模型 中间层模型 底层模型 1、 高层建模:实体关系表示方法(ERD)
高层建模的特点是实体和关系,如图3-3所示。实体的名字放在椭圆内,实体间的关系用箭头描述。箭头的方向和数量表示关系的基数,只有直接的关系才标示。
一个实体或者主要主体
1:n 的关系 1:1的关系 n:1的关系
例
零件 供应商 订单 装配 图3-3 实体关系图
在ERD层的实体位于最高抽象层,那些实体属于模型的范畴,那些不属于,应该有集成范围定义数据模型的边界。而且集成范围需要在建摸之前进行定义。
企业RED由很多反映了整个企业不同人员的不同观点的单个RED合成的。集成的方法可以参照数据库设计时的局部ERD 向 全局ERD 集成的方法。所以,建立企业ERD的方法是: 方法:① 首先在建模之前定义数据模型的边界
② 先建立企业内部不同群体的高层数据模型,然后进行集成组成企业的ERD. 2.中间层数据模型(DIS----Data Item Set 数据项集)
对高层模型中标识的每个主要的主题域或实体都要建一个中间层模型(DIS可称为逻辑模型,它是对ERD的细分), ① DIS和ERD的关系
6
DIS DIS ERD DIS DIS 图 3-4 DIS和ERD的关系 ERD中的每一个实体将来都会被他的DIS所定义 ② DIS的构造
初始数据组-----初始数据组对每个主要主题域存在且只存在一次,它有在每个主要主题域只出现一次的属性,初始数据组有属性和键码 二次数据组-----有对每个主要主题域可以存在多次的属性,从初始数据组有一链接指向二次数据组有多少个可以出现多次的不同数据组,就含有多少个二级数据组。 用于本组主题域与其它主要主题域之间的联系,体现了ERD中实体间的关系,它将数据从一个实体与另一个实体联系起来。 一般情况下,连接数据组往往是一个主题的公共码主键,从而建立了两个主题域间的相互联系。 数据的类型由指向右边的不同数据组组成,主要有左边的超类型数据组和右边的子类型数据组。 逻辑模型的基本结构由图3-5所示 基本数据组 超类型 子类型 连接数据组 二次数据组 连接数据组 图3-5 逻辑模型的基本结构 ③ 数据组的稳定性 基本数据组稳定性大于初始数据组,初始数据组的稳定性大于类型数据组 ④ 逻辑模型示例:见图6-6 7 账号 账号 账号 地址 抵押 姓名 信用额度 委托人 贷款 利息 评估 性别 开户时间 账号 账号 省 账号 时间 市 最小存款 制造商 最小余额 型号 县 街道 邮政编码 非抵账号 账号 押贷信用卡类型 客户编号 责任人 款 信用卡限额 种类 图 3-6 逻辑模型示例图 在图3-6中,其客户名称、性别和开户时间等有关客户固定描述信息的数据项内容是基本不变的,所以他们可列入基本数据组。 客户的地址、文化程度、电话等虽然基本稳定,但是存在改变的可能性,因而列入二级数据组; 客户的贷款、存款情况、担保以及信用卡消费记录是频繁变动的数据项,故列入类型数剧组。 逻辑模型为DW开发者与使用者相互之间在进行DW开发时的交流与讨论的工具。 逻辑模型设计时,应保证DW中的所有元素包含在数据模型中。 3. 物理数据模型 逻辑模型可采用星型模型和雪花模型,主要是设计事实表、维表。 物理数据模型是依据中间层的逻辑数据模型创建的,他通过确定模型的键码属性和模型的 物理特性,扩展中间层模型而建立的,物理数据模型就由一系列表所构成,其中最主要的是事实表模型和维表模型,另外根据性能要求,对有关表模型进行调整,并确定有关的索引设置。 [1 ]事实表模型设计 以图3-6的金融企业客户主体逻辑模型可以设计出下面的事实表模型 客户事实表 客户基本情况表(账号,姓名,出生地,开户时间…) 客户变动情况表(账号,省,市,县,街道,邮编…) 客户贷款事实表
Copyright © 2019- huatuo3.cn 版权所有 湘ICP备2023017654号-3
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务