• 
    

    
    

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

      基于Hadoop云計(jì)算平臺仿百度智能輸入提示算法的研究與實(shí)現(xiàn)

      2015-06-27 05:08:45華志潔
      天津科技 2015年12期
      關(guān)鍵詞:百度分布式數(shù)據(jù)庫

      華志潔

      (1.同濟(jì)大學(xué) 上海 200092;2. 天津普泰國信科技有限公司 天津300384)

      應(yīng)用技術(shù)

      基于Hadoop云計(jì)算平臺仿百度智能輸入提示算法的研究與實(shí)現(xiàn)

      華志潔1,2

      (1.同濟(jì)大學(xué) 上海 200092;2. 天津普泰國信科技有限公司 天津300384)

      云計(jì)算是指基于互聯(lián)網(wǎng)、通過虛擬化方式共享IT資源的新型計(jì)算模式。Hadoop以Hadoop分布式文件系統(tǒng)HDFS(Hadoop Distributed File System)和MapReduce分布式計(jì)算框架為核心,為用戶提供了底層細(xì)節(jié)透明的云分布式基礎(chǔ)設(shè)施。系統(tǒng)研究的主要內(nèi)容在基于Hadoop的云計(jì)算平臺上實(shí)現(xiàn)通過檢索不同文件系統(tǒng)下的輸入接口,輸入內(nèi)容的分布式統(tǒng)計(jì)結(jié)果,智能提示和匹配后續(xù)的內(nèi)容,完成智能輸入提示功能的算法研究與實(shí)現(xiàn)工作。

      云計(jì)算 Hadoop 智能輸入 智能匹配 HDFS MapReduce

      0 引 言

      近年來,全球云計(jì)算市場迅速發(fā)展,世界信息產(chǎn)業(yè)強(qiáng)國和地區(qū)對云計(jì)算給予了高度關(guān)注,已把云計(jì)算作為未來戰(zhàn)略產(chǎn)業(yè)的重點(diǎn),紛紛研究制定并出臺云計(jì)算發(fā)展戰(zhàn)略規(guī)劃,加快部署國家級云計(jì)算基礎(chǔ)設(shè)施,并加快推動云計(jì)算的應(yīng)用,搶占云計(jì)算產(chǎn)業(yè)制高點(diǎn)。新興云計(jì)算技術(shù)和服務(wù)企業(yè)也憑借先發(fā)優(yōu)勢,發(fā)展勢頭強(qiáng)勁。

      本文在對Hadoop的核心組件Hadoop分布式文件系統(tǒng)HDFS和分布式計(jì)算模型MapReduce進(jìn)行深入分析和研究的基礎(chǔ)上,搭建基于Hadoop的云計(jì)算平臺,在該平臺上實(shí)現(xiàn)通過檢索不同文件系統(tǒng)下在搜索引擎的輸入接口,輸入內(nèi)容的統(tǒng)計(jì)次數(shù),智能提示和匹配后續(xù)的內(nèi)容。在云平臺下完成仿百度搜索引擎智能輸入提示功能的算法研究與實(shí)現(xiàn)工作。

      1 云計(jì)算技術(shù)研究

      云計(jì)算即一種基于因特網(wǎng)的新型超級計(jì)算模式,用戶只需要通過簡單的聯(lián)網(wǎng)設(shè)備接入云數(shù)據(jù)中心,就能切身體驗(yàn)到每秒十萬億次的計(jì)算能力。廣義云計(jì)算是指服務(wù)商提供給用戶交付和使用服務(wù)的一種模式,用戶僅需要一臺普通PC就可以通過網(wǎng)絡(luò)按需獲得所需服務(wù)。狹義云計(jì)算就是指用戶能夠像購買水電一樣,根據(jù)需求隨時(shí)獲取所需資源和IT基礎(chǔ)設(shè)施。

      Hadoop采用分布式存儲結(jié)構(gòu),讀寫速度有了極大提高。其基于Java語言開發(fā),HDFS分布式文件系統(tǒng)具有高容錯的特性,并且具有超強(qiáng)的數(shù)據(jù)管理能力。

      HDFS是Hadoop分布式文件系統(tǒng),是分布式數(shù)據(jù)計(jì)算和文件存儲的基礎(chǔ)。HDFS 的名稱節(jié)點(diǎn)即NameNode,在Hadoop中充當(dāng)一個全局管理者的角色,負(fù)責(zé)調(diào)度數(shù)據(jù)節(jié)點(diǎn)去執(zhí)行系統(tǒng)最底層的任務(wù),以及負(fù)責(zé)監(jiān)控整個系統(tǒng)的運(yùn)行狀態(tài)。

      主節(jié)點(diǎn)(NameNode)負(fù)責(zé)管理該文件系統(tǒng)中的元數(shù)據(jù),數(shù)據(jù)節(jié)點(diǎn)(DataNode)則負(fù)責(zé)存儲該文件系統(tǒng)中的實(shí)際數(shù)據(jù)??蛻舳送ㄟ^與主節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn)的交互來訪問文件系統(tǒng)。圖1為HDFS體系結(jié)構(gòu)圖。

      圖1 HDFS體系結(jié)構(gòu)圖Fig.1 HDFS architecture

      MapReduce是一種編程模型,可用于大規(guī)模TB級別以上數(shù)據(jù)集的并行運(yùn)算。在Hadoop中,每一個MapReduce的任務(wù)都被初始化為一個job,每個job又可分為Map和Reduce階段。他們可用兩個功能函數(shù)來表示,即Map函數(shù)和Reduce函數(shù)。Map函數(shù)是負(fù)責(zé)接收一個<key,value>形式的輸入,然后產(chǎn)生同形式的中間輸出結(jié)果,然后Hadoop將中間結(jié)果集合到一起傳遞給Reduce函數(shù),Reduce函數(shù)再去接收<key,(list of values)>形式的輸入,然后進(jìn)行并行處理。圖2 描述了MapReduce處理大數(shù)據(jù)集的具體流程。

      圖2 MapReduce處理過程Fig.2 MapReduce processing

      Hadoop的第三大核心技術(shù)就是HBase,它是一個面向列的、分布式的數(shù)據(jù)庫,同時(shí)也是一種開源數(shù)據(jù)庫。相對于普通的數(shù)據(jù)庫,HBase非常適合于非結(jié)構(gòu)化的數(shù)據(jù)存儲。其次,HBase還是一種基于列的模式存儲。這兩個特點(diǎn)使得HBase成為一種在性能、可靠性、伸縮性等方面都大放異彩的分布式存儲系統(tǒng)。

      2 Hadoop開發(fā)環(huán)境配置

      云計(jì)算平臺機(jī)群中包括了3個節(jié)點(diǎn):1個Master、2個Slave,節(jié)點(diǎn)之間采用局域網(wǎng)連接并且相互之間可連通。節(jié)點(diǎn)IP地址分布如表1所示。

      這3個節(jié)點(diǎn)上均是CentOS6.4系統(tǒng),Master虛擬機(jī)主要扮演NameNode和JobTracker的角色,另外的兩臺Salve虛擬機(jī)扮演DataNode和TaskTracker的角色。

      表1 節(jié)點(diǎn)IP地址Tab.1 Node IP addresses

      2.1 Hadoop集群成功截圖

      ① 在瀏覽器里地址欄輸入“http://hadoop001∶50030/”,顯示結(jié)果如圖3所示。

      圖3 50030界面Fig.3 50030 interface

      ② 在瀏覽器里地址欄輸入“http://hadoop001∶50070/”,顯示結(jié)果如圖4所示。

      這樣就完成了Hadoop集群平臺的搭建。

      圖4 50070界面Fig.4 50070 interface

      2.2 基于Eclipse的Hadoop應(yīng)用開發(fā)環(huán)境配置

      操作系統(tǒng)為centos6.4(1個NameNode 2個DataNode);Hadoop版本為hadoop-1.1.2;Eclipse版本為Eclipse IDE for Java EE Developers。

      第一步:先啟動hadoop守護(hù)進(jìn)程,執(zhí)行start-all.sh指令。

      第二步:在eclipse上安裝hadoop插件。

      ①把Hadoop插件放到Eclipse安裝目錄的plugins中,重啟Eclipse生效。

      ②配置Map/Reduce Locations。新建一個Hadoop Location,配置對應(yīng)的Location name和Map/Reduce Master、DFS Master,如圖5所示。

      圖5 配置Map/Reduce LocationsFig.5 Deployment of Map/Reduce Locations

      ③ 配置完后退出。點(diǎn)擊DFS Locations->Hadoop,如圖6所示。

      圖6 DFS LocationsFig.6 DFS Locations

      第三步:新建項(xiàng)目。新建一個Map/Reduce Project,此處項(xiàng)目名取為WordCount。復(fù)制 Hadoop源文件中WordCount. java程序到剛剛新建的項(xiàng)目中。

      第四步:上傳測試數(shù)據(jù),上傳成功后如圖7所示。

      圖7 HDFS文件系統(tǒng)Fig.7 HDFS file system

      第五步:點(diǎn)擊Run,運(yùn)行程序,顯示結(jié)果如圖8所示。

      圖8 運(yùn)行結(jié)果Fig.8 Run results

      2.3 PieTTY

      PieTTY是一種基于Putty開發(fā)的工具,它的用戶界面相對于Putty得到了有效的改進(jìn),并且還提供了更多的語種支持功能。Putty作為遠(yuǎn)程連接linux的工具,支持SSH和telnet。如圖9所示。

      圖9 PieTTY界面Fig.9 PieTTY interface

      2.4 WinSCP

      WinSCP是一種基于Windows環(huán)境的SFTP客戶端,它同時(shí)也支持SCP協(xié)議。其主要功能特點(diǎn)就是可以在本地計(jì)算機(jī)與遠(yuǎn)程計(jì)算機(jī)間進(jìn)行安全的復(fù)制文件。

      安裝非常簡單,按照提示一步一步操作即可,中間沒有需要選擇、判斷的地方。如圖10所示。

      3 仿百度搜索引擎自推薦功能設(shè)計(jì)與實(shí)現(xiàn)

      百度搜索提示功能實(shí)際上需要處理每天數(shù)以萬計(jì)的信息,將用戶搜索最多的前10個關(guān)鍵詞做以提示推薦。本研究模擬了類似百度搜索提示功能,使用JqueryUI+Ajax+Redis搭建前后臺框架,期間用到了搜索引擎自動推薦算法,并且是使用MapReduce實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)算法,最終定制MapReduce輸出,將數(shù)據(jù)直接寫入Redis內(nèi)存數(shù)據(jù)庫,最終完成初步的仿百度搜索提示功能。

      ① 搭建了一個struts2的開發(fā)環(huán)境。

      ② 使用JqueryUI+Ajax+Redis搭建前后臺框架,采用ajax技術(shù)作出用戶在Sug.jsp頁面輸入搜索后的響應(yīng)動作。具體代碼如圖11所示。

      圖11 Sug.jsp部分代碼Fig.11 Sug.jsp code(partial)

      在后臺Sug.java部分,通過連接虛擬機(jī)主節(jié)點(diǎn)IP地址192.168.80.101,將該程序與Redis數(shù)據(jù)庫進(jìn)行連接。Sug.java部分代碼如圖12所示。

      圖12 Sug.java部分代碼Fig.12 Sug.java code(partial)

      ③ 在虛擬機(jī)主節(jié)點(diǎn)hadoop001里安裝配置Redis數(shù)據(jù)庫和Tomcat,并開啟運(yùn)行狀態(tài)。

      ④ 使用MapReduce實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)算法,統(tǒng)計(jì)出用戶搜索的關(guān)鍵詞的次數(shù)。Map函數(shù)負(fù)責(zé)將用戶搜索產(chǎn)生的日志文件里的記錄找到相應(yīng)的重要關(guān)鍵詞,然后通過文本處理統(tǒng)計(jì)頻率的程序,記錄關(guān)鍵詞出現(xiàn)的次數(shù)并把他們交給Reduce函數(shù)進(jìn)行合并。圖13為Map函數(shù)的代碼。

      圖13 Map函數(shù)代碼Fig.13 Map function code

      ⑤ 定制MapReduce輸出,將數(shù)據(jù)直接寫入Redis內(nèi)存數(shù)據(jù)庫。這樣,當(dāng)把程序通過Eclipse運(yùn)行起來時(shí),MapReduce將自動記錄下數(shù)據(jù)日志文件,并做相應(yīng)的處理,寫入到數(shù)據(jù)庫中。

      ⑥測試運(yùn)行。在瀏覽器中輸入字母“h”就會出現(xiàn)搜索提示,如圖14所示。

      圖14 搜索提示運(yùn)行結(jié)果Fig.14 Run results of search tips

      4 結(jié) 語

      本研究對Hadoop的核心組件HDFS和MapReduce進(jìn)行深入分析,搭建基于Hadoop的云計(jì)算平臺,通過實(shí)驗(yàn)有效驗(yàn)證了該平臺仿百度搜索引擎智能提示算法的研究與實(shí)現(xiàn)任務(wù)。

      [1] 張健. 云計(jì)算概念和影響力解析[J]. 電信網(wǎng)技術(shù),2009(1):15-18.

      [2] 潘富斌. 基于Hadoop的安全云存儲系統(tǒng)研究與實(shí)現(xiàn)[D]. 成都:電子科技大學(xué),2013.

      [3] 翀欒亞建,黃民,龔高晟,等. Hadoop平臺的性能優(yōu)化研究[J]. 計(jì)算機(jī)工程,2010(14):262-263.

      [4] Mackey G,Sehrish S,Wang J. Improving metadata management for small files in HDFS[C]. IEEE International Conference on Cluster Computing and Workshops,2009.

      [5] Borthakur D,Gray J,Sarma J S. Apache Hadoop goes realtime at Facebook [C]. Proceedings of the 2011 international conference on Management of data,2011.

      A Hadoop Cloud Platform Based and Baidu Modeled Intelligent Input Algorithm:Research and Realization

      HUA Zhijie1,2
      (1.Tongji University,Shanghai 200092,China;2.Tianjin Ptgosn Science and Technology Ltd.,Tianjin 300384,China)

      Cloud computing refers to the new Internet-based computing model which shares IT resources by way of virtualization.HDFS(Hadoop Distributed File System)takes MapReduce distributed computing framework as the core to provide users with low-level details of transparent distributed cloud infrastructure.This study focuses on the design and implementation of the algorithms of providing smart tips and matched contents for users’ inputting through searching input interfaces,distributed statistics of users’ input contents,smart tips and matched follow-up contents.

      cloud computing;Hadoop;intelligent input;intelligent match;HDFS;MapReduce

      TP311.1

      :A

      :1006-8945(2015)12-0020-04

      2015-11-05

      猜你喜歡
      百度分布式數(shù)據(jù)庫
      Robust adaptive UKF based on SVR for inertial based integrated navigation
      百度年度熱搜榜
      青年與社會(2018年2期)2018-01-25 15:37:06
      分布式光伏熱錢洶涌
      能源(2017年10期)2017-12-20 05:54:07
      分布式光伏:爆發(fā)還是徘徊
      能源(2017年5期)2017-07-06 09:25:54
      數(shù)據(jù)庫
      數(shù)據(jù)庫
      數(shù)據(jù)庫
      數(shù)據(jù)庫
      基于DDS的分布式三維協(xié)同仿真研究
      百度遭投行下調(diào)評級
      仁寿县| 兴仁县| 昌邑市| 和硕县| 嵩明县| 东台市| 柯坪县| 阜平县| 缙云县| 顺平县| 拉孜县| 蒙城县| 游戏| 托克逊县| 揭东县| 那曲县| 都匀市| 炎陵县| 黄平县| 贺州市| 皋兰县| 浦北县| 闽清县| 太仓市| 高碑店市| 麻江县| 长垣县| 甘谷县| 青铜峡市| 大关县| 岳普湖县| 石楼县| 彭阳县| 贵溪市| 项城市| 依安县| 航空| 依兰县| 深泽县| 镇坪县| 专栏|