压缩
压缩的好处
1.提升磁盘的利用率
2.加速网络传输
压缩的坏处
压缩解压需要消耗cpu
压缩的技术
- 有损
- 无损
压缩比
源文件1.4G
压缩技术 | 剩余大小 |
---|---|
snappy | 701M |
Lz4 | 693M |
LZO | 684M |
gzip | 447M |
Bzip2 | 390M |
压缩得越小,消耗的时间越多,速度越慢
分片
bzip,lzo(需要创建索引 create index) 支持分片,其余压缩方式都不支持分片
三个方框是三个可以进行压缩的阶段
- 阶段1是输入的阶段,要用可分片的压缩方式
- 要用速度快的
- 分情况:如果数据用于归档,采用高压缩比的压缩方式;如果数据用于下一个作业输入,要用可分片的
行式存储与列式存储
- 行式存储:所有数据都存储在一个块中;适合读所有数据的情况;如果只需要读其中几列,它会把所有数据都出来 [textfile]
- 列式存储:数据存在多个块中;适合读部分数据;读所有数据时,会发生数据重组 [orc,parquet]
大数据中,99%的情况都用列式存储