• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于HADOOP的數(shù)據(jù)挖掘平臺分析與設(shè)計(jì)

      2013-12-31 00:00:00羅剛
      電子世界 2013年18期

      【摘要】云計(jì)算技術(shù)的出現(xiàn)為數(shù)據(jù)挖掘技術(shù)的發(fā)展帶來了新的機(jī)遇。云計(jì)算技術(shù)通過使存儲和計(jì)算能力均勻的分布到集群中的多個(gè)存儲和計(jì)算節(jié)點(diǎn)上,從而實(shí)現(xiàn)了對超大數(shù)據(jù)集的巨大的存儲和計(jì)算能力。HADOOP是一個(gè)用于構(gòu)建云平臺的Apache開源項(xiàng)目。使用HADOOP框架有利于我們方便、快速的實(shí)現(xiàn)計(jì)算機(jī)集群。在HADOOP平臺上,采用了HDFS(分布式文件系統(tǒng))來實(shí)現(xiàn)超大文件的存儲和容錯(cuò),而使用了MapReduce的編程模式來進(jìn)行計(jì)算。

      【關(guān)鍵詞】HADOOP;數(shù)據(jù)挖掘;平臺;分析;設(shè)計(jì)

      一、數(shù)據(jù)挖掘技術(shù)概述

      作為一門快速發(fā)展的技術(shù),數(shù)據(jù)挖掘引起了信息產(chǎn)業(yè)界和社會的廣泛關(guān)注。數(shù)據(jù)挖掘技術(shù)跨越多個(gè)學(xué)科,無論是數(shù)據(jù)庫技術(shù)、機(jī)器學(xué)習(xí)、統(tǒng)計(jì)學(xué)、模式識別,還是神經(jīng)網(wǎng)絡(luò),還是人工智能,數(shù)據(jù)挖掘都能從中吸取營養(yǎng),不斷發(fā)展。如今,隨著云計(jì)算的出現(xiàn)和發(fā)展,數(shù)據(jù)挖掘技術(shù)迎來了新的機(jī)遇和挑戰(zhàn)。

      1.數(shù)據(jù)挖掘發(fā)展歷程與分類

      數(shù)據(jù)挖掘由單個(gè)算法,單個(gè)系統(tǒng)到并行數(shù)據(jù)挖掘與服務(wù)的模式,經(jīng)歷了數(shù)據(jù)挖掘軟件開始和數(shù)據(jù)庫結(jié)合、多種數(shù)據(jù)類型融合、分布式挖掘等多個(gè)過程。到今天,數(shù)據(jù)挖掘軟件發(fā)展的歷程,可以說是進(jìn)入基于云計(jì)算的數(shù)據(jù)挖掘。

      由于數(shù)據(jù)挖掘是一個(gè)交叉學(xué)科領(lǐng)域,是在包括機(jī)器學(xué)習(xí),模式識別等多個(gè)學(xué)科的基礎(chǔ)上發(fā)展而來。依賴于我們所用的數(shù)據(jù)挖掘方法,我們又可以使用其他學(xué)科的多種技術(shù),如神經(jīng)網(wǎng)絡(luò)、模糊或粗糙集合論、知識表示等。所以,對數(shù)據(jù)挖掘的研究,我們會期望出現(xiàn)大量的各種類型的數(shù)據(jù)挖掘系統(tǒng)。這樣,我們就需要對數(shù)據(jù)挖掘系統(tǒng)給出一個(gè)很清楚的分類。有了這種認(rèn)識,我們才可以幫助用戶根據(jù)其需求,確定最適合其需要的數(shù)據(jù)挖掘系統(tǒng)。

      因此,數(shù)據(jù)挖掘的分類標(biāo)準(zhǔn)也必定會出現(xiàn)多樣化。我們可以根據(jù)挖掘的數(shù)據(jù)庫類型分類,或是技術(shù)類型分類,也可以根據(jù)運(yùn)用的場景分類。但是大部分情況下,我們會根據(jù)挖掘產(chǎn)生的知識類型進(jìn)行分類,也即是根據(jù)數(shù)據(jù)挖掘的功能進(jìn)行分類。

      2.數(shù)據(jù)挖掘流程

      數(shù)據(jù)挖掘就是從大量的、不完全的、有噪聲的、模糊的、隨機(jī)的數(shù)據(jù)中,提取隱含在其中的、人們事先不知道的、但又是潛在有用的信息和知識的過程,表現(xiàn)形式為規(guī)則、概念、規(guī)律及模式等。數(shù)據(jù)挖掘主要由以下步驟組成:

      ①數(shù)據(jù)預(yù)處理數(shù)據(jù)

      預(yù)處理階段主要為數(shù)據(jù)挖掘準(zhǔn)備好數(shù)據(jù)。一般來講主要包括數(shù)據(jù)清理和數(shù)據(jù)集成。對于大量的數(shù)據(jù),難免的存在著噪聲或不一致的數(shù)據(jù)。對于存在這些問題的數(shù)據(jù)源,我們必須進(jìn)行數(shù)據(jù)預(yù)處理?,F(xiàn)在,數(shù)據(jù)挖掘面對的挖掘?qū)ο蟮姆N類越來越多。半結(jié)構(gòu)數(shù)據(jù)、web數(shù)據(jù)、來自云的數(shù)據(jù)等各種數(shù)據(jù)形式層出不窮。如何將數(shù)據(jù)挖掘技術(shù)使用到這些不同的數(shù)據(jù)結(jié)構(gòu)中,數(shù)據(jù)預(yù)處理是非常重要的步驟和技術(shù)。它對于挖掘結(jié)果有著重要的影響。

      ②數(shù)據(jù)挖掘

      一旦對數(shù)據(jù)的預(yù)處理工作完成,數(shù)據(jù)挖掘工作就開始了。這是整個(gè)數(shù)據(jù)挖掘過程的基本步驟,也就是使用智能的方法來提取數(shù)據(jù)模式的過程。數(shù)據(jù)挖掘階段,根據(jù)挖掘任務(wù)的不同,我們會使用不同的技術(shù)和處理方法。常見的數(shù)據(jù)挖掘任務(wù)包括特征化、區(qū)分、分類、關(guān)聯(lián)分析、聚類等。這是數(shù)據(jù)挖掘過程中最重要的步驟。

      ③模式評估

      當(dāng)數(shù)據(jù)挖掘一旦完成,就會生成挖掘的結(jié)果——模式。然而,這些模式不是我們都感興趣的。實(shí)際上,對于給定的用戶,在可能產(chǎn)生的模式中,只存在一小部分是他感興趣的。如何表示我們對于模式的期望和興趣,現(xiàn)在存在一些模式興趣度的客觀度量,包括規(guī)則的支持度,置信度等。在模式評估階段,我們?nèi)グl(fā)現(xiàn)只對我們來說是感興趣的各種模式

      ④知識表示

      對于用戶感興趣的模式,我們可以使用可視化和知識表示技術(shù),以更直觀的,更易于理解的方式向用戶展現(xiàn)有意義的模式。這是與用戶的直接交互,更友好的表示方法可以使用戶更好的得到有意義的模式的全部內(nèi)涵。這是數(shù)據(jù)挖掘過程中很重要的步驟,也是人們研究的一個(gè)重要方面。

      二、典型數(shù)據(jù)挖掘系統(tǒng)構(gòu)成

      通過對數(shù)據(jù)挖掘過程有了一定的認(rèn)識,一個(gè)典型的數(shù)據(jù)挖掘系統(tǒng)主要由下面的部分構(gòu)成:

      1.數(shù)據(jù)源:這可以是一個(gè)或一組數(shù)據(jù)庫、數(shù)據(jù)倉庫、展開的表、或其它類型的信息庫,提供存儲的數(shù)據(jù)。

      2.數(shù)據(jù)源服務(wù)器:根據(jù)用戶的數(shù)據(jù)挖掘請求,數(shù)據(jù)源服務(wù)器負(fù)責(zé)提取相關(guān)數(shù)據(jù)。

      3.預(yù)處理模塊:該模塊執(zhí)行數(shù)據(jù)清理、數(shù)據(jù)集成等操作,為數(shù)據(jù)挖掘過程準(zhǔn)備結(jié)構(gòu)良好的數(shù)據(jù)。

      4.知識庫:這是領(lǐng)域知識,用于指導(dǎo)搜索,或評估結(jié)果模式的興趣度。這種知識可能包括概念分層,用于將屬性或?qū)傩灾到M織成不同的抽象層。用戶確信方面的知識也可以包含在內(nèi)??梢允褂眠@種知識,根據(jù)非期望性評估模式的興趣度。領(lǐng)域知識的其它例子有興趣度限制或閾值和元數(shù)據(jù)(例如,描述來自多個(gè)異種數(shù)據(jù)源的數(shù)據(jù))。

      5.數(shù)據(jù)挖掘引擎:這是數(shù)據(jù)挖掘系統(tǒng)基本的部分,由一組功能模塊組成,用于特征、關(guān)聯(lián)、分類、聚類分析、演變和偏差分析。

      6.模式評估模塊:該部分使用興趣度度量,并與挖掘模塊交互,以便將搜索聚焦在有趣的模式上,使用興趣度閾值過濾發(fā)現(xiàn)的模式。模式評估模塊可以與挖掘模塊集成在一起。

      7.圖形用戶界面:該模塊在用戶和挖掘系統(tǒng)之間通訊,允許用戶與系統(tǒng)交互,指定數(shù)據(jù)挖掘查詢或任務(wù),提供信息、幫助搜索聚焦,根據(jù)數(shù)據(jù)挖掘的中間結(jié)果進(jìn)行探索式數(shù)據(jù)挖掘。此外,該成分還允許用戶瀏覽數(shù)據(jù)庫和數(shù)據(jù)倉庫模式或數(shù)據(jù)結(jié)構(gòu),評估挖掘的模式,以不同的形式對模式可視化。

      在這個(gè)數(shù)據(jù)挖掘的基本系統(tǒng)中,模式評估模塊可以直接的嵌入到數(shù)據(jù)挖掘引擎中,以便指導(dǎo)挖掘引擎只產(chǎn)生用戶感興趣的模式。同時(shí),預(yù)處理和用戶圖形界面是很重要的功能模塊,也是數(shù)據(jù)挖掘技術(shù)關(guān)注的新領(lǐng)域之一。

      三、基于HADOOP的數(shù)據(jù)挖掘系統(tǒng)設(shè)計(jì)

      通過對典型的數(shù)據(jù)挖掘系統(tǒng)的分析和研究,我們可以利用HADOOP平臺集群巨大的存儲和計(jì)算能力,組建基于HADOOP的數(shù)據(jù)挖掘系統(tǒng)。

      1.基本設(shè)計(jì)思想

      在經(jīng)典的數(shù)據(jù)挖掘系統(tǒng)中,有的模塊不需要很大的計(jì)算量,而有的模塊需要非常大的計(jì)算量。充分利用HADOOP的集群特征,將數(shù)據(jù)挖掘系統(tǒng)中需要巨大計(jì)算能力的各個(gè)模塊的計(jì)算和存儲要求擴(kuò)展到HADOOP集群中的各個(gè)節(jié)點(diǎn)上,利用集群的并行計(jì)算和存儲能力來進(jìn)行相關(guān)數(shù)據(jù)挖掘工作。我們可以采用分層的設(shè)計(jì)思想。在底層,使用HADOOP來存儲、分析和處理巨大的數(shù)據(jù)量,而在高層通過接口直接透明的調(diào)用底層的計(jì)算和存儲能力。其流程如下:

      ①存儲

      在整個(gè)系統(tǒng)中,我們可以使用HDFS來存儲文件和數(shù)據(jù)。HDFS具有很高的數(shù)據(jù)吞吐量,并且很好的實(shí)現(xiàn)了容錯(cuò)機(jī)制。HDFS提供了多種訪問接口,包括API以及各種操作命令。使用HDFS,我們可以為原始的大數(shù)據(jù)集提供存儲空間,對臨時(shí)文件進(jìn)行存儲,為數(shù)據(jù)預(yù)處理、數(shù)據(jù)挖掘過程提供輸入數(shù)據(jù),同時(shí)輸出數(shù)據(jù)我們也保存在HDFS中。

      ②計(jì)算

      在系統(tǒng)中,我們可以使用MapReduce將數(shù)據(jù)挖掘系統(tǒng)中具有大計(jì)算量特征的各個(gè)子模塊的計(jì)算任務(wù)發(fā)布到集群中的各個(gè)節(jié)點(diǎn)以實(shí)現(xiàn)并行計(jì)算。MapReduce具有很好的伸縮性和擴(kuò)展性,它屏蔽掉底層,通過提供編程接口使我們可以快速的實(shí)現(xiàn)各種算法的并行方式。實(shí)現(xiàn)過程中我們都需要緊緊結(jié)合HDFS。

      2.系統(tǒng)結(jié)構(gòu)模型

      如圖2所示,結(jié)合以上的基本設(shè)計(jì)思想以及典型的數(shù)據(jù)挖掘系統(tǒng)模型,采用分層的思想,自頂向下每層都透明的調(diào)用下層接口,最頂層為交互層,用于用戶和系統(tǒng)之間的交互。最底層為分布式計(jì)算層,使用HADOOP來實(shí)現(xiàn)文件分布式存儲和并行計(jì)算功能。使用分層,各層之間變得獨(dú)立,易于系統(tǒng)的擴(kuò)展。下面詳細(xì)介紹我們得到的基于HADOOP的數(shù)據(jù)挖掘系統(tǒng)。

      ①交互層

      這一層主要提供系統(tǒng)和用戶之間的接口。通過提供具有良好表現(xiàn)形式的圖形界面,使得用戶可以登陸系統(tǒng)定制各種細(xì)粒度的業(yè)務(wù),查看或者保存各種輸出結(jié)果。

      ②業(yè)務(wù)應(yīng)用層

      這一層上提供了各種業(yè)務(wù)邏輯并實(shí)現(xiàn)了對各種業(yè)務(wù)流程的控制和調(diào)度。用戶提交的業(yè)務(wù)在這一層被處理,控制和調(diào)度。如:用戶在交互層提交的對特定數(shù)據(jù)完成分類挖掘的業(yè)務(wù)在在一層被處理。業(yè)務(wù)應(yīng)用層通過調(diào)用數(shù)據(jù)挖掘算法層的多個(gè)模塊來完成交互層提交的業(yè)務(wù),并返回結(jié)果到交互層。業(yè)務(wù)應(yīng)用層還控制和調(diào)度著數(shù)據(jù)挖掘平臺的各個(gè)模塊的執(zhí)行。

      ③數(shù)據(jù)挖掘平臺層

      數(shù)據(jù)挖掘平臺層為業(yè)務(wù)應(yīng)用層提供數(shù)據(jù)挖掘階段業(yè)務(wù)流需要的各個(gè)模塊,并且具有較細(xì)的粒度。如數(shù)據(jù)預(yù)處理,模式評估,數(shù)據(jù)挖掘,結(jié)果展示等功能組件。這一層是整個(gè)系統(tǒng)的核心,在這一層,主要的任務(wù)在于實(shí)現(xiàn)各種任務(wù)過程中算法的并行化,并將任務(wù)提交到HADOOP分布計(jì)算層進(jìn)行運(yùn)算。并將結(jié)果返回給業(yè)務(wù)應(yīng)用層。

      ④分布式計(jì)算平臺層

      這一層我們使用HADOOP框架來實(shí)現(xiàn)集群存儲、計(jì)算。HADOOP提供了分布式文件系統(tǒng)和并行的運(yùn)行模式,同時(shí)實(shí)現(xiàn)了對分布式系統(tǒng)的管理。我們需要在此之上實(shí)現(xiàn)任務(wù)提交的server。

      3.功能模塊

      在這個(gè)系統(tǒng)中,每一層都包含了各自的功能模塊,以完成各層的任務(wù)。下面分別介紹各層具有的模塊以及相應(yīng)的功能。

      ①交互層具有的模塊包括:

      用戶管理模塊:實(shí)現(xiàn)用戶身份的識別以及相應(yīng)權(quán)限的設(shè)置,同時(shí)也包括對用戶登陸或者注銷等常用的管理。

      業(yè)務(wù)模塊:實(shí)現(xiàn)了細(xì)粒度的用戶業(yè)務(wù)需求的提交。用戶提交的各種業(yè)務(wù)通過業(yè)務(wù)模塊得到完成。

      展示模塊:實(shí)現(xiàn)了用戶對業(yè)務(wù)結(jié)果的查看,分析和保存等功能。用來將系統(tǒng)的返回結(jié)果交付給用戶。

      ②業(yè)務(wù)應(yīng)用層具有的模塊包括:

      業(yè)務(wù)響應(yīng)模塊:相應(yīng)上層的業(yè)務(wù)模塊,對完成業(yè)務(wù)所需的子業(yè)務(wù)進(jìn)行調(diào)用、管理,并通過調(diào)用底層模塊完成業(yè)務(wù)。

      工作流模塊:對業(yè)務(wù)狀態(tài)進(jìn)行監(jiān)控、管理??蓪⒕唧w的信息參數(shù)返回給本層的業(yè)務(wù)響應(yīng)模塊。

      ③數(shù)據(jù)挖掘平臺包括的平臺:

      數(shù)據(jù)加載模塊:將挖掘所需的數(shù)據(jù)進(jìn)行注冊并放入系統(tǒng)的HDFS文件系統(tǒng)。

      結(jié)果存儲模塊:存放挖掘現(xiàn)在產(chǎn)生或者歷史產(chǎn)生的各種模式。也可以叫做知識庫。

      模式評估模塊:對產(chǎn)生的模式進(jìn)行評估。此模塊也可以被并行數(shù)據(jù)挖掘模塊調(diào)用。

      并行ETL模塊:對數(shù)據(jù)進(jìn)行預(yù)處理。輸入的數(shù)據(jù)來自于HDFS文件中,并將處理結(jié)果也放入HDFS中,為挖掘過程進(jìn)行數(shù)據(jù)清理,提取,轉(zhuǎn)換和加載。

      ④分布式計(jì)算層:

      HADOOP框架自身提供了HDFS,MapReduce運(yùn)行模式、運(yùn)算環(huán)境以及自動(dòng)管理。

      四、小結(jié)

      本文介紹了數(shù)據(jù)挖掘流程并在此基礎(chǔ)上設(shè)計(jì)了基于HADOOP的數(shù)據(jù)挖掘系統(tǒng)的基本架構(gòu)。先對典型的數(shù)據(jù)挖掘系統(tǒng)做了分析和介紹,隨后詳細(xì)分析了基于HADOOP數(shù)據(jù)挖掘系統(tǒng)的需求,最后給出了系統(tǒng)的模型并簡要介紹了各個(gè)功能模塊。

      參考文獻(xiàn)

      [1]韓家煒,坎伯.數(shù)據(jù)挖掘概念與技術(shù)[M].北京:機(jī)械工業(yè)出版社,2008.

      [2]朱珠.基于Hadoop的海量數(shù)據(jù)處理模型研究和應(yīng)用[D].北京:北京郵電大學(xué),2008.

      [3]魏紅寧.基于SPRINT方法的并行決策樹分類研究[J].成都:西南交通大學(xué),2005,25(1):40-41.

      [4]于蕾,劉大有,高瀅,田野.改進(jìn)SPRINT算法及其在分布式環(huán)境下的研究[J].吉林大學(xué)學(xué)報(bào),2008,46(6):1120-1123.

      作者簡介:羅剛(1981—),男,湖北武漢人,碩士,現(xiàn)供職于空軍預(yù)警學(xué)院監(jiān)控系統(tǒng)工程研究所,研究方向:計(jì)算機(jī)應(yīng)用。

      兴安盟| 鄄城县| 永宁县| 耿马| 当阳市| 平罗县| 东乡族自治县| 定安县| 肇东市| 门头沟区| 新野县| 宽城| 五河县| 隆子县| 筠连县| 津南区| 丰城市| 沾益县| 沁水县| 嵊泗县| 大新县| 旅游| 盘锦市| 汨罗市| 平果县| 新兴县| 彭山县| 宜君县| 云林县| 平乡县| 玉屏| 海淀区| 酉阳| 哈密市| 绵阳市| 开远市| 万盛区| 怀仁县| 大渡口区| 高邮市| 曲靖市|