数据仓库的基本原理.ppt

上传人:小飞机 文档编号:5985378 上传时间:2023-09-11 格式:PPT 页数:114 大小:3.22MB
返回 下载 相关 举报
数据仓库的基本原理.ppt_第1页
第1页 / 共114页
数据仓库的基本原理.ppt_第2页
第2页 / 共114页
数据仓库的基本原理.ppt_第3页
第3页 / 共114页
数据仓库的基本原理.ppt_第4页
第4页 / 共114页
数据仓库的基本原理.ppt_第5页
第5页 / 共114页
点击查看更多>>
资源描述

《数据仓库的基本原理.ppt》由会员分享,可在线阅读,更多相关《数据仓库的基本原理.ppt(114页珍藏版)》请在三一办公上搜索。

1、数据仓库的基本原理,数据仓库系统的功能和构成,第一章 数据仓库概论,业务数据库,提取、清洗、转换,数据存储,OLAP,数据挖掘,企业决策层,数据仓库,决策支持,多维查询,预测,数据仓库的体系结构,数据挖掘分析系统/数据展现系统,数据市场,数据市场,数据市场,数据市场,数据 元数据,数据仓库存储,数据清洗/转换,数据提取,提取仓库,外部系统,业务操作型系统,数据提取业务数据库中并不是所有的数据都是决策支持所必需的。所以要把必需的那部分提取出来。例子:某超市确定以分析客户的购买行为为主题建立数据仓库。需要提取的数据:与客户购买行为相关的关于员工的数据没有必要提取。,数据仓库中的关键名词,Data

2、Extraction,数据清洗数据不完整性数据中的错误数据的不同步,数据仓库中的关键名词,按缺失的内容分别写入不同Excel文件向客户提交,要求在规定的时间内补全。补全后才写入数据仓库。,错误产生的原因是业务系统不够健全,在接收输入后没有进行判断直接写入后台数据库造成的,可用SQL语句进行查找和改进,Data Cleaning,例子:客户基本信息表 客户咨询信息表客户号:100 客户号:100姓名:张山 姓名:张三年龄:23 咨询问题:两个表中,客户姓名不同。这是常见的错误,数据清洗,客户基本信息表 客户业务变更信息表客户号:100 客户号:100姓名:张山 姓名:张山年龄:23 业务变更:停

3、机手机服务状态:正常由于不同数据库之间的数据刷新不是实时的,所以数据不同步。,数据清洗,在ETL开发的初期可以每天向业务单位发送过滤数据的邮件,促使他们尽快地修正错误,同时也可以做为将来验证数据的依据。,数据转化不同的数据库厂商,提供的数据类型可能不同。例子:不同的时间表达方式2000-2-3 2/3/2000 2000/2/3不同的坐标系统WGS84 西安803 度带 北京543度带,数据仓库中的关键名词,Data Transformation,提取仓库正是因为业务数据库系统中的数据和数据格式存在不一致的问题。将数据放进数据仓库前要先放进提取仓库,等待清洗和转换。,数据仓库中的关键名词,数据

4、提取,清洗 转换,提取日志记录了仓库中数据的来源,数据的转化过程。便于保证和验证数据的质量,数据仓库中的关键名词,数据管理员不同于数据库管理员或系统管理员。在数据导入时负责管理数据质量的专业人员。查阅提取日志,发现数据提取中出现的错误有时还要检测源于业务系统的错误。,数据仓库中的关键名词,外部数据源从系统外部获取的,与分析主题相关的数据。例子:超市采购部门确定采购货单既要了解超市内部产品的销售情况,还要了解市场上的信息,后者即为外部数据源。外部数据源越来越多地采用服务的技术,数据仓库中的关键名词,ArcGis rest 服务OGC WMSOGC WFS,地理信息服务,数据仓库存储多维数据库关系

5、型数据库两者的结合,数据仓库中的关键名词,Data Repository,数据数据仓库中的原始数据是由业务系统提取的或外部数据源导入,经过清洗、转化而来。为了完成OLAP分析和数据挖掘,必需在原始数据基础上增加冗余信息与预运算。,数据仓库中的关键名词,元数据数据仓库的元数据是主要包含两类数据:为了从操作型环境向数据仓库环境转换而建立的元数据,包含所有源数据项的名称、属性及其转化。用来在多维商业模型和前端工具之间建立映射的,叫做决策支持系统元数据。具体包括数据仓库中信息的种类、存储位置、存储格式;信息之间的关系、信息和业务的关系、数据使用的业务规则;数据模型;数据模型和数据仓库的关系。,数据仓库

