作者/王微,沈陽職業技術學院計算機學院
一種基于云計算的數據挖掘平臺架構設計研究
作者/王微,沈陽職業技術學院計算機學院
網絡技術的快速發展給我們帶來了大量的數據信息,同時也為我們在從大量的數據信息中發現自己需要的數據也增加了難度,數據挖掘技術的出現可以很好的解決這樣的問題,數據挖掘技術在很多領域的決策分析的應用中越來越廣泛。云計算可以提供虛擬化的高性能的計算平臺,滿足數據挖掘系統設計的需要。本文對云計算平臺的特點進行了分析,對基于云計算的數據挖掘架構進行了設計,對基于云計算的數據挖掘系統的實現進行了研究。
云計算;數據挖掘;分布式系統;數據規約
隨著計算機科學技術的快速發展,海量的數據被存儲在計算機的存儲介質中,這些數據具有復雜性和異構性的特點,為了滿足科研和商業等領域的需要,我們需要對這些數據進行分析并且提取出來有價值的數據信息,數據挖掘技術作為一種交叉學科的新技術被應用進來,數據挖掘技術就是把數據庫中大量的和模糊的應用數據從中提取出來,變為有用的知識信息的過程。
云計算技術是通過強大的數據計算處理能力,為科研和商業等領域動態的提供海量的各種類型的服務資源,云計算是分布在大規模的數據服務中心的,云計算采用網格計算和分布式計算等方式。云計算平臺是利用虛擬化技術,根據用戶的不同需求,為用戶動態的提供虛擬計算服務和資源存儲的服務等,在用戶不使用云計算服務的時候可以將資源動態收回并再次分配給其他用戶,為用戶提供大規模的并行計算和數據操作等服務。
云計算規模巨大,擁有海量的服務器集群,云為用戶提供強大的計算能力。云計算是虛擬化的,用戶可以在任何時間和任何地點根據自己的需要來獲取云計算的應用服務,云計算具有高效性的特點,云計算的高效性主要是通過數據多副本容錯等技術手段來實現的,云計算在使用上要比本地計算機可靠很多。云計算不針對特定的應用,云計算是通用的,同一個云可以對多個應用程序來進行服務。云計算的規??梢愿鶕枰獊磉M行動態伸縮,云計算的擴展性比較高,可以滿足應用和用戶數量的增長變化的需要。云是一個龐大的虛擬資源池,云服務可以按需購買。
2.1 系統需求分析
隨著云計算技術的出現和發展,云計算的分布式計算處理技術得到了廣泛的應用。存儲在網絡中的海量的數據具有異構和復雜等特點,這樣給數據挖掘帶來了很大的難度,對數據的處理需要強大的計算能力才可以滿足需要,在數據挖掘系統中云計算的分布式計算可以滿足數據挖掘技術對計算能力的需要,可以實現大規模的分布式并行計算。云計算可以提供動態資源池,也可以提供高可用性的虛擬化的計算平臺,基于云計算的數據挖掘平臺設計可以提高數據挖掘的高效性,可以解決數據挖掘中異構數據之間訪問的問題。
2.2 系統平臺設計要點分析
2.2.1 插件系統框架設計要點
插件是以應用程序的開發接口為規范標準的程序,插件可以向上層提供服務。插件系統框架設計的系統具有良好的可擴展性,有利于系統模塊的開發。本文提出的系統平臺的設計可以處于長時間的運行狀態,具有動態更新的功能,系統中的核心插件的開發和維護由系統管理員來完成,用戶自定義的插件層是對外開放的,開發維護由用戶自己完成,這樣系統的擴展性和開放性就更強大了。插件設計主要包括主程序執行時系統內核插件和主程序制定的算法插件等。
2.2.2 開放接口設計要點
開放接口主要是在基于數據挖掘平臺的應用程序開發時使用的,通過開放接口,我們可以使用數據挖掘平臺提供的服務,本設計的開放接口的設計都是基于表達性狀態轉移REST的。REST的設計標,REST架構的設計都是以WEB應用為基礎來進行設計的,可以減少系統設計的復雜性,增加系統的可伸縮性。REST設計原則, 網絡上所有的事物都被成為資源,每個資源都被定義了一個唯一的資源標識符,我們通過連接器的接口對系統資源進行訪問,對資源的任何的操作在原則上都不會對資源標示符做任何的改變,并且所有的操作都是在無狀態下進行的?;赗EST設計的接口的調用可以大大減少服務器的工作負擔,如果系統在運行時由于用戶數量增加的原因而造成系統底層發生瓶頸的時候,系統可以通過擴展吞吐量的方式來解決瓶頸的問題,所以系統具有強大的吞吐能力可以提高系統對性能的需求。
2.3 系統總體框架模型設計
在云計算平臺的基礎之上構建系統模型,為各用戶提供終端用戶界面的服務,為本系統的應用程序提供接口,用戶在對系統進行訪問的時候可以通過終端用戶的界面對系統服務進行訪問,也可以使用應用程序通過對系統接口進行調用的的方式間接的對系統進行訪問來獲取服務。在整個系統框架的設計中,用戶不需要對系統的計算能力和存儲能力擔心,用戶把自己的任務部署給系統,然后系統按照用戶的要求去執行相應的操作,從而獲得數據挖掘的數據結果就可以了。數據挖掘平臺通過用戶的終端界面和應用程序為用戶提供服務,數據挖掘提供的接口開放功能服務對外部是可見的,用戶界面可以對接口進行直接的調用來實現外部服務。系統模型設計如圖1所示。

