基于SQL Server的联机分析挖掘模型研究

时间:2022-03-15 04:50:43

基于SQL Server的联机分析挖掘模型研究

摘 要:联机分析挖掘(OLAM)是一项新兴前沿的概念,他不但无缝集成了OLAP和Data Mining技术,具有两者各自的优势,而且将整个数据分析领域提升出一个新亮点。介绍OLAM提出的缘由和体系结构以及一些关键性的技术,阐述选取SQL Server 2005作为联机分析挖掘模型研究的详细思路,着重利用SQL Server 2005在无缝集成方面的优势,用一个具体实例对OLAM模型进行具体的建模分析和研究,以期待OLAM作为一门新工具为用户辅助决策。

关键词:联机分析挖掘;SQL Server 2005;分析服务;多维数据集

中图分类号:TP302.1文献标识码:A

文章编号:1004-373X(2008)08-109-03オ

Research of Online Analytical Mining Model Based on SQL Server

RAO Wenbi,WANG Junqiang,TAN Xiaohua

(School of Computer Science,Wuhan University of Technology,Wuhan,430070,China)オ

Abstract:The Online Analytical Mining (OLAM) is a newly arisen concept of leading edge fields.It is not only seamless to integrate OLAP and Data Mining technology and has both advantages respectively,but also it proposes a new highlight in the whole fields of data analysis.This article introduces the origin of the OLAM and its architecture as well as a number of key technologies,and then describes the detailed ideas of selecting SQL Server 2005 as a research tool.Finally using SQL Server 2005 with the seamless integration technology to do a research and analyzing an instance of OLAM module,so that looking forward to the coming of OLAM as a new tool for users to support decisionmaking.

Keywords:online analytical mining;SQL Server 2005;analysis services;cube

联机分析挖掘技术(OLAM)是一种新的体系结构,也是一个多学科交叉的研究领域。他在OLAP和Data Mining两者进行优势互补的基础上进行了无缝集成,使之成为目前最热门的研究技术之一。他的基本操作是将数据挖掘功能(关联、分类、预测等)与OLAP的钻取(Drilling)相结合,以数据立方体为基础在多维度和多层次的抽象空间中进行数据挖掘,利于灵活地挖掘知识。

1OLAM的提出

联机分析处理(Online Analytical Processing,OLAP)是由关系数据库之父E.F.Codd于1993年提出的:共享多维信息、针对特定问题的联机数据访问和分析技术。具有快速性、可分析性、多维性、信息性、共享性5个特点。OLAP具有灵活的分析功能,直观的数据操作和分析结果可视化表示等突出优点,从而使用户对于基于大量复杂数据分析变得轻松高效,以利于迅速做出正确的判断,辅助决策。

数据挖掘(Data Mining)就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。他与传统的数据分析(如查询、报表、联机应用分析)的本质区别是数据挖掘是在没有明确假设的前提下去挖掘信息、发现知识。数据挖掘所得到的信息应具有先未知、有效和可实用3个特征。先前未知的信息是指该信息是预先未曾预料到的,即数据挖掘是要发现那些不能靠直觉发现的信息或知识,甚至是违背直觉的信息或知识,挖掘出的信息越是出乎意料,就可能越有价值。

OLAM正是以数据仓库为基础并结合OLAP与Data Mining当前二种成熟的技术而提出的一种新的功能强大的数据分析工具,以辅助分析和决策。本文主要通过以sql server 2005的Foodmart实例为基础来对OLAM模型进行分析和研究。

2 OLAM的体系结构

2.1 OLAM的结构层次

OLAM的体系结构分为4个层次:数据存储层、多维数据库(MDDB)层、OLAP/OLAM层和用户接口层。OLAM服务器通过用户图形接口接收用户的分析指令,在元数据的指导下,对数据立方体做一定的操作,然后将挖掘分析结果展现给用户,这个过程是动态的。由于市场上已经有许多OLAP产品,所以直接在已经建造好的数据立方体和OLAP引擎上开发OLAM机制是很重要的。

