用户工具


创建一个表时可以指定文件存储格式,默认格式是textfile,还有其他sequencefile,rcfile格式

textfile

  • textfile为默认格式
  • 存储方式:行存储
  • 磁盘开销大 数据解析开销大
  • 压缩的text文件 hive无法进行合并和拆分

sequencefile

  • 二进制文件,以<key,value>的形式序列化到文件中
  • 存储方式:行存储
  • 可分割 压缩
  • 一般选择block压缩
  • 优势是文件和hadoop api中的mapfile是相互兼容的。

rcfile

  • 存储方式:数据按行分块 每块按照列存储
  • 压缩快 快速列存取
  • 读记录尽量涉及到的block最少
  • 读取需要的列只需要读取每个row group 的头部定义。
  • 读取全量数据的操作 性能可能比sequencefile没有明显的优势

当只访问某个列时,速度非常快,亲测