2009-7-17BUPT SHY
1
第四章 数据库与数据仓库
“我对计算机印象最深的是它好象无所不能,我没有看到信息技术的任何限制,信息要靠自身积累,你拥有越多,
那么你能得到的就越多。你处理信息的速度越快,你能做的事就越多。,
—Intel公司董事会主席
Gordon Moore
2009-7-17BUPT SHY
2
一、信息的回顾企业利用信息资源做什么?
以事务处理的形式处理信息
(OLTP)
在决策活动中使用信息
(OLAP)
在使用信息的过程中管理信息
2009-7-17BUPT SHY
3
产品数据库 顾客数据库数据仓库增加新的生产线 更改产品单价 扩大顾客的信誉范围 更改顾客收入水平
OLTP
OLAP
信息应用于决策上月销产品售额超过 10万元 库存下降成本? 顾客能接受高价位?
2009-7-17BUPT SHY
4
数据组织技术界面物理组织比特字节字字符字段记录文件数据库数据仓库存储介质 技术术语 数据的层次 知识员工
2009-7-17BUPT SHY
5
二、数据库
1、什么是数据库误解:
大量数据的数据集合相关文件的集合计算机数据的集成化 文件的集合相关文件超级集合
·········
2009-7-17BUPT SHY
6
下个定义数据库( Database)是一个数据的集合,
可以按照数据的逻辑结构对其进行组织和存取。
数据库是由截然不同的两个部分组成:
数据本身;数据的逻辑结构
2009-7-17BUPT SHY
7
特点:
数据的集合 —包含两个以上的相关数据文件
逻辑结构 —对数据的存取依据逻辑结构
数据的逻辑关系 —建立数据间的联系,
即找出文件间的关系
内在的整体约束
—建立数据库的逻辑结构的同时,
逐步完善整体约束以保证信息质量
2009-7-17BUPT SHY
8
实例:
1994年 Ritz-Carlton集团使用“用户报表系统”来评价豪华饭店的管理工作。
他们建立了“客人习惯”数据库,利用该数据库可以在集团的任意一个饭店为客人提供定制的、符合个人习惯的高质量服务。饭店管理首先是从了解客人的习惯开始的,例如:客人的运动习惯、
饮食习惯、消费倾向、是否喜欢在枕头上放巧克力、每天用几条毛巾等。
2009-7-17BUPT SHY
9
2、数据建模与实体的关系
构建数据库时必须考虑:内容、存取、逻辑结构、物理组织
数据模型是用于描述数据间的逻辑关系的工具,它表示了实体与实体间的关系
实体关系( E-R)图:用基本的图形符号表示数据间关系的图形
2009-7-17BUPT SHY
10
图例符号:
表示实体表示关系表示连接
1,M 表示出现的次数表示需求表示选择关系
2009-7-17BUPT SHY
11
E-R图雇员 M:1 部门
M:M 工作雇员 M:1 部门
B
A
2009-7-17BUPT SHY
12
3、数据管理的数据库方法
传统的方法:为每个应用程序创建和存储数据文件的数据管理方法
—数据的冗余
—数据的不完整性
—程序 -数据依赖性
数据库方法:相关数据集合可以被多个应用共享
2009-7-17BUPT SHY
13
数据管理的数据库方法工资数据库存数据销售数据器它数据数据库管理系统工资程序销售开票程序库存控制管理查询报表报表报表报表数据库 接口应用程序 用户
2009-7-17BUPT SHY
14
4、数据库管理系统
( 1)定义:
数据库管理系统( database
management system)由一组程序组成,这组程序执行数据库的操作、
提供数据库和用户或用户和应用程序间的接口复习:数据的层次字符 字段 记录 文件 数据库
2009-7-17BUPT SHY
15
( 2) DBMS的组成:
DBMS引擎 —提供信息逻辑结构到物理结构之间的桥梁,将逻辑查询转换成对应的物理形式
数据定义子系统 —定义数据库的逻辑结构,
帮助人们建立和维护数据字典,定义数据库的文件结构
数据处理子系统 —在数据库中处理修改信息,
增加、删除、挖掘有价值的信息。包括视图、
报表生成器、查询工具、结构化查询语言
应用生成子系统 —开发数据库的应用程序,
开发数据库的应用程序,建立面向事务应用
数据管理子系统 —管理数据库
2009-7-17BUPT SHY
16
数据库管理系统的结构建立修改数据库的逻辑结构查询及编辑信息生成菜单报表的应用软件信息使用权限备份、恢复查看结构变更结果数据定义数据处理应用系统生成数据管理
D
B
M
S
引擎数据库
DBMS
2009-7-17BUPT SHY
17
( 3)数据库管理系统的功能
存储和检索数据、创建和修改数据库
操作数据生成报表、提供用户视图
DBMS
模式模式子模式 A 子模式 B 子模式 C
用户 B用户 A 用户 C 用户 D
2009-7-17BUPT SHY
18
( 4)如何选择数据库管理系统根据以下条件选择:
性能:数据库存取、更新数据的速度
集成性:与其他数据库和程序的集成能力
特点:安全性过程、保密性保护等工具
供应商,规模、信誉、技术支持
成本:根据需求确定最佳价格性能比
2009-7-17BUPT SHY
19
讨论题:网上选课
选课环境限制,学生、课程、学时、已修课程
工作,对 4组信息标出要保存的特定信息 ——如学生要包括学号、姓名、专业等等;确定访问权限 —浏览、添加、更改、删除;人员 —校长、指导教授、教务处长、财务处长、学生;用一张表格标出权限
问题,如果 DBMS不能正确处理这些权限,
将会发生什么问题?
2009-7-17BUPT SHY
20
5、数据库模型
( 1)分类,数据库中数据的关系结构分为层次型、网状型、关系型、面向对象
2? ′£ Dí
òó
1μ Dí
t 1ü àí1993年
2? ′£ Dí
òó
1μ Dí
t 1ü àí1995年
26%
5%
50%
19%
64%
11%
14%11%
2009-7-17BUPT SHY
21
( 2)数据库模型说明
层次模型,一种数据从顶而下或倒挂树的结构进行组织
网状模型,层次模型的扩展一个属记录可以有多个首记录
关系模型,以表格的形式 —行列的形式组织数据
面向对象模型,将数据与数据处理过程综合在一起的数据库模型
2009-7-17BUPT SHY
22
层次数据库模型项目 1
员工 1
部门 3部门 2部门 1
员工 2 员工 4员工 3 员工 5 员工 7
2009-7-17BUPT SHY
23
网状模型项目 A 项目 B
部门 1 部门 2 部门 3
2009-7-17BUPT SHY
24
关系模型
关系模型是目前应用最广的数据库模型
关系模型就是 用标准的表格形式描述数据。 在关系型数据库中所有的数据都存在于被称作为“关系”的二维表中
关系数据库以行和列形式组织数据,简化了数据的存取和操作
2009-7-17BUPT SHY
25
面向对象数据库模型
对象,研究的事物被称为对象 。(广义)
数据库中:对象是一个软件模块。它包括有描述一个实体所需的数据以及更具这些数据去描述该实体所必需的一系列过程。
面向对象数据库是一种将数据和数据处理的过程综合在一起的数据库模型。它将数据和过程仅仅结合在一起,更能模拟一个企业的运行。
与关系数据模型的区别,关系数据库将数据存放在二维表中,这张表与依赖表中数据运行的过程是彼此分离的。
2009-7-17BUPT SHY
26
( 3)举例 ——面向对象数据库顾客对象信息顾客标标识号名字电话地址程序增加新客户改变地址在数据库中保留顾客信息影碟租用对象信息客户影碟租赁日期归还日期程序产生新的租赁计算总的租价取消影碟租赁获得影碟可租赁信息改变租赁日期在数据库中保留影碟信息由于影碟租用对象中含有客户,所以这两个对象存在联系由于影碟租用对象中含有影碟,所以这两个对象存在联系
2009-7-17BUPT SHY
27
影碟对象 经销商对象信息影碟号名字类型经销商天数租价程序增加新的影碟订购影碟获得影碟信息改变天数 /租价在数据库中保留影碟信息信息经销商代码名字电话地址程序增加新的经销商获得经销商的信息改变电话 /地址在数据库中保留经销商的信息由于影碟对象中含有经销商,
所以这两个对象存在联系
2009-7-17BUPT SHY
28
( 4)数据库模型的比较
层次模型:数据关系简单、处理效率高;
适合数据本身具有层次的用户;灵活性差
网状模型:较层次模型灵活性高;数据关系复杂;应用较少
关系模型:容易控制;更大的灵活性;容易组织数据;应用广泛
面向对象:将信息处理存储合一;可重复调用;将信息和过程紧密结合在一起,可模拟企业运作
2009-7-17BUPT SHY
29
6、建立数据库
目的:
无论是大企业 还是中小企业 都在使用数据库,他们从数据库中挖掘出很有价值的信息,并利用这些信息找出企业的问题和发展机遇,从而增加企业的 竞争力。
2009-7-17BUPT SHY
30
● 步骤建立一个个人数据库大致包括四个步骤:
A、确定实体和主关键字
B、确定每个实体间的关系
C、为每个关系确定字段
D、用数据定义语言创建数据库
2009-7-17BUPT SHY
31
例:小企业家的数据库
假定在座的每位是一个小老板,且有兴趣建立自己用的数据库,根据员工的部门、工作安排和每项工作的时间来跟踪员工的信息。
约束条件:一位员工归属一个部门;一个部门可有多名员工;一个员工可被安排多项工作,;一项工作可安排多名员工完成,但并不一定每个员工都分配一项固定工作。
如何完成?
2009-7-17BUPT SHY
32
复习思考:
实体间的关系
找出 1,1的关系
为影碟出租店构造一个 E-R图
E-R图的符号:
实体实体间的关系连接
1 出现一次
M 出现多次选择关系
2009-7-17BUPT SHY
33
7、案例
( 1) 利用数据库控制市场定位美国第四大邮购公司 Fingerhut通过对复杂的顾客信息进行分析来控制市场定位。一般认为把年收入少于 2·5万美元的家庭作为自己的客户是冒险,带公司却以这种家庭作为客户获得了成功。早在 1992年就有 150多个邮寄目录和众多的推销活动。这一切都是依赖于建立了巨大的顾客信息数据库。该公司对每一个现有的和潜在的顾客都要追踪 1400多条信息,包括人口统计信息、收入水平、家庭收入状况、电器拥有状况及产品购买历史。 ……
( P125—— 126)
2009-7-17BUPT SHY
34
( 2) 使用数据库比建数据库更难
×× 环球贸易有限公司主要经营电器、通信器材。在全国有 6个销售中心和 26个办事处积 50家代理商,销售代表 800多人。当 DE先生受聘于市场总监时,公司的 CEO同时让他建立数据库实现数据共享和加强公司与顾客的联系。 DE要做的是两件事,一是建立数据库;二是让人们使用数据库。
问题,a)DE会遇到什么困难?如果你是 DE,
你将如何克服困难?
b)数据库会给该企业带来什么利益?
2009-7-17BUPT SHY
35
三、数据仓库
数据仓库来源于 DSS 的发展
数据仓库基于和数据库技术网络技术的发展
数据仓库是一种体系结构;它是一种语义一致的数据仓储(独立的且不影响已在实际运作的 )系统,以满足不同的数据存取、文档报告的需求;它是一个不断发展的过程,把多个异质的原始数据融合在一起用以支持 OLAP和 DSS
2009-7-17BUPT SHY
36
1、什么是数据仓库?
( 1)数据仓库的概念数据仓库是信息的逻辑的集合;它是面向主题的、集成的、稳定的、
不同时间的数据集合;用以支持经营管理中的决策制定过程。目的是解决在信息技术 (IT) 发展中存在的拥有大量数据、然而有用信息贫乏的问题
2009-7-17BUPT SHY
37
( 2)数据仓库的定义:
数据仓库之父 W.H.Inmon将其定义为:
数据仓库是支持管理决策过程的、
面向主题的、集成的、随时间而变化的、持久的数据集合
2009-7-17BUPT SHY
38
( 3)数据仓库技术的特点
— 数据仓库将来自不同数据库的数据集合在一起
— 数据仓库是多维的,是一个超立体结构;例如:区域、年份、顾客、信誉度、生产线、商品等
— 数据仓库是为决策服务的而不是为了事务处理
2009-7-17BUPT SHY
39
2、数据仓库与数据库的区别
( 1) 面向主题 ----它可以根据最终用户的观点组织和提供数据。而大多数运作的数据库系统 只能按应用的观点组织数据,因为这样可使应用程序访问数据的效率更高 。
2009-7-17BUPT SHY
40
数据仓库与数据库的区别(续)
( 2) 管理大量信息 ----大多数数据仓库包含历史数据,这些数据在运作的系统中通常被删除或备份在其他的介质,因为系统不再需要了。由于数据仓库必须管理大量的信息,因而它就要提供概括和聚集机制来对巨大的数据容量进行分类。
因此数据仓库要在粒度的不同层次上管理信息。由于需要管理的所有的历史数据和当前数据,所以数据仓库 的容量远远大于一般的数据库。
2009-7-17BUPT SHY
41
数据仓库与数据库的区别(续)
( 3) 信息存储在多个存储介质上 ---
因为管理大量的信息,所以数据仓库的数据往往存储在 多个介质上 。
( 4)跨越数据库模式的多个版本 ----
因为数据仓库必须存储和管理历史数据,这些历史数据 都是在不同时间的数据库模式的不同版本之中,
所以数据仓库有时还必须处理来自不 同数据库的信息。
2009-7-17BUPT SHY
42
数据仓库与数据库的区别(续)
( 5)信息的概括和聚集 ----通常运作数据库中的存储的信息对于作出决策似乎过于详细。数 据仓库可将信息概括和聚集并以人们易于理解的方式提供出来。概括和聚集对于理解 大片信息是很本质的。
2009-7-17BUPT SHY
43
数据仓库与数据库的区别(续)
(6)从许多数据来源中将信息集成并使之关联 ----由于要管理本单位的历史信息,而在操作这些信息时要涉及到多个应用程序和多个数据库,所以需要数据仓库收集和组织这些应用程序多年在该场合获得的数据。
2009-7-17BUPT SHY
44
3、数据仓库的构造
数据仓库中存在着不同的细节级早期细节级:通常是备用的、批量存储过期的数据当前细节级:供 OLAP用的数据轻度综合级:部门级应用(数据集市)
高度综合级:全局级应用
数据集市是一种“自底向上”建设数据仓库的思想。其核心是从最关心的部分开始,先以最少的投资完成当前的需求,然后再不断扩充、完善。它是数据仓库的子集,它存储的数据是经过抽取、概括、聚合的数据。
2009-7-17BUPT SHY
45
( 1)数据仓库的数据组织结构元数据高度综合级轻度综合级当前细节级早期细节级
( 1996-2000每月业务收入表)
( 1996-2000子公司每周业务收入表)
( 1996-2000业务收入表)
( 1991-1995业务收入明细表)
2009-7-17BUPT SHY
46
( 2)数据仓库数据组织说明
源数据经过综合后,首先进入 当前细节级 ;然后根据需要进一步综合进入 轻度综合级 乃至进入 高度综合级 ;老化的数据进入 早期细节级 。
元数据:关于数据的数据(数据库中的数据字典)
数据仓库环境中有两种元数据:
1、为了从操作环境向数据仓库环境转换而建立的元数据,它包含了所有源数据项名、属性及其在数据仓库中的转换
2、用来与终端用户的多维商业模型 /前端工具之间建立映射,此种元数据称为 DSS元数据,常用来开发更先进的决策支持工具
2009-7-17BUPT SHY
47
粒度,粒度是指数据仓库的数据单位中保存数据的细化程度的级别。细化程度越高,粒度越小;细化程度越低,粒度越大。粒度是数据仓库设计的主要问题,它影响着数据仓库中数据量的大小和能回答的查询类型。
低细节级高细节级粒度一个用户一个月的电话详细记录每月 40000个字节每月 200个记录一个用户一个月的电话的综合
600个字节每月 3个记录小粒度 大粒度
2009-7-17BUPT SHY
48
4、数据仓库设计设计步骤:
概念设计
技术准备
逻辑设计
物理设计
数据仓库生成
数据仓库运行与维护
2009-7-17BUPT SHY
49
数据仓库设计流程图概念模型设计
1、界定系统边界
2、确定主题域技术准备
1、技术评估
2、技术环境准备
1,粒度层次划分
2、数据分割策略
3、记录系统定义
4、关系模型定义逻辑模型设计
1,确定层次结构
2、确定索引结构
3、确定存放位置
4、确定存储分配
1,设计接口
2、数据清洗
3、数据装入物理模型设计 数据仓库生成数据仓库运行维护分析主题域,对每一个主题域重复
2009-7-17BUPT SHY
50
数据仓库的小结,
查询和分析工具数据仓库数据净化过程数据提取过程关系数据库层次数据库网状数据库扁平文件电子表格最终用户访问
2009-7-17BUPT SHY
51
四、联机分析处理( OLAP)
数据仓库仅是进行分析决策的基础,还必须由强有力的工具进行分析和决策才能体现其在管理和决策方面的价值。
OLAP(On-Line Analytical Processing )
是一们软件技术,专门设计用于支持复杂分析操作、侧重对决策人员和高层管理人员的决策支持,可以应分析人员要求快速、灵活地进行大数据量的复杂查询处理,并以直观的形式提供查询结果。
2009-7-17BUPT SHY
52
( 1) OLAP的定义
定义:用来传送和存储数据仓库信息的程序的集合。通过对信息的多种可能的分析和观察形式进行快速、稳定一致和交互性的存取,使管理决策人员获取潜在信息。
OLAP能满足管理者从多方面 ——多维分析业务数据(产品、时间、地理、销售人员等)
2009-7-17BUPT SHY
53
支持长远的业务战略决策分析驱动数据是历史的数据是静态的,除数据刷新外数据反映某个时间点或一段时间数据是汇总的面向主题优化是针对查询而不是更新支持管理人员和执行主管人员
( 2) OLAP系统特性
2009-7-17BUPT SHY
54
OLTP系统财务系统业务系统计费系统
5-10 年过去详细数据当前详细数据轻度综合数据高度综合数据数据集市用户分析 网络资源分析数据仓库
OLAP分析系统网管系统
( 3) OLTP与 OLAP系统的比较
2009-7-17BUPT SHY
55
五、数据挖掘技术 (Data Mining)
1,DM的定义数据挖掘 (Data Mining)是从数据集中识别出有效的、新颖的,潜在有价值 的以及最终可理解模式的高级处理过程。也就是说,从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。
2009-7-17BUPT SHY
56
2、数据挖掘理论基础
数理统计
– 排序,计算最大值、最小值、平均值、局部汇总,同期比较、前期比较,比重分析,
20/80分析。
– 频数分布、累计频率分布、样本均值(标准差,变异系数)、抽样技术、区间估计与假设检验 。
多元统计
– 聚类分析、主成分分析、因子分析,判别分析,相关分析、典型相关分析、对应分析、回归分析。
2009-7-17BUPT SHY
57
趋势预测
– 移动平均法,一次指数平滑法,二次指数平滑法,最小二乘法,自适应过滤以及自动组合预测 。
运筹学
– 马尔可夫链、博奕理论、网络计划、统计决策、排队模型、因果分析图、反馈系统模型。
数学规划
人工智能与专家系统数据挖掘理论基础(续)
2009-7-17BUPT SHY
58
3、数据挖掘的步骤
( 1)数据准备
——数据集成:从 OLTP数据库中提取并集成数据解决数据语义二义性问题,
清除脏数据
——数据选择和预分析:缩小数据范围,
提高数据挖掘质量
( 2)挖掘,利用前述的方法分析数据仓库中的数据
2009-7-17BUPT SHY
59
数据挖掘步骤(续)
( 3)表述:将挖掘数据得到的信息以用户易于理解的方式反馈给用户。
充分利用可视化工具。
( 4)评价递归执行以上三步骤,直到用户满意
2009-7-17BUPT SHY
60
4、数据仓库和数据挖掘技术离我国企业有多远?
问题:
数据质量问题
中小企业中数据仓库及数据挖掘的效用
——自己是否需要数据仓库
——你是否已经拥有了数据仓库
——谁将是用户
——用户的需求是什么?
——需要那些数据挖掘工具
2009-7-17BUPT SHY
61
结论:
在业务流程中贯彻企业决策、管理信息模型的思想和方法是数据仓库技术和数据挖掘技术的灵魂和活力所在
2009-7-17BUPT SHY
62
6、数据挖掘的应用
( 1) DM应用于金融业保险业
—对客户进行信用等级评价
—对金融市场预测和分析
—信用卡模式、用户分析
—确定不同行业、不同年龄、处于不同社会层次的人的保险金
—险种关联分析
—预测新险种的客户群
—…………
2009-7-17BUPT SHY
63
DM的应用(续)
( 2) DM应用于商业
——顾客购买习惯分析(尿布与啤酒)
——销售商品构成分析(市场定位、商品定价)
——商品销售预测、零售店选择等等
( 3) DM应用于通信服务业
——用户细分
——网络规划的用户预测
——资费分析、新业务发展预测
——客户信用分析及反欺诈等等
2009-7-17BUPT SHY
64
( 4)应用于制造业
——企业故障诊断
——供应链管理及供应链优化
——新产品开发预测等等
( 5)应用于医疗卫生
——用于病例、病人行为特征分析
——安排治疗方案、判断药方的有效性等等
( 6)应用于司法、公安部门
——犯罪行为分析、案例分析、犯罪监控
——预防犯罪分析
2009-7-17BUPT SHY
65
实例 1:Sears公司的数据仓库
Sears公司是一个具有 370亿美元价值的零售商,它正在建设一个百万兆级( TB)
的客户数据仓库,进行关系分析、风险分析、新产品开发以及客户信用管理等实际应用。公司的高级副总裁 CIO认为数据仓库技术的采用将进一步增强
Sears在业界的竞争力。通过开发信用卡业务、数据仓库可以支持公司的新客户策略,
2009-7-17BUPT SHY
66
因此公司的 信用卡业务可增加 18%。数据仓库可存放 9千万户家庭 3100万个
Sears卡持有者的数据。
问题,1)你认为数据仓库的确可以增加公司的竞争力吗?-通过分析用户,给持卡用户提供不间断的服务;
2)你能指出每位持卡者的主要数据项吗?
2009-7-17BUPT SHY
67
LAN
PC Workstation(s)
Open Client
Sybase Central
Management Runtime
Open Client
BO
Impromptu,Powerplay
实例 2:铁路客票营销分析系统 配置方案
Development
Open Client
Powerdesigner
BO & Cognos
DW服务器
ASIQ 12.4.2
Server(s)
数据集中服务器
Sybase ASE
IBM H80 4CPU 4G 内存
500G磁盘阵列
2009-7-17BUPT SHY
68
LAN
WAN
PC Workstation(s)
Open Client
Sybase Central
Warehouse Control Center
PowerMart Client Tools
Management Runtime
Open Client
Brio Query
Browsers
DDN专线实例 3:广东电信市场经营分析系统
Development
Open Client
PowerDesigner WA
Brio Query
PowerMart Client Tools
DW服务器
(UNIX小型机 )
ASIQ
PowerMart
EssBase (Option)
Server(s)
Web服务器
(WIN NT)
Web Server
Open Client
Brio Broadcast Server
Brio OnDemand Server
Runtime
Browsers
ODS服务器
(UNIX小型机 )
Sybase ASE
(Option)
ETL服务器
(WIN NT)
ASE (Repository)
(PowerMart)