国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      處理壓縮文件的方法和裝置的制造方法

      文檔序號:8264967閱讀:543來源:國知局
      處理壓縮文件的方法和裝置的制造方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別地涉及一種處理壓縮文件的方法和裝置。
      【背景技術(shù)】
      [0002]在大數(shù)據(jù)領(lǐng)域中,數(shù)據(jù)壓縮是一項非常重要的技術(shù),對海量數(shù)據(jù)進行壓縮存儲,能夠節(jié)省服務(wù)器存儲空間,提高數(shù)據(jù)處理效率,減少內(nèi)存和磁盤I/o開銷,提高大數(shù)據(jù)的SQL查詢效率。
      [0003]LZO(Lempel-Ziv-Oberhumer)是致力于解壓速度的一種數(shù)據(jù)壓縮算法,這個算法是無損算法,參考實現(xiàn)程序是線程安全的,并且具有解壓簡單、速度非???,解壓不需要內(nèi)存,壓縮相當(dāng)?shù)乜斓忍攸c。
      [0004]由于Presto和LZO遵循不同的開源協(xié)議,Presto遵循Apache Licence 2.0(—個在Apache軟件基金會發(fā)布的自由軟件許可證),而LZO遵循GPL (General Public License,是一個廣泛被使用的自由軟件許可協(xié)議條款)協(xié)議,因此Presto無法在源碼中集成LZO源碼并實現(xiàn)對LZO壓縮格式的支持。

      【發(fā)明內(nèi)容】

      [0005]有鑒于此,本發(fā)明提供一種處理壓縮文件的方法和裝置,能夠使Presto支持LZO壓縮格式。
      [0006]為實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種處理壓縮文件的方法。
      [0007]本發(fā)明的處理壓縮文件的方法包括:在Presto服務(wù)器啟動時,將Hadoop-1zo插件作為第三方插件導(dǎo)入;在所述Presto服務(wù)器讀取到Izo壓縮格式的文件的情況下,使用所述Hadoop-1zo插件處理所述Izo壓縮格式的文件。
      [0008]可選地,在所述Presto服務(wù)器讀取到Izo壓縮格式的文件的情況下,還包括:判斷所述Izo壓縮格式的文件是否存在索引文件,若是,則根據(jù)該索引文件對所述Izo壓縮格式的文件進行分片得到多個數(shù)據(jù)片;使用所述Hadoop-lzo插件處理所述Izo壓縮格式的文件的步驟包括:使用所述Hadoop-lzo插件,對所述多個數(shù)據(jù)片進行并行處理。
      [0009]可選地,在使用所述Hadoop-1zo插件處理Izo壓縮格式的數(shù)據(jù)時,調(diào)用Izo解壓縮函數(shù);其中該Izo解壓縮函數(shù)繼承通用的解壓縮函數(shù),并且使用Hadoop-lzo插件提供的接口進行重寫。
      [0010]根據(jù)本發(fā)明的另一方面,提供了一種處理壓縮文件的裝置。
      [0011]本發(fā)明的處理壓縮文件的裝置包括:插件導(dǎo)入模塊,用于在Presto服務(wù)器啟動時,將Hadoop-1zo插件作為第三方插件導(dǎo)入;處理模塊,用于在所述Presto服務(wù)器讀取到Izo壓縮格式的文件的情況下,使用所述Hadoop-1zo插件處理所述Izo壓縮格式的文件。
      [0012]可選地,所述處理模塊還用于在所述Presto服務(wù)器讀取到Izo壓縮格式的文件的情況下,判斷所述Izo壓縮格式的文件是否存在索引文件,若是,則根據(jù)該索引文件對所述Izo壓縮格式的文件進行分片得到多個數(shù)據(jù)片;以及使用所述Hadoop-lzo插件,對所述多個數(shù)據(jù)片進行并行處理。
      [0013]可選地,所述處理模塊還用于在使用所述Hadoop-1zo插件處理Izo壓縮格式的數(shù)據(jù)時,調(diào)用Izo解壓縮函數(shù);其中該Izo解壓縮函數(shù)繼承通用的解壓縮函數(shù),并且使用Hadoop-1zo插件提供的接口進行重寫。
      [0014]根據(jù)本發(fā)明的技術(shù)方案,在Presto服務(wù)器啟動時,將Hadoop-1zo插件作為第三方插件導(dǎo)入,利用Hadoop-1zo插件處理Izo壓縮格式的文件。Hadoop-1zo插件提供了對LZO壓縮文件進行各種處理的接口,因此通過該插件提供的公共接口可以實現(xiàn)對LZO壓縮文件的處理,也不會帶來使用LZO源碼時開源協(xié)議不統(tǒng)一的困擾。這樣就使得Presto能夠支持LZO壓縮格式。另外,通過處理LZO索引對LZO文件進行分片并行處理,能夠進一步提高數(shù)據(jù)處理速度。如需要支持其他壓縮格式,只需要添加新的插件,并使用該插件提供的接口重寫通用的解壓縮函數(shù)即可,使系統(tǒng)功能易于擴展。
      【附圖說明】
      [0015]附圖用于更好地理解本發(fā)明,不構(gòu)成對本發(fā)明的不當(dāng)限定。其中:
      [0016]圖1是根據(jù)本發(fā)明實施例的Presto服務(wù)器、插件接口、第三方插件的關(guān)系的示意圖;
      [0017]圖2是根據(jù)本發(fā)明實施例的處理壓縮文件的方法的基本步驟的示意圖;
      [0018]圖3是根據(jù)本發(fā)明實施例的處理壓縮文件的裝置的主要模塊的示意圖。
      【具體實施方式】
      [0019]以下結(jié)合附圖對本發(fā)明的示范性實施例做出說明,其中包括本發(fā)明實施例的各種細節(jié)以助于理解,應(yīng)當(dāng)將它們認為僅僅是示范性的。因此,本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)認識到,可以對這里描述的實施例做出各種改變和修改,而不會背離本發(fā)明的范圍和精神。同樣,為了清楚和簡明,以下的描述中省略了對公知功能和結(jié)構(gòu)的描述。
      [0020]本發(fā)明實施例利用了 Presto提供的對第三方插件的支持功能,基本原理為:將第三方插件集成到Presto服務(wù)器插件集合中,在Presto服務(wù)器啟動時,動態(tài)導(dǎo)入第三方插件。Presto運行時動態(tài)查找并綁定第三方插件,調(diào)用第三方插件提供的接口,從而將第三方插件的功能集成到Presto中。在本發(fā)明實施例中,將Hadoop-1zo插件導(dǎo)入到Presto插件集合中作為第三方插件,Presto動態(tài)綁定該插件。圖1是根據(jù)本發(fā)明實施例的Presto服務(wù)器、插件接口、第三方插件的關(guān)系的示意圖。
      [0021]圖2是根據(jù)本發(fā)明實施例的處理壓縮文件的方法的基本步驟的示意圖。該方法由Presto服務(wù)器執(zhí)行。
      [0022]步驟S21 !Presto服務(wù)器啟動。
      [0023]步驟S22:將Hadoop-1zo插件作為第三方插件導(dǎo)入。
      [0024]步驟S23:從數(shù)據(jù)源中讀取數(shù)據(jù)。
      [0025]步驟S24:判斷讀取到的數(shù)據(jù)是否為Izo壓縮格式的文件,若是,進入步驟S25,否則進入步驟S26。
      [0026]步驟S25:使用Hadoop-1zo插件處理Izo壓縮格式的文件。
      [0027]步驟S26:根據(jù)讀取到
      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1