圖1 系統模型設計
2.4 系統平臺各層功能設計及分析
基于云計算的數據挖掘平臺分層架構圖如圖2所示,在系統平臺分層架構圖中云計算平臺的應用接口層是系統平臺的最底層,用戶界面及開放接口是系統平臺的最頂層,用戶通過對開放接口的調用來共享數據集和挖掘算法等服務,并且可以集成到用戶應用中進行使用,這樣就可以實現系統平臺的共享特性。

圖2 基于云計算的數據挖掘平臺分層架構圖
在基于云計算的數據挖掘平臺分層架構圖中算法層是實現算法調用和接口管理的,數據清洗算法調用服務是在數據挖掘之前對噪聲數據集中的數據進行預處理調用接口,數據被清洗后存儲在云計算平臺的數據層里面為數據挖掘提供服務;數據挖掘算法調用服務為數據進行數據挖掘提供統一的調用接口服務;可視化算法調用是把數據挖掘的數據結果以表格等形式在調用接口表示出來;算法注冊和注銷服務主要是對算法模塊進行管理的。應用層是把數據挖掘相關的數據和算法以任務的形式描述出來,并且提供調用和接口服務;應用調用服務為已經注冊的應用提供調用接口;應用注冊與注銷服務是對任務應用模塊進行統一的管理。用戶層主要功能是對用戶身份進行驗證和提供身份授權服務的。在對系統平臺功能設計上采用XML作為基本的通訊語言,用戶可以給予任何層來進行開發,可以把自己需要的功能和服務導入進去,系統更具與開放性和可操作性,這也是數據挖掘平臺設計的最大的特點。
基于云計算的數據挖掘平臺架構設計具有強大的用戶界面功能,提供了更多的開放接口可以為更多的系統開發人員使用,有效的解決了異構數據之間訪問的問題。基于云計算的數據挖掘平臺架構設計在系統的框架設計和系統的功能設計上更加完善。
* [1]基于小微型電子商務的數據挖掘的應用[J].宋朝霞,方旭儒,宋哲,姬晨迪,賈文靜.中小企業管理與科技(下旬刊). 2015(10)
* [2]一種基于云計算的數據挖掘平臺架構設計與實現[J].王祥瑞,韓成浩.數字技術與應用. 2015(09)
* [3]交通數據中心總體架構與數據共享交換平臺的設計研究[J].汪祖云.交通運輸系統工程與信息. 2014(03)
* [4]基于云計算平臺Hadoop的并行k—means聚類算法設計研究[J].趙衛中,馬慧芳,傅燕翔,史忠植.計算機科學. 2011(10)
* [5]一種結合RDBMS和Hadoop的海量小文件存儲方法[J]. 劉小俊,徐正全,潘少明.武漢大學學報(信息科學版).2013(01)