1、从 OLAP、数据挖掘到 OLAMOLAP(联机分析处理)与 DM(数据挖掘)都是数据库(数据仓库)的分析工具,在实际应用中各有侧重。前者是验证型的,后者是挖掘型的。前者建立在多维视图的基础之上,强调执行效率和对用户命令的及时响应,而且其直接数据源一般是数据仓库;后者建立在各种数据源的基础上,重在发现隐藏在数据深层次的对人们有用的模式(Patterns),一般并不过多考虑执行效率和响应速度。OLAMOnLine Analytical Mining是二者相结合的产物,又称为 OLAP Mining,目前是学术界研究的一大热点。本文在简单介绍OLAP和数据挖掘的基础上,重点讨论 OLAM的发展动力
2、、体系结构及发展前景。 OLAP与数据挖掘 OLAP 主要有两个特点,一是在线性(OnLine),体现为对用户请求的快速响应和交互式操作,它的实现是由 Client/Server这种体系结构来完成的;二是多维分析(Multi_Analysis),这也是 OLAP技术的核心所在。 目前,针对 OLAP技术的研究领域相当活跃,对 OLAP的理解也不断深入。有人提出了 OLAP的更为简洁的定义,如 Nigel Pendse提出的 FASMI(Fast Analysis Of Shared Multidimensional Information)。他将 OLAP所满足的特点用五个词来描述:Fast:
3、对用户请求的快速响应;Analysis:可以应用多种统计分析工具、算法对数据进行分析;Shared:多个用户同时存取数据时,保证系统的安全性;Multidimensional:体现了 OLAP应用多维的实质;Information:指应用所需的数据及其导出信息。 DM(Data Mining),或者说 KDD,是从大量原始数据中抽取模式的一个处理过程,抽取出来的模式就是所谓的知识,必须具备可信、新颖、有效和易于理解这四个特点。 OLAMOLAP Mining OLAP数据挖掘=OLAM 从以上的分析中我们可以发现,OLAP 和 DM虽然都是数据库(数据仓库)的分析工具,但其应用范围和侧重点是不
4、同的。 OLAP 的在线性体现在与用户的交互和快速响应,多维性则体现在它建立在多维视图的基础上。用户积极参与分析过程,动态地提出分析要求、选择分析算法,对数据进行由浅及深的分析。 DM 与 OLAP不同,主要体现在它分析数据的深入和分析过程的自动化,自动化是说,其分析过程不需要用户的参与,这是它的优点,也正是它的不足,因为在实际中,用户也希望参与到挖掘中来,如只想对数据的某一子集进行挖掘,以及对不同抽取、集成水平的数据进行挖掘,还有想根据自己的需要动态选择挖掘算法等等。 由此可见,OLAP 与 DM各有所长,如果能将二者结合起来,发展一种建立在 OLAP和数据仓库基础上的新的挖掘技术,将更能适
5、应实际的需要。而 OLAM(Online Analytical Mining或 OLAP Mining),正是这种结合的产物。 发展 OLAM的原始驱动力有以下几点: (1) Data Mining工具需要的数据是一些经过净化、集成处理的数据,通常这种处理过程也是昂贵的;而 DW(Data Warehouse,数据仓库)作为 OLAP的数据源,存储的就是这样的数据。它能为 OLAP提供数据,当然也可以为 DM提供数据; (2) DW是一项崭新的技术,很多人在研究它。围绕着它有许多工具或是体系结构。而DM作为数据分析工具的一种,不是孤立的,也必然要与其他的工具发生联系。因此,考虑到如何最大限度地
6、利用这些现成的工具,也是 OLAM发展之初所关心的问题; (3) 成功的数据挖掘需要对数据进行钻探性(exporatory)分析,比如,挖掘所需的数据可能只是一部分、一定范围的数据。因此,对多维数据模型的切片、切块、下钻等操作,同样可以应用于 DM的过程中。也就是说,可以将 DM建立在多维模型(或说超级立方体)的基础之上。 (4) 用户的参与对 DM的重要性,动态地提出挖掘要求、选择挖掘算法。故可以将 OLAP的 Client/Server结构应用于 DM中来。 OLAM的体系结构 OLAM 的挖掘分析处理是建立在超级立方体的基础之上的,而且,在实际应用中,尽管 OLAM的多维计算可能需要更多
7、的维数和更强大的访问工具,但我们可以断定,用于 OLAP的立方体和用于OLAM的立方体之间并没有本质的区别。因此,我们可以将 OLAM的结构图与 OLAP画在一起。 我们可以看到,OLAM 服务器通过用户图形接口接收用户的分析指令,在元数据的指导下,对超级立方体作一定的操作,然后将挖掘分析结果展现给用户,这个过程是动态的。多维数据视图(超立方体)是 OLAM的基础,多维视图的组织方式对于系统的执行效率和响应速度起着至关重要的作用。根据多维数据实际存在形式的不同,有两种组织方式: 基于多维数据库:在这种方式下,来自各关系数据库的综合数据以实际的多维形式被存储在多维数据库(MDDB)里。 基于关系
8、型数据库:在这种情况下,多维数据视图是在程序执行时由 RDBMS翻译执行相应 SQL语句来实现的。 两种结构各有长处,前者执行效率高、响应速度快,后者则在灵活性和扩展性方面要优于前者。在实际应用中到底应该采用哪一种,还是一个需要探讨的问题。 OLAM的功能特征 建立在庞大数据库或数据仓库基础上的 OLAM在实现过程中面临的最大挑战是执行效率的提高和对用户请求的快速响应。目前还没有 OLAM的产品出现,对 OLAM所应具备的特征也众说纷纭。但是,针对 OLAM的发展驱动力和基本结构,以下几点是必要的: (1) OLAM建立在多维数据库和 OLAP的基础之上,因此应能方便地对任何一部分数据或不同抽
9、象级别的数据进行挖掘。这是借助 OLAP对超级立方体进行切片、切块、下钻等操作来实现的。另外,如果需要,OLAM 还可以直接访问存储在底层数据库里的数据。总之,借助于 OLAP的支持,OLAM 能对任何它想要的数据进行挖掘。 (2) 用户对挖掘算法具有动态选择的权力,在传统的关系数据库应用中,对同一个主题,任何不同的查询过程所得到结果是相同的。而数据挖掘则不然,对同一个问题,运用不同的挖掘算法,得出的结果可能大相径庭。因此很有必要给予用户以动态选择挖掘算法的权力。此外,有的用户针对自己的问题,可能有一套他自己独特的挖掘算法,也希望嵌入到 OLAM中,因此,OLAM 应该具有一个通用的接口,以便
10、与其他工具或算法相衔接。 (3) OLAM建立在多维数据视图的基础之上,因此,基于超立方体的挖掘算法是其核心所在。超立方体计算与传统挖掘算法的结合使得数据挖掘有了极大的灵活性和交互性。这里所说的立方体计算方法一般指切片、切块、下钻、旋转等操作;而挖掘算法则是指关联、分类、聚类等基于关系型或事务型的挖掘算法。根据立方体计算和数据挖掘所进行的次序的不同组合可以有以下一些模式: 先进行立方体计算、后进行数据挖掘。在进行数据挖掘以前,先对多维数据进行一定的立方体计算,以选择合适的数据范围和恰当的抽象级别; 先对多维数据作数据挖掘,然后再利用立方体计算算法对挖掘出来的结果做进一步的深入分析; 立方体计算
11、与数据挖掘同时进行,在挖掘的过程中,可以根据需要对数据视图做相应的多维操作。这也意味着同一个挖掘算法可以应用于多维数据视图的不同部分; 回溯特性,OLAM 的挖掘过程是对多维数据视图的一个不断深入的过程。在实际中,用户很有可能因为算法的复杂性而在超立方体中“迷失方向“。因此 OLAM的挖掘算法应能给用户退回上次操作初始状态这样的回溯功能。 (4) 与 OLAP类似,OLAM 也采用 Client/Server体系结构,这使得它具有较高的执行效率和较快的响应速度。但由于一般挖掘算法都复杂而且耗时,因此在执行效率与挖掘的准确性两者之间应该协调好。一般情况下,OLAM 与用户频繁而且高速地交互,选择
12、合适的挖掘算法和数据空间。一旦这两点确定,在特定数据空间上再执行用户选定的复杂而缓慢的挖掘算法,以保证最终结果的正确性。 除了以上四点外,OLAM 还应具有灵活的可视化工具和良好的扩展性。OLAM 是一个复杂的结构,它在实际应用中要与多个模块或工具交互作用。例如,一个 OLAM系统可能与一个统计软件包相结合;或者系统本身功能扩展,使之适合于地理数据、文本数据或者商业数据的挖掘。因此,OLAM 接口的标准化、通用化就显的尤为重要。 结语 通过以上的分析我们可以得出以下结论:OLAM 是 OLAP与数据挖掘相结合的产物,它兼有 OLAP多维分析的在线性、灵活性和数据挖掘对数据处理的深入性,是数据库(数据仓库)应用工具未来发展的方向。目前,这个领域中的研究工作尚处于起步阶段,还有很多问题需要得到解决,包括技术问题和非技术问题。这不仅给广大研究工作者带来挑战,同时也给他们带来了机遇