摘 要: 云計算是一個新的商業模型,它可以提供無限的廉價存儲和計算能力。而數據挖掘中面臨的主要問題是項目集合的空間需求問題,并且其操作非常巨大。將數據挖掘技術應用到云計算環境中,可以按需從云服務運營商那里獲取項目集合所需空間,從而解決了數據挖掘需要巨大空間的問題。文章論述和分析了將數據挖掘應用到云計算環境的有效性。
關鍵詞: 數據挖掘;云計算;頻繁模式;云存儲
0 引言
“云計算”被描述為是一個平臺系統或軟件應用程序。首先,平臺系統意味著云計算系統可以實時地動態部署、配置、再部署、再配置。在云計算平臺下,服務器是一個物理服務器或一個虛擬服務器。云計算通常包括很多計算資源。
云計算是一個新的商業模型[1-2]。它描述了計算任務到資源池的過程。資源池由大量計算機組成,從而保證各種應用可以按需獲得計算能力、存儲空間和各種軟件服務。云計算的新穎性在于它可以提供無限的廉價存儲和計算能力,這可以使其存儲和挖掘大量的數據。
處理高維度和大規模數據有很多方法,但請求處理通常是瓶頸。認識發現任務算法通常被應用到多維未來空間廣泛搜索或最近鄰居搜索[3]。商業智能和數據倉庫可以存放T字節級以上的數據。云計算作為數據挖掘的需求正被廣泛使用。Map Reduce是一個程序框架,并且被用于處理大的數據集合。分割、調度和失敗處理以及通信等細節被Map Reduce隱藏[4]。
1 云計算
云計算是一種計算服務而不單單是一個產品,它由計算資源、軟件和各種信息組成。通過網絡在任何地點,可以使用計算機或其他設備等終端訪問。云是一個并行和分布式系統,由相互連接的虛擬計算機構成,可以被動態部署,并作為一個或多個統一的計算資源呈現出來。云計算基于服務運營商和用戶簽訂的服務等級協議提供服務。
數據連接緊密度的增長和數據量增長導致許多運營商和部分數據中心使用大的、可以動態均衡負載的基礎設施作為云計算平臺。通過按需地在服務器上分布和復制數據,資源利用率顯著提高。
“云”是一個彈性的資源執行環境,涉及到多個利益方,并能提供可以計量的服務。這些服務可以分為多個粒度級別。換言之,本文中所講的云是基礎平臺,可以在多種資源上面以各種形式執行。從而提供資源和服務的管理性、彈性和系統平臺獨立性等能力。
2 數據挖掘技術
目前有幾種主要的數據挖掘技術已經開發并應用到數據挖掘項目中。包括關聯規則、分類、聚類、預測和序列模式。下面將簡要地介紹這些數據挖掘技術的例子。
(1)關聯規則
關聯規則是一種最好的已知的數據挖掘技術。對關聯規則挖掘的研究可分為兩種類型,一種是Apriori算法研究,一種是頻繁模式增長算法研究[5](FP-growth增長等)。在關聯規則中,一種模式的發現是基于在同一個交易數據庫中特定項目與其他項目的關系。例如,該技術用于市場購物籃分析中確定什么樣的產品客戶經常一起購買。基于該數據業務會有相應的營銷活動,從而銷售更多的產品,創造更大的利潤。
(2)分類
分類是一種基于機器學習的經典的數據挖掘技術。分類方法是利用數學方法實現,如決策樹,線性規劃,神經網絡和統計。在分類過程中,軟件可以學習如何將數據項分到不同的組中。例如,可以應用于“給那些離開公司的員工過去的記錄應用分類,預測當前的雇員很可能在將來離開”,在這種情況下,把員工的記錄分為兩組,“離開”、“留下”,然后,可以利用數據挖掘軟件將雇員劃分到每個組。
(3)聚類
聚類分析是數據挖掘技術中很有意義或有用的一種自動聚類技術。不同于分類技術,聚類技術也定義了類和類中的對象,而在分類中,對象被分配到預定義的類中。以圖書館為例,在圖書館里圖書的種類有很多,如何使讀者能夠在如此廣泛的主題中找到相關主題的書目是一個很麻煩的問題。利用聚類技術,使相似類型的圖書歸在一起或放在同一個書架上,通過標簽標識有意義的名稱。這樣讀者想獲取書中的主題時,只需去那個書架就可找到,而不必在整個圖書館中查找。
(4)預測
正如它的名字暗示的,預測是一種數據挖掘技術,用于發現自變量之間及自變量和因變量之間的關系。例如,預測分析技術,如果考慮銷售額是一個自變量,利潤可能是一個因變量,那就可以預測將來的銷售利潤,根據歷史銷售數據和利潤數據,就可以得出一個用于預測盈利的回歸擬合曲線。
(5)序列模式
序列模式分析是一種發現事件間在順序上的相關性的數據挖掘技術。發現的模式是用于識別數據之間關系的進一步分析。
2010年,Kawuu W. Lin等人[6]提出了一套多任務的頻繁模式挖掘的策略。通過各種模擬條件下的實驗,算法在執行時間上表現出較好的性能。
2011年,李玲娟等人[7]提出了一種在云計算環境中的關聯規則挖掘算法。該算法利用Hadoop框架平臺及MapReduce編程模型,以實現云計算環境下的并行挖掘為目標,給出了改進Apriori算法在Hadoop框架平臺中MapReduce編程模型上的執行過程。算法在頻繁項集挖掘中表現出較好的性能和實用性。
2011年,T.R.Gopalakrishnan Nair等人[8]提出了k-均值算法,算法通過迭代過程把數據集分為不同類別,使評價聚類性能的準則函數達到最優,且每個聚類內緊湊,類間獨立。
3 云計算面臨的挑戰
云計算作為大幅降低成本技術,在受到追捧的同時也面臨著諸多挑戰性問題。
(1)安全
在使用云計算服務時,用戶往往不清楚自己數據存放的位置,這樣就會導致用戶對數據安全的擔心,云計算架構于互聯網之上,傳統安全問題依然存在,如病毒、木馬的入侵、隱私信息的泄露等,新的安全問題也將浮出水面。另外,身份認證、授權與訪問控制、責任認定、安全與隱私等技術問題也都還處于探索階段。
(2)Ad-hoc網絡模式
Ad-hoc網絡是一個沒有有線基礎設施支持的移動網絡,是一種無線多跳網絡。在Ad-Hoc網絡中,所有的節點都是由移動主機構成的。與傳統的無線網絡相比,它不依賴于任何固定的基礎設施和管理中心,而是由一組自主的移動節點臨時組成,通過移動節點間的相互協作和自我組織,保持網絡連接,實現數據的傳遞。其特點是:動態變化的網絡拓撲結構,多條通信,較低的安全性。
(3)管理性
易管理性在云計算中非常重要,與傳統的系統相比,受有限的人工干涉、工作負載變化幅度大和多種多樣的共享設備這三個因素的影響,云計算中管理更加復雜。大多數情況下,沒有協助基于云的應用開發的數據庫管理員和系統管理員。甚至是單一用戶的負載隨時間都會發生大幅度的變化。
(4)龐大的規模
現有的SQL數據庫不能簡單地處理放置在云中的海量數據。在存儲方面,是用不同的事務實現技術,還是用不同的存儲技術,或者二者都用來解決一些限制性問題還不確定。在這個問題上,目前在數據庫領域內有很多提議。現有的云計算已經開始探索一些簡單的實用性方法,但是還需要做更多的工作來融合現有的云計算機制中的好思想。
(5)新的應用場景
預測一些需要預載大量數據集(像股票價格、天氣歷史數據以及網上檢索等)的服務。從私有和公共環境中獲取有用信息引起人們越來越多的注意。這就需要從結構化、半結構化或非結構的異構數據中提取出有用信息。
(6)延遲
延遲通常是因特網上的常見問題。云計算中產生的延遲并不是致命的,可以通過智能化設計的高性能基礎設施以及靈巧的應用程序來補救。就像桌面計算機最大的瓶頸就是需要更大的硬盤和內存,云計算中延遲的真正原因必須確定和解決。云計算既需要較高性能的集群服務器,也需要高性能的通信設備來支持。
4 結論
數據挖掘技術的主要問題是項目集合需要空間,并且項目級操作是巨大的。如果將數據挖掘應用于云計算環境,將會從云運營商那里按需租賃空間。這種方法解決了需要大量空間的問題。并且用戶不再需要考慮空間大小,可直接使用數據挖掘技術。
參考文獻
[1] WEISS A. Computing in clouds[J]. ACM Networker, 2007,11(4):18-25.
[2] BUYYA R, VENUGOPAL S. Market-oriented cloud computing: vision, hype, and reality for delivering IT services as computing utilities[C]. Proceedings of the 2008 10th IEEE International Conference on High Performance Computing and Communications, 2008: 5-13.
[3] BOHM C, BERCHTOLD S, MICHEL U. Multidimensional index structures in relational databases[C]. in 1st International Conference on Data Warehousing and Knowledge Discovery, 1999:51-70.
[4] DEAN J, GHEMAWAT S, USENIX. Map Reduce: simplified data processing on large clusters[C]. 6th Symposium on Operating Systems Design and Implementation, 2004:137-149.
[5] Han J, Pei J, Yin Y. Mining frequent patterns without candidate generation[C]. Proc. of ACM Int. Conf. on Management of data (SIGMOD), 2000:1-12.
[6] KAWUU W LIN, LUO Y C. Efficient strategies for many-task frequent pattern mining in cloud computing environments[C]. Systems Man and Cybernetics(SMC), IEEE International Conference,2010(10):620-623.
[7] 李玲娟,張敏.云計算環境下關聯規則挖掘算法研究[J].計算機技術與發展,2011(2):43-46.
[8] NAIR T R G, MADHURI K L. Data mining using hierarchical virtual k-means approach integrating data fragments in cloud computing environment[C].Cloud Computing and Intelligence Systems(CCIS), IEEE International Conference, 2011(1):230-234.