首页 > 代码库 > 数据仓库与数据挖掘的一些基本概念

数据仓库与数据挖掘的一些基本概念

下面内容摘自互联网并作了整理。 

 

名词:

 BI(Business Intelligence):商业智能,

 

 DW(Data Warehouse):数据仓库,详见正文Q1部分。

 

 OLTP(On-Line Transaction Processing):联机事务处理

也称为面向交易的处理系统,其基本特征是顾客的原始数据能够马上传送到计算中心进行处理,并在非常短的时间内给出处理结果。这样做的最大长处是能够即时地处理输入的数据,及时地回答。也称为实时系统(Real time System)。衡量联机事务处理系统的一个重要性能指标是系统性能,详细体现为实时响应时间(Response Time),即用户在终端上送入数据之后,到计算机对这个请求给出答复所须要的时间。

OLTP 数据库旨在使事务应用程序仅写入所需的数据,以便尽快处理单个事务。

 

 OLAP(On-Line Analytical Processing):联机分析处理

      OLAP是E.F.Codd于1993年提出的。
  OLAP理事会的定义:OLAP是一种软件技术,他使分析人员可以迅速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的,这些信息是从原始数据直接转换过来的,他们以用户easy理解的方式反映企业的真实情况。
  OLAP大部分策略都是将关系型的或普通的数据进行多维数据存贮,以便于进行分析,从而达到联机分析处理的目的。这样的多维DB也被看作一个超立方体,沿着各个维方向存贮数据,它同意用户沿事物的轴线方便地分析数据,与主流业务型用户相关的分析形式一般有切片和切块以及下钻、挖掘等操作。

 

 DataMart:数据集市,为了特定的应用目的或应用范围,而从数据仓库中独立出来的一部分数据,也可称为部门数据或主题数据(subjectarea)。在数据仓库的实施过程中往往能够从一个部门的数据集市着手,以后再用几个数据集市组成一个完整的数据仓库。须要注意的就是再实施不同的数据集市时,同一含义的字段定义一定要相容,这样再以后实施数据仓库时才不会造成大麻烦。

 

 Data Mining:数据挖掘,详见正文Q5部分

 

 ETL:ETL各自是“Extract”、“ Transform” 、“Load”三个单词的首字母缩写也就是“抽取”、“转换”、“装载”,但我们日常往往简称其为数据抽取。ETL是BI/DW(商务智能/数据仓库)的核心和灵魂,依照统一的规则集成并提高数据的价值,是负责完毕数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

 

 MetaData:元数据,元数据是描写叙述数据仓库内数据的结构和建立方法的数据。可将其按用途的不同分为两类,技术元数据和商业元数据。技术元数据是数据仓库的设计和管理人员用于开发和日常管理数据仓库是用的数据。包含:数据源信息;数据转换的描写叙述;数据仓库内对象和数据结构的定义;数据清理和数据更新时用的规则;源数据到目的数据的映射;用户訪问权限,数据备份历史记录,数据导入历史记录,信息公布历史记录等。

       商业元数据从商业业务的角度描写叙述了数据仓库中的数据。包括:业务主题的描写叙述,包括的数据、查询、报表;

       元数据为訪问数据仓库提供了一个信息文件夹(informationdirectory),这个文件夹全面描写叙述了数据仓库中都有什么数据、这些数据怎么得到的、和怎么訪问这些数据。是数据仓库执行和维护的中心,数据仓库server利用他来存贮和更新数据,用户通过他来了解和訪问数据。

 

 

 Q1:什么是数据仓库?

数据仓库是一个面向主题的( Subject Oriented) 、集成的( Integrate) 、相对稳定的(NonVolatile) 、反映历史变化( Time Variant)的数据集合,用于支持管理决策。对于数据仓库的概念我们能够从两个层次予以理:①数据仓库用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;②数据仓库是对多个异构数据源的有效集成,集成后依照主