6、中的关键名词,元数据,数据仓库中的关键名词,数据,系统,数据,系统,元数据,Polygon的例子,数据集市数据仓库中的信息按照不同的主题来组织。举例:市场发展趋势的分析主题,由市场部门的人使用。为避免在全部的巨量数组中检索,把某主题的数据逻辑上或物理上分离出来,可称为数据集市。数据集市面向某个部门。,数据仓库中的关键名词,数据集市,数据仓库中的关键名词,数据仓库,数据仓库的特点,数据的安全性本地数据的安全性:数据加密、访问权限设置。网络访问数据库:网络安全机制、网络传输中的数据加密和鉴权、防止监听和口令泄漏。,数据库的功能和特征,数据处理的并发性加锁解锁实现同步与互斥多线程,多进程技术,磁盘的

7、存储优化,合适的索引提高并发访问的效率。事务处理的可靠性原子操作不能分开执行,如果某步骤失败,系统必须返回并更改操作。,数据库的功能和特征,数据的一致性和完整性数据库设计、应用的开发、系统的维护方面共同努力。,数据库的功能和特征,操作型数据的特点 分析型数据的特点细节的 综合的、经过提炼的在存取的瞬间是准确的 代表过去的数据可更新 不更新操作需求通常事先可知 分析需求通常不知道生命周期符合SDLC 生命周期不同于SDLC对性能(如操作时延)要求高 对性能要求较宽一个时刻操作一个数据单元 一个时刻操作一个数据集合事务驱动 分析驱动面向应用 面向分析一次操作数据量小 一次操作数据量很大支持日常操作

8、需求 支持管理需求,数据仓库的功能和特征,把数据仓库定义为“用于管理决策支持的面向主题、集成、稳定、随时间变化的数据集合”。面向主题、集成、稳定、随时间变化是4个最重要特征。,数据仓库的功能和特征,面向主题业务系统一般是以优化事务处理的方式构造数据结构的,因此某个主题数据常常分布在不同的业务数据库中,对于决策支持不利。,数据仓库的功能和特征,计费数据库,账务数据库,客户服务数据库,市场信息数据库,业务系统,面向主题分析,集成,计费数据库,账务数据库,客户服务数据库,市场信息数据库,现有业务系统,面向主题的数据仓库,收益数据 客户数据 市场数据,为了解决上述问题,数据仓库把上述数据集中。客户基本

9、信息表 客户呼叫记录表客户标识号 客户标识号客户姓名 客户呼叫时间客户年龄 客户呼叫地点客户地址 客户呼叫号码 呼叫时长 呼叫费率 客户话费表客户标示号 客户咨询表客户本月总话费 客户标识号本月通话费 客户咨询内容本月短信费 咨询答案,数据在数据仓库中还是以数据表的形式存储,但数据的组织方式和建模方法有大的变化,现有业务数据库系统中的数据是分散的。而决策支持需要集成的数据。实际上,要对分散的数据进行集成,首先要完成对数据的清洗和转化。而数据转化会遇到如下问题:,数据的集成性,数据格式:比如电话号码在不同数据库中采用char(10)、varchar(50)、integer格式,没有统一。测量单位

10、:不同的数据库中对于统一属性的测量单位可能不同,比如时间使用微妙、秒、分钟、小时数据代码含义混乱:比如用定义H高、M中、L低分别表示收入级别。有的数据库设计者可能定义1高、2中、3低分别表示收入级别。,集成中遇到的问题,数据名称混乱:比如客户名称,有的设计者定义为user_name,有的定义为name,有的定义为USERNAME 等。,集成中遇到的问题,下图实例了实际问题中可能遇到的数据转化工作:,集成中遇到的问题,进一步考虑,数据仓库必须能够使集成数据以一定的周期进行刷新,使决策者能够使用新增的数据。刷新周期取决于需要分析的问题。,集成中遇到的问题,数据库中的数据是不稳定的,记录系统中每一个