2.2 OLAM的关键技术

OLAM模型建立在多维数据视图的基础上。因此,基于数据立方体的挖掘算法是其核心所在。数据立方体的计算与传统挖掘算法的结合使得数据挖掘有了极大的灵活性和交互性。根据立方体的计算和数据挖掘所进行的次序的不同可以有一些不同的组合。

OLAM以多维模型为基础对数据立方体进行切片、切块、上卷、下钻等操作。因此,数据立方体是OLAM的关键,他会间接影响OLAM的性能。

数据仓库技术为OLAM提供分析和挖掘操作的数据基础,在OLAM系统中由于原始数据的类型不同,数据分析和挖掘算法不同,因而要求数据基础的数据组织形式能支持复杂的数据结构。

3 OLAM的模型构建

3.1OLAM工具的选取

由于Microsoft SQL Server 2005能将OLAP与Data Mining 进行无缝的联接,故首先考虑使用SQL Server 2005工具进行OLAM模型的研究和实验。

SQL Server 2000中包括的数据挖掘算法只有决策树算法和聚类算法,与之相比,SQL Server 2005中引入了多个新的数据挖掘算法,包括贝叶斯算法、时间序列算法、序列聚类算法、关联规则算法和神经网络算法。与传统的数据挖掘工具相比,SQL Server 2005具备许多优势,SQL Server 2005的数据挖掘与SQL Server,SQL Serve Integration Server,Analysis Services都进行很好的集成。SQL Server 2005具有易用性,可伸缩性和可扩展性等特点,同时他包含简单而丰富的API。

3.2 SQL Server 2005的OLAM机制

在Microsoft SQL Server 2005中,利用SSIS(SQL Server Integration Services)的DTS从SQL Server中对数据进行提取、转换和加载服务,再通过建立Analysis Services服务把数据进行具体分析,然后再按需加载到所建立的模型中。接着选用有针对性的挖掘算法和参数,对基于数据仓库建立的OLAP多维数据立方体进行无缝联机分析挖掘。访问挖掘出的结果和这些查询结果的方法是使用SQL Server Reporting Service。Reporting Service提供了一个创建定制报表的机制,这个报表通常包含文本和图形,可以通过HTML,Email、打印形式和Microsoft Office文档。

4 OLAM模型的实现

4.1 模型设计

基于OLAM的理论基础,利用Foodmart食品商店销售数据来建立数据仓库,并以1998年1,4季度销售所得的毛利润gross_profit为基础进行联机分析挖掘研究

首先通过SQL Server Management Studio建立一个食品商店数据库,导入模型所需要挖掘分析的表,然后创建数据库关系图。创建好后再打开SQL Server Business Intelligence Development Studio新建一个Analysis Services项目,然后新建一个数据源来连接刚在SQL Server Management Studio中建立的数据库,接着创建数据源视图DSV。数据源视图是数据在客户端的一个抽象视图,这也是建模工作开始的地方。在DSV中,可以选择、组织、浏览以及在某种意义上说可以操作数据源中的数据。为了分析食品商店一年的某个黄金时间段的毛利润收入来源情况,在销售事实表中需建立一个命名计算列gross_profit,把他定义为销售价格减去销售成本的差值。然后分别建立客户、商店、产品、促销、时间5个维度。客户维度自定义教育程度、职业、年收入、姓名4个层次;产品维度分为类别、品牌、产品3个层次;时间维度自定义年、季度、月、日4个层次。然后依据前面所建立的维度和层次结构建立相应的食品商店多维数据集,将存储模式设计为性能比较好的HOLAP模式并将聚合的标准设计为性能提升达到80%的标准。

4.2 模型建立

为了针对具体客户在某个时间段给商店带来的毛利润进行深入的挖掘分析,以前面的多维数据集为基础创建一个以客户事例表为维度的挖掘结构。然后将所需分析的客户教育程度、职业、年收入作为事例级别列的属性,将时间作为嵌套表,季度作为嵌套键,并加入命名计算列毛利润gross_profit,具体建模如图1所示。