题进行了重组,并包括历史数据,并且存放在数据仓库中的数据一般不再改动。企业数据仓库的建设是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是静态的概念,仅仅有把信息及时交给须要这些信息的使用者,供他们作出改善其业务经营的决策,信息才干发挥作用,信息才有意义。而把信息加以整理、归纳和重组,并及时提供给对应的管理决策人员是数据仓库的根本任务。

 

 Q2:为什么要建立数据仓库?

       企业建立数据仓库是为了填补现有数据存储形式已经不能满足信息分析的须要。数据仓库理论中的一个核心理念就是:事务型数据和决策支持型数据的处理性能不同。

       企业在它们的事务操作收集数据。在企业运作过程中:随着定货、销售记录的进行,这些事务型数据也连续的产生。为了引入数据,我们必须优化事务型数据库。

       处理决策支持型数据时,一些问题常常会被提出:哪类客户会购买哪类产品?促销后销售额会变化多少?价格变化后或者商店地址变化后销售额又会变化多少呢?在某一段时间内,相对其它产品来说哪类产品特别easy卖呢?哪些客户添加?了他们的购买额?哪些客户又削减了他们的购买额呢?

       事务型数据库能够为这些问题作出解答,可是它所给出的答案往往并不能让人十分惬意。在运用有限的计算机资源时经常存在着竞争。在添加?新信息的时候我们须要事务型数据库是空暇的。而在解答一系列详细的有关信息分析的问题的时候,系统处理新数据的有效性又会被大大减少。还有一个问题就在于事务型数据总是在动态的变化之中的。决策支持型处理须要相对稳定的数据,从而问题都能得到一致连续的解答。

       数据仓库的解决方法包含:将决策支持型数据处理从事务型数据处理中分离出来。数据依照一定的周期(通常在每晚或者每周末),从事务型数据库中导入决策支持型数据库——既“数据仓库”。数据仓库是按回答企业某方面的问题来分“主题”组织数据的,这是最有效的数据组织方式。

       另外,企业日常运作的信息系统通常是由多个传统系统、不兼容数据源、数据库与应用所共同构成的复杂数据集合,各个部分之间不能彼此交流。从这个层面看:眼下执行的应用系统是用户花费了非常大精力和財力构建的、不可替代的系统,特别是系统的数据。而建立数据仓库的目的就是要把这些不同来源的数据整合组织起来统一管理,从而做到数据的一致性与集成化,提供一个全面的,单一入口的解决方式。这个让我联想到SOA的理念,只是前者是数据层面的整合优化,后者是应用服务层面的整合优化。

 

 Q3:数据仓库的一般结构是如何的?

  1.体系结构:

(1)数据源是数据仓库系统的基础,是整个系统的数据源泉,通常包含企业内部信息和外部信息。

(2)数据的存储与管理是整个数据仓库系统的核心。数据仓库依照数据的覆盖范围能够分为企业级数据仓库和部门级数据仓库(通常称为数据集市) 。

(3)OLAP (On Line Analytical Processing)server对分析须要的数据进行有效集成,按多维模型予以组织,以便进行多角度、多层次的分析,并发现趋势。

(4)前端工具主要包含各种报表工具、查询工具、数据分析工具、数据挖掘工具以及各种基于数据仓库或数据集市的应用开发工具。

 

 2.事实表和维表

事实表和维表是多维模型中的两个基本概念。

事实表是数据分析所相应的主要数据项,通常是企业内的某项业务或某个事件。事实表中的事实一般具有数据特性和可加性,事实表中能够存储不同粒度的数据,同一主题中不同粒度的数据一般存储在不同的事实表中。

维表中包括的通常是描写叙述性的文本信息,这些文本信息将成为事实表的检索条件。维表中的维属性应该详细明白,体现出维层次的划分,可以成为分析型查询的约束条件,这是数据仓库与操作型应用在数据模型设计上的一个不同点。维表层次的级别数量取决于查询 的粒度。在实际业务环境中,多维数据模型一般含有4~15维,很多其它的维数或更少的维数一般都非常少见。在详细工作中,设计人员一定要依据企业的实际情况确定对应的维。

在多维模型中,事实表的主码是组合码,维表的主码是简单码,事实表中与维表主码相相应的各个组成部分是外码。事实表通过与各维相相应的外码值同维表联系在一起。查询时通过事实表和维表之间的这样的相应关系。

 

  3.数据组织结构:

      星型模型     