11、变化的瞬态。而决策分析必须与历史数据为依托。在数据仓库中,定期增加记录,而从不删除。不必投入过多精力于并发控制等环节。访问全部是只读方式。,数据的稳定性,例子:在3 月23 日,100 号客户的消费金额为200 元,当时间推移到3 月24 日,100 号客户的消费金额变成250 元,这一信息在业务系统中被更新了。但是在数据仓库中(假定数据仓库每天进行一次数据提取),3 月23 日的数据提取结果是在数据仓库中增加了记录XXX,说明100 号客户在3 月23 日的消费金额为200 元,在执行3 月24 日的数据提取工作后,原先的记录XXX 并没有发生任何的改变,而是在数据仓库中增加了一条新的记录Y

12、YY,说明100 号客户在3 月24 日的消费金额为250元。可见,数据仓库实际上是为100 号客户的消费行为进行了定期的拍照。,数据的稳定性,由于在数据仓库中数据只增不删,这使得数据仓库中的数据总是拥有时间维度。数据仓库实际上就是记录系统的各个瞬态,并通过将各个瞬态连接起来形成动画,从而在数据分析的时候再现系统运动的全过程,数据随时间变化的特点,数据仓库中的数据不再像数据库中的数据具有严格规范化的特点。数据仓库为了能够在尽量短的时间内将数据呈现给使用人员,使用所谓的“空间换时间”的技术,牺牲了数据的规范化,增加了数据的冗余度,从而减小系统的响应时间。,数据仓库的功能和特征,数据库系统和数据仓

13、库系统在硬件的利用模式上具有很大的区别。在数据库环境下,硬件资源利用率总是保持在一个相对稳定的状态。,数据仓库的功能和特征,而在数据仓库环境下,系统的硬件资源常常在高用率和低利用率之间切换。,数据仓库的功能和特征,由于数据库系统和数据仓库系统在硬件利用率上的差异,难于在同一台服务器上既优化操作型处理,又优化分析型处理因此数据库系统和数据仓库系统在物理上应当由不同的服务器来运行。,数据仓库的功能和特征,数据仓库的数据组织结构在数据仓库中,数据被分成 4 种级别,分别是:高度综合级轻度综合级当前细节级早期细节级,数据仓库的数据组织,当前的数据总是首先进入当前细节级,然后根据应用的需求,通过预运算将

14、数据聚合成轻度综合和高度综合级。在数据仓库中,细节数据可以聚合成轻度和高度综合级别的数据,比如按“月”“季度”“年”统计,需要说明的是轻度和高度是一种相对的概念,而没有绝对的边界,并且在数据仓库中数据的综合程度常常有很多的级别。过期的老化数据被导出到备份设备上。,实际上综合数据也可能被导出系统。比如企业的管理者认为企业的决策只同企业近 15年来的运营数据有关,则 15 年之前的综合数据也可以导出。对于高度综合的数据,由于其数据量已经很少,所以一般可以不考虑它们的导出问题。,总的来说,数据仓库的这种组织方式的核心思想是在系统中保留最有可能被用户使用的数据,而用户很少使用的数据则备份出系统。,数据

15、颗粒度是数据仓库中极其重要的概念。我们知道数据仓库是面向 OLAP(联机分析处理)和DM(数据挖掘)的,对于OLAP 和DM 数据颗粒度有不同的含义。OLAP 的一个重要的功能就是向最终用户呈现不同综合程度的数据。第一种粒度就是对数据仓库中数据综合程度高度的一个度量。数据的综合程度不同,其数据量将相差很大。数据粒度越小,信息越细节,数据量越大。数据粒度越大,忽略了众多的细节,数据量越小。,数据颗粒度,按照每“月”统计的客户呼叫数据和按照每次呼叫记载的客户呼叫数据,两者的数据量相差极大。每个字段为8 个字节,每个用户一天进行5 次通话,则一个客户1 个月的呼叫细节数据的数据量为:86305720

