Hive的“rowid”
玩过Oracle的同学一定知道rowid=objectid+file#+block#+row#这个概念,其实在Hive里也有“Rowid”. Hive里有虚拟列的概念,类似于Oracle里的伪列,其中三个虚拟列是:INPUT__FILE__NAME,BLOCK__OFFSET__INSIDE__FILE,ROW__OFFSET__INSIDE__BLOCK. INPUT__FILE__NAME:MAPREDUCE读取的文件的URI BLOCK__OFFSET__INSIDE__FILE:For 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://...