hive的几种文件格式
2016-12-07 17:43
218 查看
Hive文件存储格式
1.textfile
textfile为默认格式
存储方式:行存储
磁盘开销大 数据解析开销大
压缩的text文件 hive无法进行合并和拆分
2.sequencefile
二进制文件,以<key,value>的形式序列化到文件中
存储方式:行存储
可分割 压缩
一般选择block压缩
优势是文件和Hadoop api中的mapfile是相互兼容的。
3.rcfile
存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
读记录尽量涉及到的block最少
读取需要的列只需要读取每个row group 的头部定义。
读取全量数据的操作 性能可能比sequencefile没有明显的优势
4.orc
存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
效率比rcfile高,是rcfile的改良版本
5.自定义格式
用户可以通过实现inputformat和 outputformat来自定义输入输出格式。
总结:
textfile 存储空间消耗比较大,并且压缩的text 无法分割和合并 查询的效率最低,可以直接存储,加载数据的速度最高
sequencefile 存储空间消耗最大,压缩的文件可以分割和合并 查询效率高,需要通过text文件转化来加载
rcfile 存储空间最小,查询的效率最高 ,需要通过text文件转化来加载,加载的速度最低
个人建议:text,seqfile能不用就尽量不要用 最好是选择orc
1.textfile
textfile为默认格式
存储方式:行存储
磁盘开销大 数据解析开销大
压缩的text文件 hive无法进行合并和拆分
2.sequencefile
二进制文件,以<key,value>的形式序列化到文件中
存储方式:行存储
可分割 压缩
一般选择block压缩
优势是文件和Hadoop api中的mapfile是相互兼容的。
3.rcfile
存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
读记录尽量涉及到的block最少
读取需要的列只需要读取每个row group 的头部定义。
读取全量数据的操作 性能可能比sequencefile没有明显的优势
4.orc
存储方式:数据按行分块 每块按照列存储
压缩快 快速列存取
效率比rcfile高,是rcfile的改良版本
5.自定义格式
用户可以通过实现inputformat和 outputformat来自定义输入输出格式。
总结:
textfile 存储空间消耗比较大,并且压缩的text 无法分割和合并 查询的效率最低,可以直接存储,加载数据的速度最高
sequencefile 存储空间消耗最大,压缩的文件可以分割和合并 查询效率高,需要通过text文件转化来加载
rcfile 存储空间最小,查询的效率最高 ,需要通过text文件转化来加载,加载的速度最低
个人建议:text,seqfile能不用就尽量不要用 最好是选择orc
相关文章推荐
- hive的几种文件格式
- hive的几种文件格式
- hive的几种文件格式
- 直接用SQL语句读取几种常见的文件格式中的数据
- Mathab中几种常见的文件格式(未完)
- Hive 数据类型 文件格式
- HIVE文件存储格式的测试比较
- 帮助文件的几种格式
- hive文件存储格式
- hive数据类型和文件格式
- hive文件存储格式
- 介绍几种方法将Excel格式的文件导入到JTable中
- Windows注册表HIVE文件格式解析
- Windows注册表HIVE文件格式解析
- hive文件存储格式
- ReactOS-Freeldr注册表HIVE文件格式
- 在Security编程中,有几种典型的密码交换信息文件格式
- ReactOS-Freeldr注册表HIVE文件格式2
- linux下几种不同的文件安装格式
- 基于HIVE文件格式的map reduce代码编写