16、0 字节。而一个客户1 个月的呼叫汇总数据的数据量为8432字节。,数据的综合程度还会影响数据的用途。对于多维查询来说,可能使用的是细节数据,例子:回答“王五在 2001/3/21 号是否在北京给赵六发送了短信”这样非常细致的问题,细节数据非常合适,而综合数据不可能回答,因为数据的综合使得细节信息丢失。例子:回答“王五在2001/3 到2001/7 间的总话费是多少”,使用细节数据将需要进行统计运算后才能回答,这将增加用户的等待时间,而使用综合数据则可以迅速地回答这个问题。,综合程度不同的数据其用途不同,在数据仓库中多重的数据粒度是必不可少的。但是,由于数据仓库最主要的目的是反映企业整体信息和

17、DSS 分析,回答综合程度较高的问题。,粒度的第二种形式是针对数据挖掘的。数据挖掘计算的复杂度较高,如果将数据仓库中存放的巨量数据直接运算,系统难于承受。进行数据挖掘时,需要对数据仓库中的数据进行抽样。粒度的第二种形式是指抽样率,即以一定的抽样率对数据仓库中的数据进行抽样后得到一个样本数据库,数据挖掘将在这个样本数据库上进行。,由抽样带来的模型误差可以在模型建立之后再次使用源数据对模型进行校验和调整,这样可以大大缩短模型建立的时间,提高模型的精确度。数据挖掘就是通过这样的循环来不断地改进分析模型。,在抽样中,抽样率和抽样方法要慎重考虑。过大的抽样率将浪费系统的计算资源;过小的抽样率可能使得样本

18、数据集合太小,而不能反映源数据特征。,例子:比如将19952001 年的客户呼叫行为放在一张表中,则一次查询需要检索整张表,如果问题的范围只在2001 年内,则我们仅需检索2001 年的信息即可。另一种想法就是将客户呼叫行为按年分成1995、1996、1997、1998、1999、2000、2001 等几张表,则我们只需检索2001 表即可。对于一个数据量很大的系统来说,这两种策略的效率相差很大。,数据的分割,所谓数据分割是指将数据分散到各自的物理单元中以便能够独立处理,提高数据处理的效率。数据分割后的数据单元称为分片。数据分割没有固定的标准,分割的方法和粒度应当根据实际情况来确定。分割方法常

19、常可以选择时间、地点、业务领域来划分。按照时间进行分割符合数据仓库数据随时间变化的特点,并且分割后数据分布比较均匀,是最常用的分割方法。,按照地理位置分割,如果问题涉及的数量非常大,可以按照问题的需求从多个角度进行分割例如按照时间和地理位置两个角度进行分割。,按照时间和地理位置分割,重组是对分割的数据进行新的组合,1简单堆积文件每天由数据库提取并处理后的数据逐天存储起来,数据仓库数据组织形式,2定期综合文件在定期综合文件这种方式中,数据存储单位被分成日、周、旬、月、季度、年等多个级别,如图所示。数据被逐一地添加到每天的数据集合中,当一个星期过去了,每天数据被综合成周数据,以此类推,周数据被综合

20、成月数据,定期综合文件的组织方式使得数据量比简单堆积文件方式大大减小,但是数据的细节在综合中丢失。因此,定期综合文件的形式是牺牲数据的细节换取数据量级的减小。,3连续文件定期综合文件数据量级小时丢失了数据细节,简单堆积文件保留细节但数据量级又很大,是否可以综合两者形式的优点呢?,在简单堆积文件中,每天的数据表中有许多雷同的信息,例子:商场2001/1和2001/2 的两张采购表,其中“牙膏”和“毛巾”在两个表都出现了。“牙膏”在2001/1 是从上海购买的,而2001/2 是在北京购买,其他的信息都相同。如果能够记录两表之间不同的信息,则既能保留细节信息,又能大大减小数据量。,对于两个表中相同

21、的表项“毛巾”,只需在时间列上说明使用范围是“2001/1001/2”,对于两表不同的表项分别记录。,随着时间的推移,如果又有新的数据表加入,则我们可以使用连续文件和新的数据表进行类似的处理。但是,连续文件增加的“时间”列也会为查询带来一定的不便。一个系统某些性能的提高,总是通过牺牲其他的性能来获得的。,数据的组织结构和数据的组织形式解决的是数据仓库数据的存储问题。数据追加解决的是在数据仓库初始数据转载后,如何再向数据仓库输入数据的问题。,数据仓库的数据追加技术,如果数据库中的数据没有发生变化,则不需要对数据仓库进行追加,因此,数据追加实际上只增加在上次数据输入后数据库中变化了的数据。要完成数

