虚拟列

-- 当 hive 产生了非预期的或 null 的时候,可以通过虚拟列进行诊断,判断哪行数据出现问题

INPUT__FILE__NAME     (输入文件名)map任务读入File的全路径

BLOCK__OFFSET__INSIDE__FILE     (块内偏移量) 如果是RCFile或者是SequenceFile块压缩格式文件则显示Block file Offset,也就是当前快在文件的第一个字偏移量,如果是TextFile,显示当前行的第一个字节在文件中的偏移量

ROW__OFFSET__INSIDE__BLOCK     ( 行偏移量,需要设置 hive.exec.rowoffset=true; 启用 ) RCFile和SequenceFile显示row number, textfile显示为0

如:表 ods.kesheng_sdk_json_ex

hive> select INPUT__FILE__NAME,BLOCK__OFFSET__INSIDE__FILE  from ods.kesheng_sdk_json_ex limit 5;
OK
hdfs://ns1/user/hadoop/ods/kesheng/20160811/00/kesheng.1470913703668.gz 0
hdfs://ns1/user/hadoop/ods/kesheng/20160811/00/kesheng.1470913703668.gz 894
hdfs://ns1/user/hadoop/ods/kesheng/20160811/00/kesheng.1470913703668.gz 1768
hdfs://ns1/user/hadoop/ods/kesheng/20160811/00/kesheng.1470913703668.gz 2627
hdfs://ns1/user/hadoop/ods/kesheng/20160811/00/kesheng.1470913703668.gz 5430
Time taken: 24.381 seconds, Fetched: 5 row(s)

由于我们公司的这个参数没有开启,所以ROW__OFFSET__INSIDE__BLOCK就没有啦

如果碰到有脏数据或者结果异常的时候,可以通过select这三个值来定位出错的原始文件和具体所在位置,很方便。

3.Hive中查看数据来源文件和具体位置方法的更多相关文章

  1. Hive中的数据倾斜

    Hive中的数据倾斜 hive 1. 什么是数据倾斜 mapreduce中,相同key的value都给一个reduce,如果个别key的数据过多,而其他key的较少,就会出现数据倾斜.通俗的说,就是我 ...

  2. SparkSQL读取Hive中的数据

    由于我Spark采用的是Cloudera公司的CDH,并且安装的时候是在线自动安装和部署的集群.最近在学习SparkSQL,看到SparkSQL on HIVE.下面主要是介绍一下如何通过SparkS ...

  3. 使用Sqoop,最终导入到hive中的数据和原数据库中数据不一致解决办法

            Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql.postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL , ...

  4. Hive扩展功能(三)--使用UDF函数将Hive中的数据插入MySQL中

    软件环境: linux系统: CentOS6.7 Hadoop版本: 2.6.5 zookeeper版本: 3.4.8 主机配置: 一共m1, m2, m3这五部机, 每部主机的用户名都为centos ...

  5. mysql如何查看自己数据库文件所在的位置

    mysql如何查看自己数据库文件所在的位置 C:\Program Files\MySQL\MySQL Server 5.5 mysql数据库 方法/步骤     第1步: 打开mysqml文件夹,显示 ...

  6. JAVA中比较两个文件夹不同的方法

    JAVA中比较两个文件夹不同的方法,可以通过两步来完成,首先遍历获取到文件夹下的所有文件夹和文件,再通过文件路径和文件的MD5值来判断文件的异同.具体例子如下: public class TestFo ...

  7. Linux下查看alert日志文件的两种方法

    --linux下查看alert日志文件的两种方法: --方法1: SQL> show parameter background_dump_dest; NAME TYPE VALUE ------ ...

  8. [Oracle]查看数据是否被移入 DataBuffer 的方法

    查看数据是否被移入 DataBuffer 的方法: 例如:表名为 tabxxx, 用户为U2: SQL> grant dba to u2 identified by u2;SQL> con ...

  9. HIVE中的数据怎么导出到hdfs或本地呢

    思路一:重定向 在我不知道工具 ,也不熟悉HIQL语法的情况下,没办法了,只有选择一个最简单粗暴的方法,重定向. 在shell中使用 hive -e 可以在shell中执行hive命令,hive -f ...

随机推荐

  1. SQL面试题-行列互换-if、【case when】

    http://www.cda.cn/view/21469.html tb_lemon_grade中,表中字段id,student_name,course,score分别表示成绩id,学生姓名,课程名称 ...

  2. iOS UI调试工具 -- UIDebuggingInformationOverlay

    英文原文: http://ryanipete.com/blog/ios/swift/objective-c/uidebugginginformationoverlay/ 无意中看到iOS自带调试工具 ...

  3. 内联元素inline-block空隙问题

    1.产生的原因 当我们使用"display:inline-block"把块集元素转换为内联元素时,每两个内联元素之间有一定的空隙,既不是margin也不是padding,最终发现是 ...

  4. thinkphp的select和find的区别(转)

    做普通PHP项目转thinkphp时,字段自动完整匹配,ajax时前台数据一直取不到,后发现是select和find返回数据集有差异,参考下面方法修改. $this->ajaxReturn($m ...

  5. Dedesql数据库类详解(二次开发必备教程)(转)

    http://www.dedecms.com/help/development/2009/1028/1076.html 织梦DedeCMS的二次开发不仅仅是会写写织梦的标签,会制作织梦的模板.很多时候 ...

  6. Oracle查询脚本优化

    发现生产环境的Oracle数据库cpu使用率上升超过70%,其中一条查询语句达到每秒调用40多次.现在我们来观摩下该语句: select t.id,t.level,t.policy, t.type,t ...

  7. Java [parms/options] range -b 100 -c 10 -i 100 -t 300 -s 180

    3 down vote Just run the command java -X and you will get ans of all_ C:\Users\Admin>java -X -Xmi ...

  8. 让memcached分布式

    memcached是应用最广的开源cache产品,它本身不提供分布式的解决方案,我猜想一方面它想尽量保持产品简单高效,另一方面cache的key-value的特性使得让memcached分布式起来比较 ...

  9. 实战 TestNG 监听器

    TestNG 是一个开源的自动化测试框架,其灵感来自 JUnit 和 NUnit,但它引入了一些新功能,使其功能更强大,更易于使用.TestNG 的设计目标是能够被用于进行各种类型测试:单元测试.功能 ...

  10. 1126 Eulerian Path

    题意:若图是连通图,且所有结点的度均为偶数,则称为Eulerian:若有且仅有两个结点的度为奇数,则称为semi-Eulerian.现给出一个图,要我们判断其是否为Eulerian,semi-Eule ...