zoukankan      html  css  js  c++  java
  • select

     

     

     

     为什么成功了得不到数据结果,怀疑输入文件数据有问题,唉····

    今天又尝试了很多回,总结就是用.bz2数据文件时,虽然会运行成功,但是生成的输出文件没有内容,而我也发现map input  records=0(不正常啊),而用.txt和.csv数据文件输入时,运行过程就会有如下错误,作业因为任务失败而失败。

     后面终于在网上查找解决办法时,脑瓜子灵光了,去查看日志文件,果然,我马上懂了自己错的原因:我打包jar的时候不是打包的整个项目,而是只打包了一个类,而这个类调用了其他类中的方法,这里这个其他类指的就是AirlineDataUtils,所以运行就会有错。

     020-07-05 19:03:08,080 FATAL [uber-SubtaskRunner] org.apache.hadoop.mapred.LocalContainerLauncher: Error running local (uberized) 'child' : java.lang.NoClassDefFoundError: org/apress/prohadoop/utils/AirlineDataUtils
        at org.apress.prohadoop.c5.SelectClauseMRJob$SelectClauseMapper.map(SelectClauseMRJob.java:29)
        at org.apress.prohadoop.c5.SelectClauseMRJob$SelectClauseMapper.map(SelectClauseMRJob.java:1)
        at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)
        at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:793)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
        at org.apache.hadoop.mapred.LocalContainerLauncher$EventHandler.runSubtask(LocalContainerLauncher.java:436)
        at org.apache.hadoop.mapred.LocalContainerLauncher$EventHandler.runTask(LocalContainerLauncher.java:350)
        at org.apache.hadoop.mapred.LocalContainerLauncher$EventHandler.access$200(LocalContainerLauncher.java:211)
        at org.apache.hadoop.mapred.LocalContainerLauncher$EventHandler$1.run(LocalContainerLauncher.java:254)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
    Caused by: java.lang.ClassNotFoundException: org.apress.prohadoop.utils.AirlineDataUtils
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        ... 14 more

    这是select运行成功后,Map input records终于不再是0了

     查看生成的输出文件,下面是最后几行

  • 相关阅读:
    转-mysql中int、bigint、smallint 和 tinyint的区别详细介绍
    转-通用接口测试用例设计
    转-接口测试
    剑指offer 面试题43 n个骰子的点数 DP
    HYSBZ 1503 郁闷的出纳员 伸展树
    HYSBZ 1588 营业额统计 平衡二叉树模板
    剑指offer 面试题35 第一个只出现一次的字符
    LightOJ 1030 Discovering Gold 期望
    LightOJ 1027 A Dangerous Maze 概率期望
    剑指offer 面试题34 丑数
  • 原文地址:https://www.cnblogs.com/y-c-m520/p/13227835.html
Copyright © 2011-2022 走看看