22、据追加的工作,最关键的是“捕获”数据变化,并将数据的变化记录下来。,1时标法最早提出“时标法”的思想是为数据记录增加一个时间标记。当数据在上次数据导入完成后发生了变化,则修改这条记录的时间标记。例子:如图所示。,但是,在时间的数据库系统中,通常没有专门的时间标记。数据库应用的设计者主要是从实现事务处理的功能角度来考虑问题,因此,数据库应用的设计者通常不会增加时间标记列,因为该列对于事务处理系统来说是不必要的。由于这些原因,时标法虽然简单,很难得到应用。,2前后映像比较法另一种简单的方法是前后映像比较法,其想法很简单:将上次执行完数据追加任务的数据库快照记录下来,同要执行新的数据追加任务前的数据

23、库快照进行比较,比较这两次快照的不同,来生成追加的内容。,如果数据库的数量级很大,进行这样全数据库的比较将会耗费大量的系统资源和时间。,3DELTA 文件法后来,人们又提出了从应用程序来感知数据变化的方法“DELTA 文件法”。其基本思想是:数据的变化是由数据库应用程序引发的,因此数据库应用程序应当知道它修改了哪些数据,应用程序可以将它执行成功的修改操作记录下来,形成DELTA 文件作为追加的内容。,数据库的应用程序主要是为了完成事务处理而设计的,要使所有的应用程序都支持DELTA 文件的功能在实际的工程应用中很难,因此,这种方法也没有得到实用化。,4日志文件法(真正实用方法)各个应用程序都是

24、通过同数据库服务器进程通信来实现其数据访问功能,最终数据的访问和处理工作是由数据库服务器来承担,因此数据库服务器能够感知数据的变化。如果数据库开启了系统日志,数据库服务器将会把它所执行的所有操作详细地记录下来。我们可以通过分析数据库日志来获取数据变化的情况。,一段简化了的系统日志,它包含操作时间、操作人员、操作内容、操作结果(包你括正确和错误)等基本信息。我们可以通过对数据追加任务完成后新生成的系统日志进行分析,得到追加内容。,例如,对于条目“2001/1/1:9:01:LiMing SELECT*FROM user WHERE user_id100;”是查询操作可以忽略。对于条目“2001/

25、1/1:9:00:LiMing UPDATE user.name=林冲WHERE user_id=100;”,数据库用户LiMing 将100 号客户name 修改为林冲,但是我们发现后面的条目“2001/1/1:9:00:sa UPDATE user.name=林胜之WHERE user_id=100;”,sa 将100 号客户name 修改为林胜之,我们只需将后一条引起的变化记录下来即可。,由此,可以知道并不是日志文件中所有的信息都是必须的,通过分析日志文件可以减少工作量。虽然日志文件法需要对日志本身进行比较复杂的分析,但是比起其它方法明显更加可行。得到了广泛的使用。,2.3.6 清理数据

26、仓库的数据同任何系统一样,数据仓库系统中数据也具有自身的生命周期,数据清理是数据仓库设计人员需要重点考虑的问题之一。数据仓库的清理与普通系统中数据清理的含义有区别。在普通的系统中,数据清理意味着将数据删除。而数据仓库系统中清理并不是简单地删除,而是从细化级别的数据逐渐上升为高级综合度的数据,直到数据已经不再具备任何意义时被清除的过程。,数据仓库中清理的过程如下:数据从操作型环境进入分析型环境;数据从细节数据逐渐转换为综合数据;数据从高速磁盘中转移到低速存储介质上;数据失去实际意义,最终被清除。这个过程实际上也是数据在数据仓库中的生命周期。,2.4 OLAP的基本原理 2.4.1 基本概念变量维

