Hadoop压缩类型

来源:互联网 发布:c语言标识符命名规则 编辑:程序博客网 时间:2024/05/01 14:57

压缩类型

工具

算法

文件名后缀

可分割

DEFLAT

DEFLAT

.deflat

gzip

gzip

DEFLAT

.gz

bzip2

bzip2

bzip2

.bz2

LZO

Lzop

LZO

.lzo

LZ4

LZ4

.lz4

Snappy

Snappy

.snappy

       比较而言,gzip在对时间与空间的处理问题上更加均衡一些。相对gzip来说,

bzip2压缩效率更高,比gzip效率更高,压缩后的文件占据的空间更小,但是其

需要的时间更长

      HDFS文件格式,文件时分割在一个个不同的block中进行存储。而gzip是不

可分割的,那么如果采用gzip作为压缩工具,将文件切割成多个block,会发现

程序部能运行,其原因是系统默认的DEFLATE算法(gzip的核心算法)在压缩过

程中将数据进行连续的非指向性排列,若从其中一个位置被分割,那么无法确

FileSystem实例在获取完一个单独的block后,能够及时准确地获取接下来的那

一个连续的block位置。

      gzip压缩后的大文件可以被Hadoop以串联的方式存储在同一个节点中连续

block中,即所有的数据都以链式的结构存储在同一个节点上,Hadoop做的仅

仅是对容量进行了压缩。只是由于其后续处理需要对文件进行读取操作时,所

有存储有数据的block将会一次由同一个数据输入任务来处理。

0 0