欢迎投稿

今日深度:

1.3 对何种数据进行数据挖掘

1.3 对何种数据进行数据挖掘


1.3 对何种数据进行数据挖掘

本节,我们考察可以进行挖掘的各种数据储存库。原则上讲,数据挖掘可以应用于任何类型的信息储存库以及瞬态数据如数据流)。这样,我们考察的数据储存库将包括关系数据库、数据仓库、事务数据库、高级数据库系统、一般文件、数据流和万维网。高级数据库系统包括对象-关系数据库和面向特殊应用的数据库,如空间数据库、时间序列数据库、文本数据库和多媒体数据库。挖掘的难题和技术可能因存储系统而异。

尽管本书假定读者具备信息系统的基本知识,我们还是对上面列举的主要数据存储系统做简要的介绍。本节,我们还介绍虚构的AllElectronics商店,它在本书从头至尾用来解释概念。

1.3.1 关系数据库

数据库系统也称数据库管理系统DBMS),由一组内部相关的数据称作数据库)和一组管理和存取数据的软件程序组成。软件程序涉及如下机制:数据库结构定义,数据储存库以及并发、共享或分布的数据访问,在面对系统瘫痪或未授权的访问时确保存储的信息的一致性和安全性。

关系数据库是表的汇集,每个表都赋予唯一的名字。每个表包含一组属性列或字段),通常存放大量元组记录或行)。关系表中的每个元组代表一个对象,被唯一的关键字标识,并被一组属性值描述。通常为关系数据库构造语义数据模型,如实体-联系ER)模型。ER数据模型将数据库表示成一组实体和它们之间的联系。考虑下面的例子。例1-1 AllElectronics的关系数据库。AllElectronics公司由下列关系表描述:customer,item, employee和branch。这些表的片段在图1-6中给出。

图1-6 AllElectronics关系数据库的关系片段

• 关系customer有一组属性,包括顾客的唯一标识号cust_ID),顾客姓名、地址、年龄、职业、年收入、信用信息、分类等。

• 类似地,关系employee, branch和item都各自包含一组描述它们性质的属性。

• 表也可以用来表示多个关系表之间的联系。对于我们的例子,这种表包括purchase顾客购买商品,创建一个由雇员处理的销售事务),items_sold给定事务销售的商品列表)和work_at雇员在AllElectronics的一个分店工作)。

关系数据可以通过数据库查询访问。数据库查询使用如SQL这样的关系查询语言或借助于图形用户界面书写。在后一种情况下,用户可以使用菜单说明包含在查询中的属性和对属性的约束。一个给定的查询转换成一系列关系操作,如连接、选择和投影,然后优化,以便有效地处理。查询可以检索数据的一个指定的子集。假设要分析AllElectronics的数据。通过使用关系查询,可以要求:“显示上个季度销售的所有商品的列表”。关系查询语言也可以包含聚集函数,如sum, avg平均),count, max最大)和min最小)。这些使得你可以要求“显示上个月按分店分组的总销售”,或“多少销售事务出现在12月份?”或“哪一位销售人员的销售量最高?”

当数据挖掘用于关系数据库时,可以进一步搜索趋势或数据模式。例如,数据挖掘系统可以分析顾客数据,根据顾客的收入、年龄和以前的信用信息预测新顾客的信用风险。数据挖掘系统也可以检测偏差,如与前一年相比,哪种商品的销售出人预料。这种偏差可以进一步考察。例如,这种商品的包装是否有变化,或价格是否大幅度提高?)

关系数据库是数据挖掘最常见、最丰富的数据源,因此,它是我们数据挖掘研究的一种主要数据形式。

1.3.2 数据仓库

假设AllElectronics是一个成功的跨国公司,分部遍布全世界。每个分部都有一组自己的数据库。AllElectronics的总裁要你提供公司第三季度每种类型的商品、每个分部的销售分析。这是一项困难的任务,特别是因为相关数据散布在多个数据库,物理上驻留在多个站点。

如果AllElectronics有一个数据仓库,该任务将是容易的。数据仓库是一个从多个数据源收集的信息储存库,存放在一个一致的模式下,并且通常驻留在单个站点。数据仓库通过数据清理、数据变换、数据集成、数据装入和定期数据刷新过程来构造。该过程在第2、3章详细讨论。图1-7给出了AllElectronics的数据仓库构造和使用的典型框架。

图1-7 AllElectronics典型的数据仓库框架

为便于决策,数据仓库中的数据围绕诸如顾客、商品、供应商和活动等主题组织。数据存储从历史的角度如过去的5~10年)提供信息,并且通常是汇总的。例如,数据仓库不是存放每个销售事务的细节,而是存放每个商店每类商品的销售事务的汇总,或汇总到更高层次,如每个销售地区的汇总。

