Hadoop Hive数据格式

文件格式

   txt  面向行  可分割并行计算  非原  查看简单编辑简单  无压缩、占磁盘大、IO压力大

   seq  面向行   可分割并行计算  原生  二进制kv存储,支持行压缩和块压缩  压缩    生产环境,常用于mr的中间数据存储

   rc  面向列  可分割并行计算  原生  行列式文件、减少不必要的IO、提高IO效率  自带压缩、省空间    绝大多数场景下均可以使用  先按行分割,再按列存储

   orc  面向列   可分割并行计算  非原  rc的升级版,兼具了rcfile优点,进一步提高、读取存储效率、新数据类型支持  每一项都不是最高  学习生产使用

 

压缩格式

  lzo : 可分割计算  非原  压缩解压缩速度,合理的压缩率  压缩率比gzip低,非原生、需要native安装  单个文件越大,lzo 优点越明显,压缩完成后>=200M 为宜

  bz2: 可分割计算  原生  高压缩率超过gzip,不需native安装  压缩/解压速率慢  处理速度要求不高、压缩率要求高的情况

  gzip : 不可分割计算  原生  压缩解压缩速度,原生/native都支持,使用方便  不可切分,对cpu 要求较高  压缩完成后<=128M 的文件适宜

  snappy: 不可分割计算  非原  高压缩/ 解压速度,合理的压缩率  压缩率比gzip低,非原生、需要native安装  适合作为map->reduce或是 job 数据流中间的数据传输格式

解压缩命令  只作常用命令参数介绍,其余参数需要时可在探索

lzo          需native安装lzo库

lzop -v test          压缩

lzop -d test.lzo          解压

bzip2 bunzip2

  bzip2 test        压缩

  bzip2 -d all.bz2  解压

  bunzip2 all.bz2   解压

gzip gunzip

  gzip test             压缩

  gzip -d all.gz        解压

  gunzip all.gz         解压

snappy

暂无命令行测试方法,使用hadoop安装snappy库直接设置hive表存储格式

zip unzip

  zip all.zip *.jpg 压缩

  unzip all.zip     解压

  unzip all.zip   -D   /home/zx    解压到指定目录

compress uncompress

  uncompress all.Z  解压

rar unrar    --rar for linux  native下载安装

  unrar e all.rar  解压

  

ls weibo_zip/*.zip | xargs -n1 unzip -d ~/pro04 --批量解压缩

 

tar   以下全是关于tar命令的说明,可详细探索,

  tar -xf all.tar

  tar -czf all.tar.gz *.jpg  生成tar包,用gzip压缩

  tar -cjf all.tar.bz2 *.jpg  生成tar包,用bz2压缩

  tar -cZf all.tar.Z *.jpg  生成tar包,用compress压缩

 

tar -xzf all.tar.gz 

  tar -xjf all.tar.bz2

  tar -xZf all.tar.Z

 

tar 参数

-c: 建立压缩档案

-x:解压

-t:查看内容

-r:向压缩归档文件末尾追加文件

-u:更新原压缩包中的文件

 

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的

-j:有bz2属性的

-Z:有compress属性的

-v:显示所有过程

-O:将文件解开到标准输出

 

下面的参数-f是必须的

 

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。