Hive的“rowid”

简介:

玩过Oracle的同学一定知道rowid=objectid+file#+block#+row#这个概念,其实在Hive里也有“Rowid.

Hive里有虚拟列的概念,类似于Oracle里的伪列,其中三个虚拟列是:INPUT__FILE__NAMEBLOCK__OFFSET__INSIDE__FILEROW__OFFSET__INSIDE__BLOCK.

INPUT__FILE__NAME:MAPREDUCE读取的文件的URI

BLOCK__OFFSET__INSIDE__FILEFor blockCompressed files,表示RCFile Block orSequenceFile 当前块在文件中的偏移量;For non-block-compressedfiles, 表示当前行的偏移量.

ROW__OFFSET__INSIDE__BLOCK:当打开参数hive.exec.rowoffset(默认关闭)时会开启这个虚拟列特性,For non-block-compressed files这个值一直为0,否则表示行号.



本文转自MIKE老毕 51CTO博客,原文链接:http://blog.51cto.com/boylook/1336763,如需转载请自行联系原作者



相关文章
|
6月前
|
SQL JSON 数据库
Hive【Hive(一)DDL】
Hive【Hive(一)DDL】
|
6月前
|
SQL 分布式计算 Serverless
Hive【Hive(六)窗口函数】
Hive【Hive(六)窗口函数】
|
SQL HIVE
53 Hive的SELECT操作
53 Hive的SELECT操作
57 0
|
6月前
|
SQL HIVE
Hive 行列转换
使用`lateral view + explode`或`inline`可将列转换为行,实现数据降维。例如,`explode(array|map)`用于单列转多行,`inline(array_struct)`将结构体数组拆分成多行。同样,通过条件聚合可实现行转列,常用于多行数据聚合到单行中,如示例所示的按月统计订单金额。
124 1
Hive 行列转换
|
6月前
|
SQL 存储 分布式数据库
【Hive】Hive有索引吗?
【4月更文挑战第14天】【Hive】Hive有索引吗?
|
6月前
|
SQL HIVE
Hive 建表以及使用
Hive 建表以及使用
91 0
|
6月前
|
SQL HIVE
Hive group by 数据倾斜问题处理
Hive group by 数据倾斜问题处理
89 0
|
6月前
|
SQL 分布式计算 Java
Hive【Hive(三)查询语句】
Hive【Hive(三)查询语句】
|
6月前
|
SQL 分布式计算 Hadoop
Hive【Hive(二)DML】
Hive【Hive(二)DML】
|
SQL 存储 分布式数据库
hive中的索引
hive中的索引
308 0