嵌入式數據挖掘模型及其在銀行卡業(yè)務(wù)中的應用
針對現有數據挖掘體系結構松散揭合、算法運行效率不高的問(wèn)題,提出了嵌入式數據挖掘模型。該模型實(shí)現了算法的組件化管理,并將整個(gè)數據挖掘流程控制在數據庫、數據倉庫中,在簡(jiǎn)化數據挖掘過(guò)程的同時(shí),大大提高了數據挖掘的效率。通過(guò)對幾種典型數據挖掘算法在銀行卡業(yè)務(wù)數據中的試驗,證實(shí)了該模型的有效性和實(shí)用性。
數據挖掘就是從存放在數據庫、數據倉庫或者其他信息庫中的大量數據中挖掘有趣知識的過(guò)程。它是在多種數據存儲方式的基礎上,借助有效的分析方法和工具,從傳統的事務(wù)型數據庫功能(增加、刪除、修改、查詢(xún)、統計等)背后,獲得更深層次的信息。在數據挖掘技術(shù)的不斷發(fā)展過(guò)程中,如何將數據挖掘(DM)系統與數據庫(DB)系統和數據倉庫(DW)系統緊密耦合(所謂耦合,即是數據挖掘系統和數據庫或者數據倉庫的集成程度)在一起是始終困擾著(zhù)人們設計一個(gè)好的數據挖掘工具的最大問(wèn)題。從最初的不耦合到松散耦合再到半緊密耦合,人們一直尋求著(zhù)如何將DM系統平滑的集成到DB/DW中(即緊密藕合)。目前眾多數據挖掘系統、數據挖掘工具中,大部分都是實(shí)現一個(gè)與數據倉庫系統獨立開(kāi)來(lái)的數據挖掘系統,這樣便使得數據挖掘過(guò)程中要花費大量的時(shí)間進(jìn)行數據加載轉換,算法運行時(shí)間長(cháng)、效率低,特別是面對當前數據倉庫中保存的海量數據時(shí),更是效率低下。
文中在已有的數據挖掘系統體系基礎上,應用數據挖掘系統與數據倉庫系統緊密耦合的策略,提出了嵌入式數據挖模型,把數據挖掘系統和整個(gè)數據挖掘流程完全控制在數據倉庫系統中,從而大大提高數據挖掘的效率。并且針對市面的一些用于銀行卡業(yè)務(wù)的數據挖掘系統過(guò)于繁瑣,但是效率不高、針對性不強等問(wèn)題,本文提出將嵌入式數據挖掘應用于銀行卡業(yè)務(wù)中,使得應用針對性更強,在節約了開(kāi)發(fā)成本的同時(shí)也提高了挖掘效率。
1嵌入式數據挖掘模型
嵌入式數據挖掘模型主要是采用多種數據庫訪(fǎng)問(wèn)技術(shù)把算法嵌入到數據挖掘系統中。該模型支持按照一定的標準規范來(lái)開(kāi)發(fā)挖掘算法,并把算法發(fā)布嵌入到多種數據庫、數據倉庫當中,將數據挖掘過(guò)程完全控制在數據庫、數據倉庫系統中,將數據挖掘功能轉換成大家熟悉的、通用的、靈活的、可二次開(kāi)發(fā)的數據倉庫功能。
該系統框架主要由數據層、算法嵌入層、數據挖掘層以及用戶(hù)層,系統模型如圖1所示。
1.1數據層和用戶(hù)層數據層
主要包括數據庫或數據倉庫中的海量業(yè)務(wù)數據以及元數據,它是數據挖掘過(guò)程中最基礎的部分。
在該模型中,用戶(hù)層包括算法發(fā)布人員、數據分析人員、數據庫管理人員,即使得數據挖掘面向更多的用戶(hù),擺脫了以前數據挖掘對專(zhuān)業(yè)人士的過(guò)多依賴(lài)性。
1.2算法嵌入層
整個(gè)嵌入流程可以分為兩個(gè)過(guò)程:算法發(fā)布和算法調用。算法發(fā)布過(guò)程主要是把算法發(fā)布到特定的數據倉庫系統中,為數據挖掘系統在數據倉庫系統中的執行奠下基礎;算法調用過(guò)程則是在數據倉庫系統中進(jìn)行的,主要通過(guò)數據倉庫系統中的存儲過(guò)程,讓用戶(hù)傳人相關(guān)參數,然后調用第一步發(fā)布的算法對用戶(hù)指定的數據進(jìn)行挖掘。
1)算法發(fā)布算法發(fā)布過(guò)程首先就是把算法封裝成DLL文件,同時(shí)把調用算法的接口編譯成EXE文件,然后把算法DLL文件和相應的EXE文件發(fā)布到數據庫或數據倉庫中,最后在相應的數據庫中創(chuàng )建存儲過(guò)程(簡(jiǎn)稱(chēng)SP),流程如圖2所示。
2)算法調用在調用過(guò)程中,由于不同數據倉庫系統的存儲過(guò)程的功能大小不同,不同數據倉庫系統對EXE文件,DLL文件的調用方式都有很大的區別,所以具體的實(shí)現細節在不同數據倉庫系統下還是有很大的區別的。在該模型中,數據倉庫終端調用存儲過(guò)程(SP),把算法參數和用戶(hù)參數傳進(jìn)存儲過(guò)程,然后讓存儲過(guò)程調用EXE文件,EXE文件主要是處理存儲過(guò)程傳入的參數,然后調用DLL算法生成挖掘結果。具體流程如圖3所示。
1.3數據挖掘層
1)預處理模塊數據預處理在數據倉庫(或數據庫)中進(jìn)行,主要有兩個(gè)途徑可以實(shí)現:一種是直接利用數據倉庫管理系統(SQL等)來(lái)對數據倉庫的數據表進(jìn)行加工處理,還有一種就是像挖掘算法一樣,用高級語(yǔ)言實(shí)現,然后嵌入到數據倉庫系統中,用戶(hù)就可以像一般的存儲過(guò)程一樣調用相應的預處理方法來(lái)對數據進(jìn)行預處理。這兩種預處理可以相互循環(huán)使用,直到加工滿(mǎn)意的數據為止。
2)結果處理模塊結果處理流程其實(shí)和算法凋用過(guò)程是同時(shí)進(jìn)行的,在EXE文件中通過(guò)數據庫訪(fǎng)問(wèn)技術(shù)獲取數據,在EXE中調用DLL算法產(chǎn)生文本結果返回到EXE文件中。這時(shí)候,這個(gè)文本結果可以經(jīng)過(guò)加工處理寫(xiě)回數據倉庫,同時(shí)也可以展示給用戶(hù)。具體如圖4所示。分析處理后,生成結果表查詢(xún)結果。
評論