然后对源多维数据集进行切片,将客户维度的层次结构选取为自定义的教育程度职业年收入;筛选值设置为高中、本科教育程度;职业设置为管理人员和专家,时间维度选取为1998年前后比较有代表性的第1和第4季度。

为了在数据中尽量寻找自然分组,以便对毛利润总体的来源情况进行归类分析,在建立数据模型的时候选取Microsoft的聚类算法。在该算法中将CLUSTER_COUNT参数值设置为0会使此算法使用试探性方法最合理地确定要生成分类的数目,再将控制模型收敛的STOPPING_TOLERANCE参数设定为3以便使聚类的结果更为清晰,最后对该聚类模型进行处理。

4.3对挖掘数据的具体分析

通过图2可以看到,针对于具体的问题,当将明暗度变量分别设为第1,第4季度毛利润、状态选择大于31.3时,很明显分类10,11颜色较深,说明这2个聚类给商店带来不少的毛利润。

再从图3的分类剖面图可以看到,分类10和11成为带来整个第1、第4季度毛利润的主要分类群。从图中分析得知,高中学历并从事手工体力劳动的人大部分年收入在MYM30KMYM50K之间,处于低收入水平,但给商店带来的毛利润却很高,与具有学士学历、专家水平的消费者水平相差几乎不多。

从图4中也可以很明显看到分类10和11与其他聚类的差别。可以看出,高学历高收入群体能给商店带来可观的利润,但大部分中等学历中低收入人群也能够在该时段成为商店毛利润的主要来源群体。[LL]

最后使用Reporting Services新建一个报表项目,如图5所示。由此报表可以很清楚的看到选取的具体客户按所需的分类方式以详细直观的形式展示出来,还可以通过HTML,Email等形式将此报表出去。

5 结 语

OLAM是当前一项比较热门的概念,他是OLAP与Data Mining技术相结合的产物,兼有OLAP多维分析的在线性、灵活性和数据挖掘对数据处理的深入性,并以数据仓库为基础实现更有效的辅助决策。但真正的OLAM技术在无缝集成方面做得还不够好,缺乏成熟的体系结构。目前的OLAM还在不断的探索和完善中,相信在不久的将来,OLAM必将在数据分析领域成为一项很成熟的技术并为分析人员甚至是用户提供更多的决策辅助。

参 考 文 献

[1]Sumathi S,Sivanandam S N.Data Warehousing,Data Mining,and OLAP Studies in Computational Intelligence.SCI,2006(29):2173.

[2]Jiawei Han.OLAP Mining: An Integration of OLAP with Data Mining [C].Proc.1997 IFIP Conference on Data Semantics(DS7),Leysin,Switzerland,1997(10):111.

[3]曹蓟光.联机分析数据挖掘技术(OLAM)的研究[D].杭州:浙江大学,2001.

[4]蒲晓湘,刘文才.联机分析挖掘(OLAM)技术的现状与发展[J].重庆大学学报,2004(3):3640.

[5]刘夫涛,张雷,艾波.OLAM以及基于Web的OLAM [J].计算机工程与应用,2000,36(9):108109.

[6]胡洪宁,郭福亮.一种基于OLAP与DM的OLAM模型的研究[J].计算机与数字工程,2005,33(3):3941.

[7]陆昌辉,黄权,刘青宝,等.维度汇总性判断方法研究\[J\].现代电子技术,2007,30(22):5154.

作者简介 饶文碧 女,1967年出生,湖北武汉人,武汉理工大学计算机科学与技术学院教授,博士。研究方向为普适计算、智能算法、数据挖掘等。

王骏强 男,1982年出生,湖北武汉人,硕士。研究方向为数据仓库、数据挖掘。

谭小花 女,硕士。研究方向为数据挖掘。

上一篇:基于SIP的社区医疗网络系统设计 下一篇:基于遗传块匹配算法的高效运动估计技术研究