27、:与某一事件相关的因素在关系模型的抽象。例子:客户打电话这一事件中包含客户、时间、地点、业务提供商、业务类型等,维的层次性:时间维度可以用“日”作为单位刻度,也可以使用“周”、“月”、“年”等作为时间维度的单位刻度。维的取值:例子:地理维由国家、省、地区3 个层次构成,则“中国福建省厦门地区”是维的一个取值。,维的分类:例子:产品可分成“畅销”、“不畅销”。事实:不同维度在某一取值下的交叉点,它是对事件的度量。多维数据立方体:例子:立方体的3 个维度分别是客户维、时间维、地理维,反映的是客户通话情况。立方体中每一个交点对应于一个事件,比如图中标明的那个点代表事件“王五于2001 年1 月1 日

28、在北京进行了一次通话”。,2.4.1 OLAP 的基本分析动作数据切片多维数据是由多个维度组成的,如果在某一维度上选定一个取值,则多维数据就从n 维下降成了n-1 维,我们称多维数组的子集(维度1、维度2、维度3维度i,维度i+1,.维度n,度量变量)为多维数组在维度i 上的切片。,例子:如果存在一个(时间,城市,产品,价格)的数据立方体,其中时间、城市、产品是3 个维度,价格是度量变量。在城市维上取定“上海”、“广州”,则分别形成两个在城市维上的数据切片,分别显示的是上海和广州各年各种产品的价格情况。再如,图中右下角在产品维中取定“电视机”、“电冰箱”,则分别生成两个在产品维上的数据切片,显

29、示的是各个城市各年份电视机和电冰箱的价格情况。,数据切块将完整的数据立方体切取一部分数据而得到的新的数据立方体例子:假设问题同时间维、地理维、产品维相关,指定时间维的取值为19982001,地理维指定为(上海、北京、广州),产品维指定为(计算机、电冰箱、电视机),则我们可以得到如图数据切块,它是原先完整的数据立方体的一部分。,数据钻取:从较高的维度层次下降到较低的维度层次上来观察多维数据。例子:展示了一个企业在不同时间和地理上的销售量的分布情况。图中的第一张表,时间层次是“年“,如果我们选择时间维度向下钻取,得到图中的第二张表,第二张表显示的是该企业每年每季度在各个分区上的销售情况。同理,如果

30、我们在季度层次上继续向下钻取,则得到第三张表,它显示的该企业每年、每季度、每月在各个分区上的销售情况。,数据聚合是钻取的逆向操作数据旋转改变维度的位置关系,使最终用户可以从其他视角来观察多维数据。例子:在维度层次之间进行了交换,这使得最终用户能够更好地对不同年份同时期的数据进行比较。,2.5 数据挖掘基础2.5.1 数据挖掘的概念在“数据矿山”中找到蕴藏的“知识金块”,帮助企业减少不必要投资的同时提高资金回报。,数据挖掘分为描述性分析(Description)和预测性分析(Prediction)。描述性分析用于了解系统实际数据存在的特性,其目的是为了预测作准备。包含了关联(Associatio

31、n)分析、序列(Sequential)分析、聚类(Clustering)分析和滤除(Distillatin)分析等方法。,预测性分析是在描述性分析得到结论的基础上对系统的发展进行估计,通过预测性分析能得到最终需要的结果,能够为决策者提供直接的依据。分成分类(Classification)型预测和统计回归(Statistical Regression)型预测。常用的数学模型包括:决策树(Decision Trees)模型、规则推理(Rule Induction)模型和神经元网络(Neural Networks)模型。,描述性挖掘分析主要有关联规则、序列模型分析、聚类分析举关联规则例子如下:规则:

32、“If 条件成立,then 结论”。分有用的、价值不高的、费解的三种。支持度:假定有一个超市,如果88%的顾客都购买了商品A,则我们定义88%为商品A 的支持度。,可信度:假定68%的顾客购买了商品A、B 和C,则我们可以定义这样一条规则,“购买了商品A和B 的顾客,将会购买商品C”,规则的可信度是68%。最小支持度(Min Support):如果某种规则发生的概率低于指定的最小支持度,则我们可以不考虑这些规则。,最小置信度(Min Confidence):如果某个规则成立的概率很小,则这个规则将没有什么用处。,同时购买啤酒和尿布占总购买人次的0.75置信度,“如果购买了啤酒,则也购买尿布”这条规则的支持度:,得到了一些有用的结论。指导货架的摆放。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号