多维数据建模以直观的方式组织数据,并支持高性能的数据訪问。每个多维数据模型由多个多维数据模式表示,每个多维数据模式都是由一个事实表和一组维表组成的。多维模型最常见的是星形模式。在星形模式中,事实表居中,多个维表呈辐射状分布于其四周,并与事实表连接。

位于星形中心的实体是指标实体,是用户最关心的基本实体和查询活动的中心,为数据仓库的查询活动提供定量数据。每一个指标实体代表一系列相关事实,完毕一项指定的功能。位于星形图星角上的实体是维度实体,其作用是限制用户的查询结果,将数据过滤使得 从指标实体查询返回较少的行,从而缩小訪问范围。每一个维表有自己的属性,维表和事实表通过keyword相关联。

 

      雪花模型

  雪花模型是对星型模型的扩展,每一个维度都可向外连接到多个具体类别表。在这样的

模式中。维度表除了具有星型模型中的维度表功能外,还连接上对事实表

进行具体描写叙述的洋细类别表。具体类别表通过对事实表在有关维上的具体描写叙述,达到了

缩小事实表、提高查询效率的目的。

 

 Q4:怎样设计并建立数据仓库?

设计数据仓库的九个步骤

  1)选择合适的主题(所要解决这个问题的领域)

  2)明白定义fact表

  3)确定和确认维

  4)choosing the facts

  5)计算并存储fact表中的衍生数据段

  6)rounding out the dimension tables

  7)choosing the duration of the database

  8)the need to track slowly changing dimensions

  9)确定查询优先级和查询模式。

  技术上

  硬件平台:数据仓库的硬盘容量通常要是操作数据库硬盘容量的2-3倍。通常大型机具有更可靠的性能和和稳定性,也easy与历史遗留的系统结合在一起;而PCserver或UNIXserver更加灵活,easy操作和提供动态生成查询请求进行查询的能力。选择硬件平台时要考虑的问题:是否提供并行的I/O吞吐?对多CPU的支持能力怎样?

  数据仓库DBMS:他的存储大数据量的能力、查询的性能、和对并行处理的支持怎样。

  网络结构:数据仓库的实施在那部分网络段上会产生大量的数据通信,需不须要对网络结构进行改进。

  实现上

  建立数据仓库的步骤

  1)收集和分析业务需求

  2)建立数据模型和数据仓库的物理设计

  3)定义数据源

  4)选择数据仓库技术和平台

  5)从操作型数据库中抽取、转化、和装载数据到数据仓库

  6)选择訪问和报表工具

  7)选择数据库连接软件

  8)选择数据分析和数据展示软件

  9)更新数据仓库

  数据抽取、清理、转换、和移植

  1)数据转换工具要能从各种不同的数据源中读取数据。

  2)支持平面文件、索引文件、和legacyDBMS。

  3)能以不同类型数据源为输入整合数据。

  4)具有规范的数据訪问接口

  5)最好具有从数据字典中读取数据的能力

  6)工具生成的代码必须是在开发环境中可维护的

  7)能仅仅抽取满足指定条件的数据,和源数据的指定部分

  8)能在抽取中进行数据类型转换和字符集转换

  9)能在抽取的过程中计算生成衍生字段

  10)能让数据仓库管理系统自己主动调用以定期进行数据抽取工作,或能将结果生成平面文件

  11)必须对软件供应商的生命力和产品支持能力进行细致评估

 

 Q5:什么是数据挖掘? 

数据挖掘(Data Mining)就是从大量的、不全然的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在当中的、人们事先不知道的、但又是潜在实用的信息和知识的过程。

  数据挖掘是一门交叉学科,它把人们对数据的应用从低层次的简单查询,提升到从数据中挖掘知识,提供决策支持。在这样的需求牵引下,汇聚了不同领域的研究者,尤其是数据库技术、人工智能技术、数理统计、可视化技术、并行计算等方面的学者和project技术人员,投身到数据挖掘这一新兴的研究领域,形成新的技术热点。

 

 Q6:怎样进行数据挖掘?

1.   确定业务对象

清晰地定义出业务问题,认清数据挖掘的目的是数据挖掘的重要一步。挖掘的最后结构是不可预測的,但要探索的问题应是有预见的,为了数据挖掘而数据挖掘则带有盲目性,是不会成功的。