通常,数据仓库用多维数据库结构建模。其中,每个维对应于模式中一个或一组属性,每个单元存放某种聚集度量值,如count或sales_amount。数据仓库的实际物理结构可以是关系数据存储或多维数据立方体multidimensional data cube)。数据立方体提供数据的多维视图,并允许预计算和快速访问汇总数据。

例1-2 AllElectronics的数据立方体。AllElectronics的汇总销售数据的数据立方体在图1-8a中。该立方体有三维:address城市值芝加哥、纽约、多伦多、温哥华),time季度值Q1,Q2, Q3, Q4)和item商品类型值家庭娱乐、计算机、电话、安全)。存放在立方体的每个单元中的聚集值是sales_amount以千美元为单位)。例如,同安全系统有关的商品第一季度Q1在温哥华的总销售为400,存放在单元〈温哥华,Q1,安全〉中。其他立方体可以用于存放每个维的聚集和,对应于使用不同的SQL分组得到的聚集值例如,每个城市和季度的,或每个城市和商品的,或每个季度和商品的或每一维的总销售量)。

图1-8 一个通常用于数据仓库的多维数据立方体,a)显示AllElectronics的汇总数据;b)显示对于a)中的数据立方体下钻和上卷的汇总数据结果。为便于观察,只给出部分立方体单元值

你可能会问:“我听说过数据集市。数据仓库和数据集市的区别是什么?”数据仓库收集了跨部门的整个组织的主题信息,因此它是企业范围的。另一方面,数据集市data mart)是数据仓库的一个部门子集。它聚焦在选定的主题上,是部门范围的。

通过提供多维数据视图和汇总数据的预计算,数据仓库非常适合联机分析处理OLAP)。

OLAP操作使用数据的领域背景知识,允许在不同的抽象层提供数据。这些操作适合不同的用户。OLAP操作的例子包括下钻drill-down)和上卷roll-up),允许用户在不同的汇总级别观察数据,如图1-8b所示。例如,可以对按季度汇总的销售数据下钻,观察按月汇总的数据。

类似地,可以对按城市汇总的销售数据上卷,观察按国家汇总的数据。

尽管数据仓库工具对于支持数据分析是有帮助的,但是仍需要更多的数据挖掘工具,以便进行更深入的自动分析。数据仓库和OLAP技术的概述在第3章提供,而关于数据仓库和OLAP实现以及数据泛化的高级问题在第4章讨论。

1.3.3 事务数据库

一般,事务数据库由一个文件组成,其中每个记录代表一个事务。通常,一个事务包含唯一的事务标识号trans_ID)和组成该事务的项的列表如,在商店购买的商品)。事务数据库可能有一些与之相关联的附加表,包含关于销售的其他信息,如事务的日期、顾客的ID号、销售者的ID号、销售分店的ID号,等等。

例1-3 AllElectronics的事务数据库。事务可以存放在表中,每个事务一个记录。AllElectronics的事务数据库的片段显示在图1-9中。从关系数据库的观点来看,图1-9中的销售表是一个嵌套关系,因为属性“商品ID的列表”包含商品的集合。由于大部分关系数据库系统不支持嵌套关系结构,事务数据库通常存放在一个类似于图1-9中的表格式的一般文件中,或展开到类似于图1-6的items_sold表的标准关系中。

作为AllElectronics数据库的分析者,你可能问“显示Sandy Smith购买的所有商品”或 “有多少事务包含商品号I3?”回答这种查询可能需要扫描整个事务数据库。

假设你想更深地挖掘数据,问“哪些商品一块销售得很好?”这种购物篮数据分析使你能够将商品捆绑销售,作为一种最大化销售的策略。例如,已有打印机与计算机经常一起销售的知识,你可以向购买选定计算机的顾客提供一种较贵的打印机打折销售,希望销售更多较贵的打印机。常规的数据检索系统不能回答上面这种查询。然而,通过识别频繁项集—频繁一块销售的商品,事务数据的数据挖掘系统可以做到。事务数据库的频繁模式挖掘在第5章讨论。

回书目   上一节   下一节

www.htsjk.Com true http://www.htsjk.com/shujukukf/17334.html NewsArticle 1.3 对何种数据进行数据挖掘 1.3 对何种数据进行数据挖掘 本节,我们考察可以进行挖掘的各种数据储存库。原则上讲,数据挖掘可以应用于任何类型的信息储存库以及瞬态数据如数据流...
评论暂时关闭