概述
RCFILE指的是 Record Columnar File,是一种高效压缩率的二进制文件格式,被用于在一个时间点操作多行的场景。RCFILEs是由二进制键/值对组成的平面文件,这点于SEQUENCEFILE非常相似。RCFILE以记录的形式存储表中的列,即列存储方式。它先分割行做水平分区,然后分割列做垂直分区。RCFILE把一行的元数据作为键,把行数据作为值,这种面向列的存储在执行数据分析时更高效。
RCFILE格式的输入输出包是:1
2org.apache.hadoop.hive.ql.io.RCFileInputFormat
org.apache.hadoop.hive.ql.io.RCFileOutputFormat
注意:
本段文字来自《Hadoop构建数据仓库实践》书籍6.2.1章节
案例
建立RCFILE格式表
1 | create table t_rcfile( |
向表中导入数据
注意
:不能直接向RCFILE表插入数据,需要从其他表向ORCFILE表插入数据。1
insert overwrite table t_rcfile select * from t_textfile
查询
1 | select * from t_rcfile |