Fork me on GitHub

RCFILE格式存储到hive表

概述

RCFILE指的是 Record Columnar File,是一种高效压缩率的二进制文件格式,被用于在一个时间点操作多行的场景。RCFILEs是由二进制键/值对组成的平面文件,这点于SEQUENCEFILE非常相似。RCFILE以记录的形式存储表中的列,即列存储方式。它先分割行做水平分区,然后分割列做垂直分区。RCFILE把一行的元数据作为键,把行数据作为值,这种面向列的存储在执行数据分析时更高效。
RCFILE格式的输入输出包是:

1
2
org.apache.hadoop.hive.ql.io.RCFileInputFormat
org.apache.hadoop.hive.ql.io.RCFileOutputFormat

注意:本段文字来自《Hadoop构建数据仓库实践》书籍6.2.1章节

案例

建立RCFILE格式表

1
2
3
4
5
6
7
8
create table t_rcfile(   
c1 string,
c2 int,
c3 string,
c4 string)
row format delimited
fields terminated by '\t'
stored as rcfile;

向表中导入数据

注意:不能直接向RCFILE表插入数据,需要从其他表向ORCFILE表插入数据。

1
insert overwrite table t_rcfile  select * from t_textfile

查询

1
select * from t_rcfile

本文标题:RCFILE格式存储到hive表

文章作者:tang

发布时间:2018年07月28日 - 07:07

最后更新:2018年07月28日 - 08:07

原始链接:https://tgluon.github.io/2018/07/28/RCFILE格式存储到hive表/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

-------------本文结束感谢您的阅读-------------