• 
    

    
    

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

      基于Hadoop的小文件分布式存儲技術(shù)研究

      2014-02-11 03:47:05袁曉春
      機電工程技術(shù) 2014年12期
      關(guān)鍵詞:機柜海量集群

      袁曉春

      (廣東電網(wǎng)有限責任公司惠州供電局,廣東惠州 516001)

      基于Hadoop的小文件分布式存儲技術(shù)研究

      袁曉春

      (廣東電網(wǎng)有限責任公司惠州供電局,廣東惠州 516001)

      HDFS(Hadoop Distributed File System)以其高容錯性、高伸縮性等優(yōu)點,允許用戶將Hadoop部署在低廉的硬件上,廣泛適用于大文件存儲。然而對于海量小文件,因為內(nèi)存開銷過高,因此對數(shù)據(jù)的存儲技術(shù)提出了更高的要求?;贖adoop分布式文件系統(tǒng)(HDFS)架構(gòu),研究小文件在Hadoop架構(gòu)下的數(shù)據(jù)處理策略,通過實驗將其與傳統(tǒng)的文件系統(tǒng)的讀寫、計算速度進行比較。

      分布式存儲;HDFS;MapReduce

      0 引言

      Hadoop是開源的分布式計算平臺,允許用戶在低廉的硬件上部署分布式集群,所以用戶可以利用Hadoop輕松地組織計算機資源,充分利用計算機集群的計算和存儲能力進行海量數(shù)據(jù)處理[1]。HDFS是由Namenode和Datanode組成的,由于Na?menode將文件系統(tǒng)的元數(shù)據(jù)放置于內(nèi)存中,所以文件系統(tǒng)所容納的文件數(shù)目會受到Namenode內(nèi)存大小的限制[2],不能很好地解決海量小文件存儲問題(例如現(xiàn)實生活中圖片、音樂、日志等比較零散的數(shù)據(jù)存儲,都屬于小文件存儲)[3-5]。

      1 Hadoop小文件分布式系統(tǒng)

      小文件是指文件容量小于HDFS的分塊(block)大小的文件。HDFS是為大文件存儲、讀取而開發(fā)的,若訪問海量小文件則需要在Datanode間不停跳轉(zhuǎn),影響效率。顯然,因為任務(wù)啟動將耗費大量時間在啟動和釋放任務(wù)上,系統(tǒng)處理海量小文件總和的速度,顯著低于同等容量下的大文件處理速度。

      針對小文件的解決方案,Hadoop框架提供了幾種解決方案,分別為:Hadoop Archive,Se?quence file和Combine File Input Format[3]。Hadoop Archive簡稱HAR,它將多個小文件打包成一個HAR文件,放入塊中,以減少Namenode內(nèi)存使用。HAR也有缺陷,創(chuàng)建后Archives便不可更改,要增加或刪除其中文件必須重新創(chuàng)建。Se?quence files是由二進制的(Key,Value)對組成的,定義鍵Key為小文件名,值Value為文件內(nèi)容,將海量小文件合并成大文件,并實現(xiàn)快速查找。Combine File Input Format是則定義了一種新的數(shù)據(jù)格式,可以將多個文件合并成一個單獨的分塊[3]。

      圖1 HDFS架構(gòu)

      2 小文件分布式文件系統(tǒng)優(yōu)化

      2.1 HDFS系統(tǒng)框架

      如圖1所示,HDFS是一個分布式文件系統(tǒng)的超級大集群。該系統(tǒng)有一個以上的公共節(jié)點和兩個服務(wù)器,這可同時用作服務(wù)器是HDFS文件系統(tǒng)和MapReduce名稱服務(wù)器計算平臺作業(yè)調(diào)度器(JobTracker),不僅是作為HDFS文件系統(tǒng)的數(shù)據(jù)節(jié)點的其余節(jié)點(Datanode),而且還作為一個計算平臺的MapReduce任務(wù)執(zhí)行(Task Tracker)。將大規(guī)模的網(wǎng)絡(luò)數(shù)據(jù)變成“本地處理”,大大提高海量數(shù)據(jù)處理速度,實現(xiàn)高效率計算。存儲在HDFS大量存在于一個塊的形式的文件,在相同塊中的文件的大小,用不同的塊大小的文件的其他文件只有最后一個塊。對于容錯,屬于文件塊需要復制保存。復制該文件的大小的塊的數(shù)目,并可以為每個文件設(shè)定。HDFS符合一次編寫原則,同一時刻只允許單個用戶寫入。Namenode節(jié)點負責文件塊復制管理,將各Na?menode節(jié)點塊復制的日志反饋,根據(jù)日志判斷復制目標塊。

      HDFS與其他分布式文件系統(tǒng)功能不同的是其性能和相關(guān)數(shù)據(jù)塊副本的位置選擇比較大的可靠性。HDFS使用感知機制(rack-aware)策略以提高數(shù)據(jù)可用性和利用網(wǎng)絡(luò)帶寬的可靠性。一般在大型計算機集群系統(tǒng)運行的HDFS實例,不同的服務(wù)器集群可以跨機柜部署,相異節(jié)點之間通過交換機相互連通。通常相同機柜比不同機柜節(jié)點之間的通信速度更快,因為機柜內(nèi)失效的概率比機器故障的概率小得多,這樣部署可以在不降低數(shù)據(jù)的可靠性和可用性的條件下,有效降低機柜內(nèi)的寫入流量,大大提高寫入性能。

      在啟動時不發(fā)生文件塊的復制稱為Namenode節(jié)點安全模式。每個數(shù)據(jù)塊記錄副本的某個最小數(shù)值,當Namenode的節(jié)點發(fā)現(xiàn)數(shù)據(jù)庫有多個副本的最小數(shù)值時,說明副本已被安全復制。Nameno?de節(jié)點則自動退出安全模式的條件是有足夠的塊來完成副本復制。

      圖2 基于Hadoop的文件系統(tǒng)計算框架

      基于Hadoop的文件系統(tǒng)計算框架如圖2所示。

      文獻[4]針對WebGIS數(shù)據(jù),將相鄰的小文件合并為大文件,并對所有小文件建立全局哈希索引,有效提高小文件的存取效率。文獻[5]針對BlueSky系統(tǒng)中的文檔文件,將同類PPT小文件合并成為一個大文件,并對每個大文件建立局部索引,以上兩種方法充分利用了計算機緩存機制,提高了小文件的存取效率,是目前比較適用的小文件存儲方法。

      2.2 小文件處理方法在HDFS框架下的實現(xiàn)

      本節(jié)試圖在系統(tǒng)層面解決HDFS小文件存儲,存儲流程如圖3所示。

      圖3 基于Hadoop的小文件系統(tǒng)存儲流程

      讀取流程如圖4所示。

      3 實驗與數(shù)據(jù)

      3.1 實驗?zāi)康?/p>

      根據(jù)本文設(shè)計的框架設(shè)計相關(guān)的實驗來驗證本文設(shè)計框架的可操作性。實驗數(shù)據(jù)被分成兩組,一組是采用傳統(tǒng)的分布式計算方案,使用Shell腳本處理日志,另一組為使用本文設(shè)計的系統(tǒng)框架運行分布式算法進行計算。

      3.2 實驗環(huán)境的配置

      實驗建立四個服務(wù)器的Hadoop集群,一臺做Namenode,三臺做Datanode,客戶端通過Na?menode提交數(shù)據(jù)。所述網(wǎng)絡(luò)服務(wù)器內(nèi)用于內(nèi)網(wǎng)系統(tǒng)的24 G實驗數(shù)據(jù)記錄,由10萬個200~250 kB的日志記錄組成。表1是一個具體的機器實驗室環(huán)境。

      3.3 實驗結(jié)果分析

      圖5和圖6是傳統(tǒng)HDFS MapReduce工作和小文件框架下統(tǒng)計計算的對比,從中可以清楚地看到,小文件框架工作運行時間比傳統(tǒng)HDFS運行時間顯著縮短。在內(nèi)存方面?zhèn)鹘y(tǒng)HDFS則明顯耗費了大量的內(nèi)存。

      圖4 基于Hadoop的小文件系統(tǒng)讀取流程

      表1 集群服務(wù)器配置信息

      4 總結(jié)

      Hadoop中目前還沒有通用的解決HDFS小文件問題的解決框架,現(xiàn)有的框架包括Hadoop Ar?chive,Sequence file和Combine File Input Format,需要用戶按需自定義程序邏輯,比較繁瑣,本文在對Hadoop集群架構(gòu)研究的基礎(chǔ)上,給出了一個基于Hadoop的小文件分布式存儲方法。實驗結(jié)果表明,該平臺可以大大提高小文件在HDFS框架下的讀寫速度。

      Research on Storage of Hadoop Distributed Small File System

      YUAN Xiao-chun
      (Huizhou Power Supply Bureau,Huiizhou516001,China)

      HDFS(Hadoop Distributed File System)for its high fault tolerance,high scalability,etc.,allows the user to deploy Hadoop inexpensive hardware,is widely used in large file storage.However,for the mass of small files,because the memory overhead is too high,so the data storage technology put forward higher requirements.Based on Hadoop distributed file system(HDFS)architecture,small file data processing policy in the Hadoop framework,by comparing the read and write test with the traditional file system,the calculation speed.

      distributed storage;HDFS;MapReduce

      TM73

      :A

      :1009-9492(2014)12-0159-03

      10.3969/j.issn.1009-9492.2014.12.040

      2014-11-14

      猜你喜歡
      機柜海量集群
      一種傅里葉域海量數(shù)據(jù)高速譜聚類方法
      DCS機柜用電現(xiàn)狀分析
      一種計算機聯(lián)鎖機柜工程圖紙的自動化生成方法
      海上小型無人機集群的反制裝備需求與應(yīng)對之策研究
      海量快遞垃圾正在“圍城”——“綠色快遞”勢在必行
      當代陜西(2019年14期)2019-08-26 09:42:00
      一種無人機集群發(fā)射回收裝置的控制系統(tǒng)設(shè)計
      電子制作(2018年11期)2018-08-04 03:25:40
      基于PLC的通信車配電機柜設(shè)計
      電子測試(2017年12期)2017-12-18 06:35:23
      Python與Spark集群在收費數(shù)據(jù)分析中的應(yīng)用
      勤快又呆萌的集群機器人
      一個圖形所蘊含的“海量”巧題
      璧山县| 长垣县| 玉溪市| 沛县| 绥化市| 佛冈县| 玉屏| 普兰县| 松江区| 罗田县| 卓尼县| 二连浩特市| 顺昌县| 武陟县| 锦屏县| 西城区| 顺平县| 巴林右旗| 云和县| 阿拉善左旗| 扶余县| 呼伦贝尔市| 辽宁省| 乡宁县| 梨树县| 广宗县| 栾城县| 故城县| 伊宁市| 玛纳斯县| 高阳县| 西华县| 巴彦淖尔市| 盐源县| 莱西市| 芮城县| 麟游县| 太康县| 潞城市| 江津市| 兴仁县|