hive中Hql查詢時錯誤
hive> select count(*) from student_info;
Query ID = hadoop_20170127022626_4c071a70-f0d0-484a-8e29-dbd875356ef9
Total jobs = 1
Launching Job 1 out of 1
Number of reduce tasks determined at compile time: 1
In order to change the average load for a reducer (in bytes):
set hive.exec.reducers.bytes.per.reducer=<number>
In order to limit the maximum number of reducers:
set hive.exec.reducers.max=<number>
In order to set a constant number of reducers:
set mapred.reduce.tasks=<number>
Job running in-process (local Hadoop)
2017-01-27 02:26:20,750 Stage-1 map = 0%, reduce = 0%
2017-01-27 02:26:57,772 Stage-1 map = 100%, reduce = 100%
Ended Job = job_1485444043128_0007 with errors
Error during job, obtaining debugging information...
Examining task ID: task_1485444043128_0007_m_000000 (and more) from job job_1485444043128_0007
Unable to retrieve URL for Hadoop Task logs. Does not contain a valid host:port authority: local
Task with the most failures(4):
-----
Task ID:
task_1485444043128_0007_m_000000
-----
Diagnostic Messages for this Task:
Error: java.lang.NullPointerException
at org.apache.hadoop.hive.ql.io.HiveInputFormat.init(HiveInputFormat.java:270)
at org.apache.hadoop.hive.ql.io.HiveInputFormat.pushProjectionsAndFilters(HiveInputFormat.java:484)
at org.apache.hadoop.hive.ql.io.HiveInputFormat.pushProjectionsAndFilters(HiveInputFormat.java:477)
at org.apache.hadoop.hive.ql.io.CombineHiveInputFormat.getRecordReader(CombineHiveInputFormat.java:717)
at org.apache.hadoop.mapred.MapTask$TrackedRecordReader.<init>(MapTask.java:169)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:432)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
MapReduce Jobs Launched:
Stage-Stage-1: HDFS Read: 0 HDFS Write: 0 FAIL
Total MapReduce CPU Time Spent: 0 msec
實際上有兩個失敗:
1)啓動集羣由於某種原因失敗。建議嘗試定位失敗的任務日誌任務在集羣上。
2)自動檢索任務日誌JobTracker TaskLogServlet。這在MR2服務不存在,拋出異常(因爲mapred.job。跟蹤是未定義的,或者因爲它找不到TaskLogServlet mapred.job.tracker的服務的計算機上運行指向)。
解決辦法
1、 解決方法:修改hive-site.xml:
<property>
<name>mapreduce.jobtracker.address</name>
<value>ignorethis</value>
</property>
2、解決辦法
In the meantime I recommend doing the following if you need to run Hive on
MR2:
* Keep Hive happy by setting mapred.job.tracker to a bogus value.
* Disable task log retrieval by setting
hive.exec.show.job.failure.debug.info=false
解釋:
同時我建議做以下如果你需要運行hive
MR2:
*保持hive箱設置mapred.job快樂。追蹤到一個虛假的價值。
*禁用任務日誌檢索通過設置
hive.exec.show.job.failure.debug.info = false
意思:
<property>
<name>hive.exec.show.job.failure.debug.info</name>
<value>false</value>
</property>
3 配置hive時 注意這參數
<property>
<name>hive.exec.mode.local.auto</name>
<value>true</value>
</property>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.