最近在做hive练习题时使用hive查询报错
Hadoop job information for Stage-3: number of mappers: 0; number of reducers: 0
2021-05-18 19:23:54,652 Stage-3 map = 0%, reduce = 0%
Ended Job = job_1621330130219_0008 with errors
Error during job, obtaining debugging information...
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
MapReduce Jobs Launched:
Stage-Stage-3: HDFS Read: 0 HDFS Write: 0 FAIL
Total MapReduce CPU Time Spent: 0 msec**
首先检查了sql语句以及hive配置都没有问题,
1.查看虚拟机的内存
以为是内存小了,后又重新增加了内存后还是报同样的错
2.那么猜测可能原因是集群中各个节点的时间不同步,查看各节点的时间发现不同步,随后修改同步后,再次运行hql语句然而还是报错???咦,这就奇怪了?
查看hive日志(安装hive时没有设置过日志地址的话,会默认在系统的tmp目录中)使用root用户时,在/tmp/root/ 目录下),查看最新日志:
2021-05-21 14:35:30,190 INFO [main]: ql.Driver (Driver.java:execute(1328)) - Starting command(queryId=root_20210521143529_36beccba-cbb9-40c3-ad43-10d3c73c8a03): select sc1.sid,sc1.score score1,sc2.score score2
from sc sc1
join sc sc2 on sc1.sid=sc2.sid
where sc1.cid = 1 and sc2.cid = 2 and sc1.score>sc2.score
2021-05-21 14:35:30,190 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - Query ID = root_20210521143529_36beccba-cbb9-40c3-ad43-10d3c73c8a03
2021-05-21 14:35:30,190 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - Total jobs = 1
2021-05-21 14:35:30,191 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=TimeToSubmit start=1621578929684 end=1621578930191 duration=507 from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:35:30,191 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=runTasks from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:35:30,191 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=task.MAPREDLOCAL.Stage-4 from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:35:30,196 INFO [main]: ql.Driver (Driver.java:launchTask(1651)) - Starting task [Stage-4:MAPREDLOCAL] in serial mode
2021-05-21 14:35:30,201 INFO [main]: mr.MapredLocalTask (MapredLocalTask.java:executeInChildVM(157)) - Generating plan file file:/usr/soft/hive/hive-1.2.1/tmp/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-local-10005/plan.xml
2021-05-21 14:35:30,216 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=serializePlan from=org.apache.hadoop.hive.ql.exec.Utilities>
2021-05-21 14:35:30,216 INFO [main]: exec.Utilities (Utilities.java:serializePlan(938)) - Serializing MapredLocalWork via kryo
2021-05-21 14:35:30,235 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=serializePlan start=1621578930216 end=1621578930235 duration=19 from=org.apache.hadoop.hive.ql.exec.Utilities>
2021-05-21 14:35:30,439 INFO [main]: mr.MapredLocalTask (MapredLocalTask.java:executeInChildVM(286)) - Executing: /usr/soft/hadoop/hadoop-2.6.5/bin/hadoop jar /usr/soft/hive/hive-1.2.1/lib/hive-exec-1.2.1.jar org.apache.hadoop.hive.ql.exec.mr.ExecDriver -localtask -plan file:/usr/soft/hive/hive-1.2.1/tmp/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-local-10005/plan.xml -jobconffile file:/usr/soft/hive/hive-1.2.1/tmp/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-local-10006/jobconf.xml
2021-05-21 14:35:38,142 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - Execution completed successfully
2021-05-21 14:35:38,142 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - MapredLocal task succeeded
2021-05-21 14:35:38,142 INFO [main]: mr.MapredLocalTask (MapredLocalTask.java:executeInChildVM(311)) - Execution completed successfully
2021-05-21 14:35:38,142 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=task.MAPRED.Stage-3 from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:35:38,143 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - Launching Job 1 out of 1
2021-05-21 14:35:38,143 INFO [main]: ql.Driver (Driver.java:launchTask(1651)) - Starting task [Stage-3:MAPRED] in serial mode
2021-05-21 14:35:38,147 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - Number of reduce tasks is set to 0 since there's no reduce operator
2021-05-21 14:35:38,147 INFO [main]: ql.Context (Context.java:getMRScratchDir(330)) - New scratch dir is hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1
2021-05-21 14:35:38,153 INFO [main]: mr.ExecDriver (ExecDriver.java:execute(288)) - Using org.apache.hadoop.hive.ql.io.CombineHiveInputFormat
2021-05-21 14:35:38,207 INFO [main]: mr.ExecDriver (ExecDriver.java:execute(356)) - Archive 1 hash table files to file:/usr/soft/hive/hive-1.2.1/tmp/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-local-10003/HashTable-Stage-3/Stage-3.tar.gz
2021-05-21 14:35:38,228 INFO [main]: mr.ExecDriver (ExecDriver.java:execute(363)) - Upload 1 archive file fromfile:/usr/soft/hive/hive-1.2.1/tmp/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-local-10003/HashTable-Stage-3/Stage-3.tar.gz to: hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10004/HashTable-Stage-3/Stage-3.tar.gz
2021-05-21 14:35:38,228 INFO [main]: mr.ExecDriver (ExecDriver.java:execute(368)) - Add 1 archive file to distributed cache. Archive file: hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10004/HashTable-Stage-3/Stage-3.tar.gz
2021-05-21 14:35:38,228 INFO [main]: exec.Utilities (Utilities.java:getInputPaths(3397)) - Processing alias sc2
2021-05-21 14:35:38,228 INFO [main]: exec.Utilities (Utilities.java:getInputPaths(3414)) - Adding input file hdfs://master18402320:9000/user/hive/warehouse/db_hive_test01.db/sc
2021-05-21 14:35:38,228 INFO [main]: exec.Utilities (Utilities.java:isEmptyPath(2694)) - Content Summary hdfs://master18402320:9000/user/hive/warehouse/db_hive_test01.db/sclength: 162 num files: 1 num directories: 1
2021-05-21 14:35:38,229 INFO [main]: ql.Context (Context.java:getMRScratchDir(330)) - New scratch dir is hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1
2021-05-21 14:35:38,235 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=serializePlan from=org.apache.hadoop.hive.ql.exec.Utilities>
2021-05-21 14:35:38,236 INFO [main]: exec.Utilities (Utilities.java:serializePlan(938)) - Serializing MapWork via kryo
2021-05-21 14:35:38,281 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=serializePlan start=1621578938235 end=1621578938281 duration=46 from=org.apache.hadoop.hive.ql.exec.Utilities>
2021-05-21 14:35:38,282 ERROR [main]: mr.ExecDriver (ExecDriver.java:execute(400)) - yarn
2021-05-21 14:35:38,324 INFO [main]: client.RMProxy (RMProxy.java:createRMProxy(98)) - Connecting to ResourceManager at master18402320/192.168.29.6:8032
2021-05-21 14:35:38,374 INFO [main]: client.RMProxy (RMProxy.java:createRMProxy(98)) - Connecting to ResourceManager at master18402320/192.168.29.6:8032
2021-05-21 14:35:38,377 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(390)) - PLAN PATH = hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/map.xml
2021-05-21 14:35:38,377 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(390)) - PLAN PATH = hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/reduce.xml
2021-05-21 14:35:38,377 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(400)) - ***************non-local mode***************
2021-05-21 14:35:38,377 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(404)) - local path = hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/reduce.xml
2021-05-21 14:35:38,377 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(416)) - Open file to read in plan: hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/reduce.xml
2021-05-21 14:35:38,402 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(456)) - File not found: File does not exist: /tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/reduce.xml
at org.apache.hadoop.hdfs.server.namenode.INodeFile.valueOf(INodeFile.java:66)
at org.apache.hadoop.hdfs.server.namenode.INodeFile.valueOf(INodeFile.java:56)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getBlockLocationsUpdateTimes(FSNamesystem.java:1893)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getBlockLocationsInt(FSNamesystem.java:1834)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getBlockLocations(FSNamesystem.java:1814)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getBlockLocations(FSNamesystem.java:1786)
at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.getBlockLocations(NameNodeRpcServer.java:552)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.getBlockLocations(ClientNamenodeProtocolServerSideTranslatorPB.java:362)
at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:619)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:975)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2040)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2036)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:422)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1692)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2034)
2021-05-21 14:35:38,402 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(457)) - No plan file found: hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/reduce.xml
2021-05-21 14:35:38,414 WARN [main]: mapreduce.JobResourceUploader (JobResourceUploader.java:uploadFiles(64)) - Hadoop command-line option parsing not performed. Implement the Tool interface and execute your application with ToolRunner to remedy this.
2021-05-21 14:35:38,796 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=getSplits from=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat>
2021-05-21 14:35:38,796 INFO [main]: exec.Utilities (Utilities.java:getBaseWork(390)) - PLAN PATH = hdfs://master18402320:9000/tmp/hive/root/a3188886-f1af-440a-8eae-1136908ec0be/hive_2021-05-21_14-35-29_689_3311147117394005582-1/-mr-10008/2f8a9cc2-16cf-4426-8a9c-a175b89eaa53/map.xml
2021-05-21 14:35:38,796 INFO [main]: io.CombineHiveInputFormat (CombineHiveInputFormat.java:getSplits(517)) - Total number of paths: 1, launching 1 threads to check non-combinable ones.
2021-05-21 14:35:38,803 INFO [main]: io.CombineHiveInputFormat (CombineHiveInputFormat.java:getCombineSplits(439)) - CombineHiveInputSplit creating pool for hdfs://master18402320:9000/user/hive/warehouse/db_hive_test01.db/sc; using filter path hdfs://master18402320:9000/user/hive/warehouse/db_hive_test01.db/sc
2021-05-21 14:35:38,810 INFO [main]: input.FileInputFormat (FileInputFormat.java:listStatus(281)) - Total input paths to process : 1
2021-05-21 14:35:38,810 INFO [main]: input.CombineFileInputFormat (CombineFileInputFormat.java:createSplits(413)) - DEBUG: Terminated node allocation with : CompletedNodes: 1, size left: 0
2021-05-21 14:35:38,811 INFO [main]: io.CombineHiveInputFormat (CombineHiveInputFormat.java:getCombineSplits(494)) - number of splits 1
2021-05-21 14:35:38,813 INFO [main]: io.CombineHiveInputFormat (CombineHiveInputFormat.java:getSplits(587)) - Number of all splits 1
2021-05-21 14:35:38,814 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=getSplits start=1621578938796 end=1621578938814 duration=18 from=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat>
2021-05-21 14:35:38,863 INFO [main]: mapreduce.JobSubmitter (JobSubmitter.java:submitJobInternal(199)) - number of splits:1
2021-05-21 14:35:38,898 INFO [main]: mapreduce.JobSubmitter (JobSubmitter.java:printTokens(288)) - Submitting tokens for job: job_1621577750352_0002
2021-05-21 14:35:38,931 INFO [main]: impl.YarnClientImpl (YarnClientImpl.java:submitApplication(251)) - Submitted application application_1621577750352_0002
2021-05-21 14:35:38,934 INFO [main]: mapreduce.Job (Job.java:submit(1301)) - The url to track the job: http://master18402320:8088/proxy/application_1621577750352_0002/
2021-05-21 14:35:38,935 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - Starting Job = job_1621577750352_0002, Tracking URL = http://master18402320:8088/proxy/application_1621577750352_0002/
2021-05-21 14:35:38,935 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - Kill Command = /usr/soft/hadoop/hadoop-2.6.5/bin/hadoop job -kill job_1621577750352_0002
2021-05-21 14:35:50,451 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - Hadoop job information for Stage-3: number of mappers: 1; number of reducers: 0
2021-05-21 14:35:50,554 WARN [main]: mapreduce.Counters (AbstractCounters.java:getGroup(234)) - Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
2021-05-21 14:35:50,554 INFO [main]: exec.Task (SessionState.java:printInfo(951)) - 2021-05-21 14:35:50,553 Stage-3 map = 0%, reduce = 0%
2021-05-21 14:36:06,488 WARN [main]: mapreduce.Counters (AbstractCounters.java:getGroup(234)) - Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
2021-05-21 14:36:06,490 ERROR [main]: exec.Task (SessionState.java:printError(960)) - Ended Job = job_1621577750352_0002 with errors
2021-05-21 14:36:06,491 ERROR [Thread-72]: exec.Task (SessionState.java:printError(960)) - Error during job, obtaining debugging information...
2021-05-21 14:36:06,541 INFO [main]: impl.YarnClientImpl (YarnClientImpl.java:killApplication(364)) - Killed application application_1621577750352_0002
2021-05-21 14:36:06,543 ERROR [main]: ql.Driver (SessionState.java:printError(960)) - FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
2021-05-21 14:36:06,543 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=Driver.execute start=1621578930190 end=1621578966543 duration=36353 from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:36:06,543 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - MapReduce Jobs Launched:
2021-05-21 14:36:06,544 WARN [main]: mapreduce.Counters (AbstractCounters.java:getGroup(234)) - Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
2021-05-21 14:36:06,544 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - Stage-Stage-3: Map: 1 HDFS Read: 0 HDFS Write: 0 FAIL
2021-05-21 14:36:06,544 INFO [main]: ql.Driver (SessionState.java:printInfo(951)) - Total MapReduce CPU Time Spent: 0 msec
2021-05-21 14:36:06,545 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=releaseLocks from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:36:06,545 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=releaseLocks start=1621578966545 end=1621578966545 duration=0 from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:36:06,545 INFO [main]: exec.ListSinkOperator (Operator.java:close(612)) - 15 finished. closing...
2021-05-21 14:36:06,545 INFO [main]: exec.ListSinkOperator (Operator.java:close(634)) - 15 Close done
2021-05-21 14:36:06,577 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogBegin(121)) - <PERFLOG method=releaseLocks from=org.apache.hadoop.hive.ql.Driver>
2021-05-21 14:36:06,577 INFO [main]: log.PerfLogger (PerfLogger.java:PerfLogEnd(148)) - </PERFLOG method=releaseLocks start=1621578966577 end=1621578966577 duration=0 from=org.apache.hadoop.hive.ql.Driver>
查看日志发现是mapreduce没有正常运行,那么又去检查了一遍Hadoop集群搭建的整个配置文件,没有找到错误,所有的配制都是正确的。奇怪,那这是什么神马问题???随后就去跑一下自带的jar包看看
./bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar pi 3 10
果然也跑不起来。那这就奇怪了哈,随后检查hadoop yarn 上各个节点的applicationID日志 发现是无法识别我的节点名,原来是因为我的节点名里面有一个下划线,系统无法识别导致的。修改过后,就正常的跑起来了。hive查询语句也可以跑起来了。