• 
    

    
    

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

      ?

      一種基于Hadoop的海量圖片檢索策略

      2016-11-14 23:54:40孫玉林王曉卉
      電子技術(shù)與軟件工程 2016年18期
      關鍵詞:分布式系統(tǒng)

      孫玉林++王曉卉

      摘 要

      針對電商平臺海量圖片的檢索出現(xiàn)的性能瓶頸問題,本文提出一種基于Hadoop的海量圖片檢索策略,通過Sequence實現(xiàn)對小圖片合并,并在合并過程中設定單個Sequence File的偏移量,解析索引快速定位存儲圖片Block的DataNode和Fileld,解決海量圖片數(shù)據(jù)擴容和快速檢索的問題。

      【關鍵詞】分布式系統(tǒng) 海量圖片 檢索策略

      隨著互聯(lián)網(wǎng)的普及和廣泛應用,電商平臺和社交網(wǎng)絡也不斷發(fā)展,用于商品展示或社交分享的圖片數(shù)量呈爆炸式增長。在這些電子商務網(wǎng)站和社交網(wǎng)站上,圖片的信息表達遠遠超過了文字信息的描述,所以這些電子商務網(wǎng)站和社交網(wǎng)站更加注重圖片的質(zhì)量。從對淘寶網(wǎng)的分析來看,在整個商務平臺的流量中,對圖片的訪問高達91.5%以上。騰訊相冊的用戶每周上傳的圖片也高達11億張,目前的總圖片數(shù)量有近700億張,總?cè)萘扛哌_15PB。由于海量圖片需要消耗海量的存儲空間,圖片的存儲和檢索都會出現(xiàn)性能瓶頸。面對海量的圖片資源,如何高效的檢索以及如何在滿足高并發(fā)訪問的前提下構(gòu)建高效廉價的檢索系統(tǒng)成為需要迫切解決的問題。

      1 Hadoop云計算平臺

      Hadoop是一個能夠?qū)Υ罅繑?shù)據(jù)進行分布式處理的軟件框架,同時它又是可靠、高效、可擴展的??煽啃泽w現(xiàn)在它假設計算元素和存儲會失敗,因此它維護多個工作數(shù)據(jù)副本,確保能夠針對失敗的節(jié)點重新分布處理。高效性體現(xiàn)在它以并行的方式工作,通過并行處理加快處理速度??赏卣剐灾钙淠軌蛱幚鞵B級數(shù)據(jù)。由于Hadoop最初是針對大規(guī)模文本數(shù)據(jù)處理設計的,內(nèi)部數(shù)據(jù)類型有限,不能直接處理圖片數(shù)據(jù)。在HDFS中,文件或目錄等均是以對象形式在內(nèi)存中存儲,每個對象約使用150比特內(nèi)存。隨著海量圖片數(shù)量的增加,耗費的內(nèi)存也迅速增加,大量名字節(jié)點內(nèi)存的耗費,嚴重影響了Hadoop的應用性。同時,檢索大量圖片的速度遠遠慢于訪問相同數(shù)據(jù)量的大文件。

      2 基于Hadoop的海量圖片檢索策略

      HDFS是分布式計算的存儲基石,Hadoop的分布式文件系統(tǒng)和其他分布式文件系統(tǒng)有很多類似的特質(zhì)。它將復雜的運行于大規(guī)模集群上的并行計算過程高度的抽象到了兩個函數(shù)Map和Reduce。MapReduce是一個用于進行大數(shù)據(jù)量計算的編程模型,同時也是一種高效的任務調(diào)度模型,它將一個任務分成很多更細粒度的子任務,這些子任務能夠在空閑的處理節(jié)點之間調(diào)度,使處理速度越快的節(jié)點處理越多的任務,從而避免處理速度慢的節(jié)點延長整個任務的完成時間。

      步驟1 搭建Hadoop集群平臺。每臺計算機安裝操作系統(tǒng)和Hadoop軟件,將一臺計算機配置成NameNode,其它計算機配置成DataNodes。各個機器通過SSH直接通信。NameNode負責的是整個存儲層的管理,DataNode主要作為存儲節(jié)點。驗證DataNode和NameNode之間聯(lián)通性是通過心跳檢測來實現(xiàn),并且DataNode還要定期將自己的存儲區(qū)信息發(fā)送給NameNode。當客戶端訪問時,首先訪問NameNode,NameNode會分配相應的空間,在得到相應的空間后開始各個作業(yè)。

      步驟2 設置安全策略。Hadoop集群平臺中新增一臺DataNode2作為NameNode備份機,將原有NameNode中的數(shù)據(jù)復制到選定的DataNode2中,在NameNode運行時,NameNode2會實時的檢測NameNode的運行狀態(tài),同時把NameNode中的操作實時更新到本地,在NameNode出現(xiàn)故障時,NameNode2代替NameNode保證服務的正常進行。

      步驟3 單圖片存儲處理。圖片先經(jīng)過負載均衡模塊過濾,進入應用服務器隊列等待進入HDFS存儲系統(tǒng),通過NameNode分配DataNode進行存儲,圖片寫入過程中先確定寫入Block,再確定Sequence File,系統(tǒng)將二者的ID組合命名為圖片的系統(tǒng)內(nèi)的名稱。圖片元數(shù)據(jù)保存在HBase,同時元數(shù)據(jù)也保存在由Redis構(gòu)建的緩存系統(tǒng)中。圖片完成寫入操作。

      步驟4 文件預處理合并。將指定目錄下的圖片文件讀取進圖片數(shù)組,并初始化byte數(shù)組,用相應的輸出文件流將byte中的圖片讀入到指定路徑下的合并文件中去。

      步驟5 建立圖片索引。圖片名用的是聯(lián)合編碼的方式,主要包含BlockId和FileId兩部分。其中BlockId代表的是一個存儲單元,NameNode可以根據(jù)其確定最近的DateNode地址,F(xiàn)ileId代表的是小圖片在拼接的時候SequenceFile的Id;offset代表的是相應key值的一個的偏移量。HDFS前端在接收到客戶端的請求后首先會解析文件名,根據(jù)相關信息定位到相應的Block文件、FileId和offset,然后客戶端直接對圖片進行讀取。在對文件名解析以后,可以直接讀取DateNode節(jié)點數(shù)據(jù),并可以通過偏移量定位到圖片的開始位置。

      步驟6 客戶端以圖片名稱和創(chuàng)建時間為參數(shù)發(fā)起訪問請求,NameNode運算獲取圖片所在分鐘時間段和合并文件對應的Blocks信息,返回給客戶端??蛻舳讼蜃罱腄ataNode發(fā)起圖片讀取請求。DataNode運算獲得圖片具體地址信息。

      3 結(jié)束語

      本文提出的一種基于Hadoop的海量圖片檢索策略,可以很好的解決Hadoop檢索海量圖片時NameNode內(nèi)存消耗過度和檢索效率低下的問題,并有效降低了檢索時的NameNode負載,實現(xiàn)了對NameNode性能的提升,從而推動hadoop平臺更廣泛的應用。

      參考文獻

      [1]郭本俊,王鵬, 陳高云等.基于MPI的云計算模型[J].計算機工程,2009,35(24): 84-85,96.

      [2]王文平,劉希玉,韓杰.基于并行遺傳算法的關聯(lián)規(guī)則挖掘[J].山東師范大學學報(自然科學版),2006,21(04):29-31.

      猜你喜歡
      分布式系統(tǒng)
      機房溫濕度監(jiān)控系統(tǒng)研究
      中國新通信(2017年8期)2017-05-26 15:54:29
      基于分布式計算的暴力破解密碼系統(tǒng)的改進
      基于現(xiàn)場采集與云服務的流量積算管理系統(tǒng)研究
      典型應用領域全球定量遙感產(chǎn)品生產(chǎn)體系
      科技資訊(2016年25期)2016-12-27 16:23:06
      以數(shù)據(jù)為中心的分布式系統(tǒng)自適應集成方法
      軟件導刊(2016年11期)2016-12-22 21:30:47
      分布式系統(tǒng)中的辯證對立統(tǒng)一概念與方法
      計算機教育(2016年9期)2016-12-21 00:33:11
      基于Hadoop的MOOC學習分析系統(tǒng)的構(gòu)建
      計算機時代(2016年7期)2016-07-15 16:05:27
      一種分布式消息隊列的可靠性研究
      “中間件技術(shù)”課程教學方法改革探討
      下一代網(wǎng)絡技術(shù)
      巴东县| 金寨县| 汉寿县| 平遥县| 安化县| 含山县| 花莲县| 商城县| 勃利县| 亚东县| 长海县| 措勤县| 林州市| 巴林左旗| 信宜市| 桓台县| 义马市| 陵水| 常宁市| 时尚| 山阳县| 平原县| 镇雄县| 泰宁县| 册亨县| 潜山县| 白水县| 定远县| 浦城县| 隆德县| 惠州市| 盱眙县| 九寨沟县| 阜城县| 云和县| 石棉县| 海晏县| 长子县| 阜康市| 报价| 隆化县|