2.   数据准备

1) 数据的选择

搜索全部与业务对象有关的内部和外部数据信息,并从中选择出适用于数据挖掘应用的数据。

2) 数据的预处理

研究数据的质量,为进一步的分析作准备。并确定将要进行的挖掘操作的类型。

3) 数据的转换

将数据转换成一个分析模型。这个分析模型是针对挖掘算法建立的。建立一个真正适合挖掘算法的分析模型是数据挖掘成功的关键.

3.   数据挖掘

对所得到的经过转换的数据进行挖掘。除了完好从选择合适的挖掘算法外,其余一切工作都能自己主动地完毕。

4.   结果分析

解释并评估结果.其使用的分析方法一般应作数据挖掘操作而定,一般会用到可视化技术。

5.   知识的同化

将分析所得到的知识集成到业务信息系统的组织结构中去。

 

 Q7:数据仓库与数据挖掘的关系是如何的?

 数据仓库和数据挖掘的关系数据仓库和数据挖掘都是数据仓库系统的重要组成部分, 它们既有联系, 又有差别。

联系是:

(1) 数据仓库为数据挖掘提供了更好的、更广泛的数据源。

(2) 数据仓库为数据挖掘提供了新的支持平台。

(3) 数据仓库为更好地使用数据挖掘这个工具提供了方便。

(4) 数据挖掘为数据仓库提供了更好的决策支持。

(5) 数据挖掘对数据仓库的数据组织提出了更高的要求。

(6) 数据挖掘还为数据仓库提供了广泛的技术支持。

差别是:

(1) 数据仓库是一种数据存储和数据组织技术, 提供数据源。

(2) 数据挖掘是一种数据分析技术, 可针对数据仓库中的数据进行分析。

   

 Q8:数据仓库与数据挖掘在一些商业领域中的应用及现实意义

1)商品销售。商业部门把数据视作一种竞争性的財富可能比不论什么其它部门显得更为重要,为此须要把大型市场营销数据库演变成一个数据挖掘系统。科拉福特(Kraft)食品公司(KGF)是应用市场营销数据库的公司之中的一个,该公司搜集了购买它商品的3000万个用户的名单,这是(KGF)通过各种促销手段得到的。KGF定期向这些用户发送名牌产品的优惠券,介绍新产品的性能和使用情况。该公司体会到了解自己商品的用户越多,则购买和使用这些商品的机会也就越多,公司的营业状况也就越好。
2)制造。很多公司不仅决策支持系统用于支持市场营销活动,并且,由于市场竞争越演越烈,这些公司已使用决策支持系统来监视制造过程,有制造商声称已经指示它的各个办事机构,在三年内把制造成本每年减少25%。不言而喻,该制造商常常收集各部件供应商的情况。由于,它们也必须遵循该制造商减少成本的战略。为了对付来自各方的挑战,该制造商已拥有一套“成本”决策支持系统,能够监视各供应商提供的零部件成本,以实现所制定的价格目标,这样的应用须要收集有关各厂商连续一年来的产品成本信息,以便确定这样的组织方式是否能满足原先制定的有关降价的战略目标。
3)金融服务/信用卡。通用汽车公司(General Motors)已经採用信用卡——GM卡,在该公司的数据库中已拥有1200万个持有信用卡的客户。公司通过观察,能够了解他们正在驾驶什么样的汽车,下一步计划购买什么样的汽车及他们喜欢哪一类车辆。譬如说,一个持有信用卡的客户表示对一种载货卡车感兴趣,公司就能够向卡车部门发出一个电子邮件,并把该客户的信息告诉有关部门。
4)远程通讯。很多远程通讯的大公司近来突然发现它们面临极大的竞争压力,这在几年前是不存在的。在过去,业务上并不须要他们密切注视市场动向,由于顾客的挑选余地有限,可是这样的情况近来发生非常大变化。各公司当前都在积极收集大量的顾客信息,向他们现有的客户提供新的服务,开拓新的业务项目,以扩大他们的市场规模。从这些新的服务中,公司在短期内就能够取得更大的效益。