4.hadoop中的壓縮
阿新 • • 發佈:2019-01-24
所有的壓縮演算法都會考慮時間和空間的權衡
列出一些可以用於Hadoop的常見壓縮格式以及特性
Hadoop壓縮api應用例項
獲得具體的[編碼/解碼]方式
egg1:通過傳入壓縮的方式名反射
egg2:通過檔案拓展名獲得,通過[編碼/解碼]工廠CompressionCodecFactory
對於工廠方法而言,用於建立多種產品
Hadoop壓縮框架
1.編碼/解碼器
CompressionCodec
介面實現了[編碼/解碼器],提供了一系列方法
CompressionCodecFactory:
使用者可以通過它提供的方法獲得CompressionCodec:
其中成員變數codecs是一個鍵有序的map集合,儲存著對映關係:[檔案拓展名:CompressionCodec]
2.解壓器和壓縮器
Compressor
- setInput()接受資料到內部緩衝區
- needsInput()內部緩衝區是否已滿
- compress()獲取壓縮後的資料,釋放緩衝區空間
- finish()為了通知壓縮器所有資料已寫入
- finished()判斷壓縮器中是否還有未讀取的壓縮資料