hive 学习笔记

本文介绍Hive中表的存储格式,包括如何创建使用不同存储格式的表,如TEXTFILE与ORC,并演示了数据加载过程。此外还详细解释了HIVE虚列的用途,包括INPUT__FILE__NAME、BLOCK__OFFSET__INSIDE__FILE及ROW__OFFSET__INSIDE__BLOCK,这些虚列可以帮助理解数据处理过程中文件和块级别的细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、hive表格默认存储使用ORC文件格式,建表可以指定不使用该文件格式

CREATE TABLE test_details_txt( visit_id INT, store_id SMALLINT) STORED AS TEXTFILE;
CREATE TABLE test_details_orc( visit_id INT, store_id SMALLINT) STORED AS ORC;

-- Load into Text table
LOAD DATA LOCAL INPATH '/home/user/test_details.txt' INTO TABLE test_details_txt;

-- Copy to ORC table
INSERT INTO TABLE test_details_orc SELECT * FROM test_details_txt;



2、HIVE中考虑到了这点,在Virtual Column虚列中可以指定三个静态列:
  1. INPUT__FILE__NAME map任务读入File的全路径
  2. BLOCK__OFFSET__INSIDE__FILE 如果是RCFile或者是SequenceFile块压缩格式文件则显示Block file Offset,也就是当前快在文件的第一个字偏移量,如果是TextFile,显示当前行的第一个字节在文件中的偏移量
  3. ROW__OFFSET__INSIDE__BLOCK RCFile和SequenceFile显示row number, textfile显示为0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值