李慶年
摘? ?要:云計算作為當(dāng)前大數(shù)據(jù)背景下的核心技術(shù)之一,在各個方面都得到了充分的應(yīng)用。在數(shù)據(jù)挖掘技術(shù)中,可以充分利用云計算的各項技術(shù),例如分布式存儲技術(shù),有效解決數(shù)據(jù)處理對服務(wù)器的高要求。同時Map Reduce計算機模型能夠讓數(shù)據(jù)挖掘系統(tǒng)實現(xiàn)同時滿足多個用戶的多種需求。文章主要闡述了基于云計算的數(shù)據(jù)挖掘技術(shù)的應(yīng)用及發(fā)展。
關(guān)鍵詞:云計算;數(shù)據(jù)挖掘;Map Reduce;分布式
1? ? 基于云計算的數(shù)據(jù)挖掘技術(shù)的特征與內(nèi)涵
所謂數(shù)據(jù)挖掘技術(shù)是指采用一定的算法,對數(shù)據(jù)中信息進行采集、提取、分析,進而進一步進行整理和匯總。數(shù)據(jù)挖掘技術(shù)是對數(shù)據(jù)的一次有效整理,對數(shù)據(jù)應(yīng)用、共享、存儲或具體應(yīng)用提供的一種技術(shù),可以在看似沒有任何關(guān)聯(lián)的數(shù)據(jù)中找出數(shù)據(jù)的分類,并對分類的數(shù)據(jù)進行分析,從而得出一定的結(jié)論。
云計算是指基于互聯(lián)網(wǎng)的一種服務(wù)模式,最為顯著的特點就是資源虛擬化,使用數(shù)據(jù)的用戶并不知道數(shù)據(jù)的存儲地,而且數(shù)據(jù)多以分布方式存儲。云計算要求服務(wù)器規(guī)模大,并能提供安全、可靠的服務(wù),云計算的服務(wù)模式為存儲和使用大量的數(shù)據(jù)提供了可靠的保障,并提供了數(shù)據(jù)的擴展性。
基于云計算的數(shù)據(jù)挖掘系統(tǒng)相對于一般的數(shù)據(jù)挖掘系統(tǒng)來說具有較為明顯的優(yōu)勢。一個原因是數(shù)據(jù)挖掘技術(shù)本身就是對大量數(shù)據(jù)的處理,數(shù)據(jù)量越大其復(fù)雜程度越高,所以,借助云計算可以和數(shù)據(jù)挖掘技術(shù)深度融合,有效提高數(shù)據(jù)挖掘和數(shù)據(jù)處理的能力[1]。另一個原因是利用云計算技術(shù)所支持的分布式存儲技術(shù),數(shù)據(jù)挖掘可以降低對服務(wù)器性能高標(biāo)準(zhǔn)的要求。所以云計算環(huán)境給數(shù)據(jù)挖掘技術(shù)提供了大量的數(shù)據(jù)源,同時,也給數(shù)據(jù)挖掘在分布式處理方式上提供了方便,使得數(shù)據(jù)挖掘技術(shù)在同等條件下可以更方便地處理多種數(shù)據(jù)。
2? ? 云計算視域下數(shù)據(jù)挖掘技術(shù)應(yīng)用探究
2.1? 算法
云計算環(huán)境下,數(shù)據(jù)類型繁多,數(shù)據(jù)形式多樣,數(shù)據(jù)規(guī)模也不斷地擴大。要想將這些數(shù)據(jù)進行整理分析,深度挖掘數(shù)據(jù)之間的關(guān)聯(lián),并將結(jié)果給用戶合理使用,算法成了關(guān)鍵技術(shù)和重要工具。在云計算環(huán)境下,數(shù)據(jù)量的大小很難精確估計,依賴于小規(guī)模分布式計算機的集群來實現(xiàn)大批量的數(shù)據(jù)處理是遠遠不夠的,最為關(guān)鍵的是運算部署難度系數(shù)大,成本投放擴大。在這種情況下,把云計算技術(shù)運用到數(shù)據(jù)挖掘中,能夠發(fā)揮一定效率。構(gòu)建一個基于Hadoop的開源并行數(shù)據(jù)挖掘平臺,利用Map Reduce框架,來實現(xiàn)數(shù)據(jù)處理。
數(shù)據(jù)挖掘技術(shù)從產(chǎn)生以來,涉及多種多樣的算法,不同的算法具有不同的使用環(huán)境和范圍,也會產(chǎn)生不同的效果。用戶可以根據(jù)數(shù)據(jù)的情況和自己的需求來選擇算法,也可以對算法進行轉(zhuǎn)化,充分利用云計算技術(shù)對算法的幫助來提高數(shù)據(jù)挖掘的能力和水平,將數(shù)據(jù)挖掘算法和功能展示出來,為達到用戶最終的數(shù)據(jù)挖掘目標(biāo)而工作。
基于云計算的數(shù)據(jù)挖掘算法,往往會和其他領(lǐng)域的算法結(jié)合起來,比如人工神經(jīng)網(wǎng)絡(luò)系統(tǒng)可以應(yīng)用于基于云計算的數(shù)據(jù)挖掘技術(shù)中來,實現(xiàn)對超多數(shù)據(jù)的處理分析。深度學(xué)習(xí)算法可以對大批量的數(shù)據(jù)進行處理,同時,可以通過樣本集的訓(xùn)練,讓算法進行自動的數(shù)據(jù)處理和挖掘。遺傳算法在數(shù)據(jù)挖掘技術(shù)中的應(yīng)用也非常廣泛,通過可視化技術(shù)作為輔助手段,依靠動畫、影像技術(shù)實現(xiàn)形象化的可視化展現(xiàn),給用戶更好的體驗。豐富了信息技術(shù)的展示模式,有助于更好地推廣應(yīng)用。
2.2? 用戶數(shù)據(jù)處理
對于要處理的數(shù)據(jù)源,用戶要根據(jù)自己的需要合理地安排數(shù)據(jù)的來源。有些是需要購買新的需求數(shù)據(jù),當(dāng)用戶取得所需數(shù)據(jù)后,可以借助云計算的DaaS服務(wù)模式對數(shù)據(jù)進行管理。用戶通過數(shù)據(jù)挖掘系統(tǒng),可以快速而準(zhǔn)確地找到自己需要處理的數(shù)據(jù),然后開始對數(shù)據(jù)進行處理。用戶也可以把自己的數(shù)據(jù)在系統(tǒng)中進行共享,用來給其他的用戶進行處理,兩個不同用戶對數(shù)據(jù)處理的結(jié)果互不影響,只會得出自己處理數(shù)據(jù)的結(jié)論[2]。也可以通過數(shù)據(jù)挖掘系統(tǒng)中的分類聚類功能,對用戶的數(shù)據(jù)進行科學(xué)地劃分,從而實現(xiàn)對用戶數(shù)據(jù)的動態(tài)管理。對數(shù)據(jù)的處理有一個原則,就是只利用算法對數(shù)據(jù)進行處理,不改變原數(shù)據(jù)的相關(guān)屬性。因此,數(shù)據(jù)可以多次重復(fù)利用。
2.3? Map Reduce模型
常用的基于云計算的數(shù)據(jù)挖掘的并行計算模型主要是Map Reduce,所謂Map Reduce,是一種基于大數(shù)據(jù)的Hadoop下的并行核算框架,該框架不僅有較強的容錯特性,還能夠?qū)?shù)據(jù)進行傳遞,讓大批量的數(shù)據(jù)都能夠得到高效的運算[3]。一般來說,Map Reduce的并行計算可以分為兩種任務(wù),一種是Map任務(wù),一種是Reduce任務(wù),在這兩個任務(wù)執(zhí)行的過程中,數(shù)據(jù)挖掘系統(tǒng)會自動將獲得的數(shù)據(jù)劃分為多個獨立的小模塊。然后將這些小模塊分布到Datanode的各個節(jié)點中,并進行統(tǒng)一的核算處理。這種方法可以讓數(shù)據(jù)得到分布式的核算,加快數(shù)據(jù)處理的速度,減小服務(wù)器集中處理數(shù)據(jù)的負載,提高效率。在進行海量數(shù)據(jù)處理的時候,可以借助Map Reduce的任務(wù)分配功能框架去設(shè)定Datanode各節(jié)點,并把處理階段和核算節(jié)點進行統(tǒng)一分布式管理,這樣能夠便于處理Hadoop數(shù)據(jù)處理過程的各種問題。
3? ? 云計算數(shù)據(jù)挖掘模型
基于云計算的數(shù)據(jù)挖掘模型可以分為3層:用戶層、服務(wù)層和處理層。用戶層主要用來接收并執(zhí)行用戶的各種指令;服務(wù)層主要用來進行數(shù)據(jù)的處理和保存,處理層主要包含多種數(shù)據(jù)處理算法及數(shù)據(jù)預(yù)處理[4]。
3.1? 用戶層
用戶層處于基于云計算的數(shù)據(jù)挖掘的最頂層,它主要的作用是能夠完成用戶發(fā)出的各種指令,并將這些指令傳遞到處理層,以便于向用戶展現(xiàn)對大批量數(shù)據(jù)處理的結(jié)果。用戶能夠利用各種界面的形式對指令執(zhí)行的結(jié)果進行審查或追蹤。在該層中,用戶可以借助系統(tǒng)中的用戶輸入模板,將要處理的數(shù)據(jù)挖掘指令傳遞到系統(tǒng)中,系統(tǒng)會依據(jù)用戶所提交的申請,對數(shù)據(jù)進行處理。在數(shù)據(jù)處理的過程中,系統(tǒng)會利用相關(guān)的數(shù)據(jù)挖掘算法進行數(shù)據(jù)處理,同時,也會對即將要處理的數(shù)據(jù)進行各種調(diào)配,將數(shù)據(jù)傳入到Map Reduce平臺,通過這個平臺,將模塊化的數(shù)據(jù)分布到各個節(jié)點,最后再將處理后結(jié)果傳遞給用戶[5]。
3.2? 服務(wù)層
服務(wù)層處于基于云計算的數(shù)據(jù)挖掘系統(tǒng)中的最低層,它的主要作用是對Map Reduce平臺上分布到各節(jié)點的數(shù)據(jù)進行處理,同時,對各項數(shù)據(jù)進行保存。此層可以保存數(shù)據(jù)的分類聚類效果,也可以按照用戶的要求進行保存,所以此層在處理數(shù)據(jù)的時候不但要考慮數(shù)據(jù)處理時的性能問題,還要考慮數(shù)據(jù)保存時的安全性、平穩(wěn)性、便捷性等。在云計算模式下,通過分布式云計算技術(shù),能夠?qū)Υ笈康臄?shù)據(jù)進行統(tǒng)一保存。在保存數(shù)據(jù)的時候能夠按照用戶的要求,對要保存的數(shù)據(jù)進行備份保存,有效增加數(shù)據(jù)的安全性[6]。目前云計算海量數(shù)據(jù)保存技術(shù)通常涉及了開源的HDFS及非開源的GFS兩種,非開源的GFS是由Google公司開發(fā)的,而開源的HDFS則是由Hadoop團隊研制開發(fā)的。在云計算的平臺下,可以通過并行的應(yīng)用工作方式來響應(yīng)多用戶同時發(fā)送的請求,并為其提供針對性服務(wù)。
3.3? 處理層
處理層處于用戶層和服務(wù)層的中間,它包含了大批量數(shù)據(jù)處理算法及對數(shù)據(jù)預(yù)處理功能。對大數(shù)據(jù)的預(yù)處理功能中,可以對不規(guī)則的海量數(shù)據(jù)進行處理,如果處理的結(jié)果達不到用戶的要求,在云計算技術(shù)的支持下,Map Reduce可以得到由處理層處理過的、統(tǒng)一結(jié)構(gòu)的、規(guī)則的數(shù)據(jù)應(yīng)用。因此,在數(shù)據(jù)挖掘系統(tǒng)對數(shù)據(jù)真正處理之前,都要用處理層對數(shù)據(jù)進行預(yù)處理,得到統(tǒng)一結(jié)構(gòu)的數(shù)據(jù)類型。這種數(shù)據(jù)處理方式主要包括數(shù)據(jù)結(jié)構(gòu)的轉(zhuǎn)換、數(shù)據(jù)的特征抽取、數(shù)據(jù)集的清洗及集成等。通過預(yù)處理,不但能夠有效地提升數(shù)據(jù)挖掘的質(zhì)量及效果,而且也大大提高了數(shù)據(jù)挖掘的效率。這種在處理層的并行處理(數(shù)據(jù)處理和數(shù)據(jù)預(yù)處理)方式,在云計算模式下主要應(yīng)用平臺還是Map Reduce計算模型,采用并行分類算法、并行關(guān)聯(lián)規(guī)則算法、并行聚類算法等方式,能夠根據(jù)應(yīng)用的模型類型實現(xiàn)大批量數(shù)據(jù)的處理,以促進大數(shù)據(jù)挖掘時效性的提升。
4? ? 結(jié)語
數(shù)據(jù)挖掘技術(shù)作為對海量數(shù)據(jù)處理的有效方法,越來越得到重用。云計算在數(shù)據(jù)挖掘上有比較大的優(yōu)勢其分布式存儲和云計算的Map Reduce計算模型都給數(shù)據(jù)挖掘提供了便捷的數(shù)據(jù)處理途徑,可以有效提高數(shù)據(jù)挖掘的效率和數(shù)據(jù)處理質(zhì)量。
[參考文獻]
[1]楊繼武.云計算視域下數(shù)據(jù)挖掘技術(shù)[J].電子技術(shù)與軟件工程,2019(5):151.
[2]雷晨.基于云計算技術(shù)的數(shù)據(jù)挖掘平臺建設(shè)研究[J].信息記錄材料,2019(3):4-5.
[3]王曉雨.基于云計算的非連續(xù)層次數(shù)據(jù)挖掘方法探討[J].中國新通信,2019(4):56-57.
[4]李候梅.基于云計算的海量數(shù)據(jù)挖掘研究[J].信息技術(shù)與信息化,2019(1):122-124.
[5]王曉妮,段群,韓建剛.基于云計算的數(shù)據(jù)挖掘系統(tǒng)設(shè)計與實現(xiàn)[J].計算機技術(shù)與發(fā)展,2019(3):1-5.
[6]孫亮.基于云計算的云數(shù)據(jù)挖掘引擎研究[J].山東農(nóng)業(yè)工程學(xué)院學(xué)報,2018(12):27-28.