Hive的文件存储格式包括:textfile、sequence、rcfile、orc、parquet
textfile
(简介)默认的文件格式,基于行存储。建表时不指定存储格式即为textfile,导入数据时把数据文件拷贝到hdfs不进行处理。
(优点)便于和其他工具(pig,grep,sed,awk)共享数据,便于查看和编辑,加载较快。
(缺点)耗费存储空间,I/O性能较低;Hive不进行数据切分合并,不能进行并行操作,查询效率低。
(应用场景)适用于小型查询,查看具体数据内容的测试操作。
sequence
(简介)含有键值对的二进制文件,行存储。
(优点)可压缩、可分割,优化磁盘利用率和I/O;可并行操作数据,查询效率高。
(缺点)存储空间消耗最大;对于hadoop生态系统之外的工具不适用,需要通过text文件转化加载。
(应用场景)适用于数据量较小、大部分列的查询。
rcfile
(简介)行列式存储。先将数据按行分块,同一个record 在一个块上,避免读一条记录需要读多个 block;然后块数据列式存储。
(优点)可压缩,高效的列存取;查询效率较高。
(缺点)加载时性能消耗较大,需要通过 text 文件转化加载;读取全量数据性能低。
orc
(简介)优化后的 rcfile,行列式存储。
(优缺点)优缺点与rcfile类似,查询效率较高。
(应用场景)适用于hive中大型的存储、查询。
在2021到2023这三年的工作中,遇到最多的表的存储格式,但一般都是开启事务,即torc表。
parquet
(简介)列存储
(优点)更高效的压缩和编码;不与任何数据处理技术绑定,可用于多种数据处理框架(hive、Impala,Presto查询引擎;MR,Spark计算框架;Avro,Thrift,PB数据模型)。
(缺点)不支持 update,insert,delete,ACID
(应用场景)适用于字段数非常多,无更新,只取部分列的查询。
END
标签:存储,简介,Hive,查询,格式,rcfile From: https://www.cnblogs.com/houhuilinblogs/p/18056001