您的位置:首页 > 其它

hive中创建子表并插入数据过程初始化MR报错解决方法

2017-06-24 19:54 621 查看
本文继成上一篇通过hive分析nginx日志文章,详情参考下面链接:

http://www.cnblogs.com/wcwen1990/p/7066230.html

接着来:

创建业务子表:

drop table if exists chavin.nginx_access_log_comm;

create table if not exists chavin.nginx_access_log_comm(

host STRING,

time STRING,

request STRING,

referer STRING

)

row format delimited fields terminated by '\t'

STORED AS orc tblproperties("orc.compress"="SNAPPY");

insert into chavin.nginx_access_log_comm select host,time,request,referer from chavin.nginx_access_log;

结果报错如下:

hive (default)> insert into chavin.nginx_access_log_comm select host,time,request,referer from chavin.nginx_access_log;

Query ID = root_20170623203838_35656104-9f46-4801-9dbd-1d5685de8187

Total jobs = 1

Launching Job 1 out of 1

Number of reduce tasks is set to 0 since there's no reduce operator

Starting Job = job_1498218985196_0009, Tracking URL = http://db01:8088/proxy/application_1498218985196_0009/

Kill Command = /opt/cloudera/parcels/CDH-5.9.2-1.cdh5.9.2.p0.3/lib/hadoop/bin/hadoop job -kill job_1498218985196_0009

Hadoop job information for Stage-1: number of mappers: 4; number of reducers: 0

2017-06-23 20:38:10,702 Stage-1 map = 0%, reduce = 0%

2017-06-23 20:38:32,584 Stage-1 map = 100%, reduce = 0%

Ended Job = job_1498218985196_0009 with errors

Error during job, obtaining debugging information...

Examining task ID: task_1498218985196_0009_m_000002 (and more) from job job_1498218985196_0009

Task with the most failures(4):

-----

Task ID:
task_1498218985196_0009_m_000002

URL:
http://db01:8088/taskdetails.jsp?jobid=job_1498218985196_0009&tipid=task_1498218985196_0009_m_000002

-----

Diagnostic Messages for this Task:

Error: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapTask.runOldMapper(MapTask.java:449)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:343)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)
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:1912)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)

Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 9 more

Caused by: java.lang.RuntimeException: Error in configuring object
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:109)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:75)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:133)
at org.apache.hadoop.mapred.MapRunner.configure(MapRunner.java:38)
... 14 more

Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:106)
... 17 more

Caused by: java.lang.RuntimeException: Map operator initialization failed
at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.configure(ExecMapper.java:147)
... 22 more

Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.ClassNotFoundException: Class org.apache.hadoop.hive.contrib.serde2.RegexSerDe not found
at org.apache.hadoop.hive.ql.exec.MapOperator.getConvertedOI(MapOperator.java:323)
at org.apache.hadoop.hive.ql.exec.MapOperator.setChildren(MapOperator.java:333)
at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.configure(ExecMapper.java:116)
... 22 more

Caused by: java.lang.ClassNotFoundException: Class org.apache.hadoop.hive.contrib.serde2.RegexSerDe not found
at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:2105)
at org.apache.hadoop.hive.ql.plan.PartitionDesc.getDeserializer(PartitionDesc.java:140)
at org.apache.hadoop.hive.ql.exec.MapOperator.getConvertedOI(MapOperator.java:297)
... 24 more

FAILED: Execution Error, return code 2 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask

MapReduce Jobs Launched:

Stage-Stage-1: Map: 4 HDFS Read: 0 HDFS Write: 0 FAIL

Total MapReduce CPU Time Spent: 0 msec

hive (default)>

从日志看,貌似执行mr因为缺少包而导致的故障。

解决办法:向hive命令行中添加hive-contrib-1.1.0-cdh5.9.2.jar包:

hive (chavin)> add jar /opt/cloudera/parcels/CDH/lib/hive/lib/hive-contrib-1.1.0-cdh5.9.2.jar;

Added [/opt/cloudera/parcels/CDH/lib/hive/lib/hive-contrib-1.1.0-cdh5.9.2.jar] to class path

Added resources: [/opt/cloudera/parcels/CDH/lib/hive/lib/hive-contrib-1.1.0-cdh5.9.2.jar]

再次运行加载数据命令:

hive (chavin)>insert into chavin.nginx_access_log_comm select host,time,request,referer from chavin.nginx_access_log;

Query ID = root_20170623203333_d244452b-9fae-4131-826a-428620219dbe

Total jobs = 1

Launching Job 1 out of 1

Number of reduce tasks is set to 0 since there's no reduce operator

Starting Job = job_1498218985196_0007, Tracking URL = http://db01:8088/proxy/application_1498218985196_0007/

Kill Command = /opt/cloudera/parcels/CDH-5.9.2-1.cdh5.9.2.p0.3/lib/hadoop/bin/hadoop job -kill job_1498218985196_0007

Hadoop job information for Stage-1: number of mappers: 4; number of reducers: 0

2017-06-23 20:33:59,442 Stage-1 map = 0%, reduce = 0%

2017-06-23 20:34:19,200 Stage-1 map = 13%, reduce = 0%, Cumulative CPU 50.65 sec

2017-06-23 20:34:20,239 Stage-1 map = 25%, reduce = 0%, Cumulative CPU 53.72 sec

2017-06-23 20:34:21,333 Stage-1 map = 42%, reduce = 0%, Cumulative CPU 56.75 sec

2017-06-23 20:34:22,368 Stage-1 map = 55%, reduce = 0%, Cumulative CPU 62.82 sec

2017-06-23 20:34:24,451 Stage-1 map = 63%, reduce = 0%, Cumulative CPU 68.45 sec

2017-06-23 20:34:28,984 Stage-1 map = 88%, reduce = 0%, Cumulative CPU 88.58 sec

2017-06-23 20:34:31,049 Stage-1 map = 100%, reduce = 0%, Cumulative CPU 91.97 sec

MapReduce Total cumulative CPU time: 1 minutes 31 seconds 970 msec

Ended Job = job_1498218985196_0007

Stage-4 is filtered out by condition resolver.

Stage-3 is selected by condition resolver.

Stage-5 is filtered out by condition resolver.

Starting Job = job_1498218985196_0008, Tracking URL = http://db01:8088/proxy/application_1498218985196_0008/

Kill Command = /opt/cloudera/parcels/CDH-5.9.2-1.cdh5.9.2.p0.3/lib/hadoop/bin/hadoop job -kill job_1498218985196_0008

Hadoop job information for Stage-3: number of mappers: 1; number of reducers: 0

2017-06-23 20:34:38,770 Stage-3 map = 0%, reduce = 0%

2017-06-23 20:34:44,973 Stage-3 map = 100%, reduce = 0%, Cumulative CPU 1.46 sec

MapReduce Total cumulative CPU time: 1 seconds 460 msec

Ended Job = job_1498218985196_0008

Loading data to table chavin.nginx_access_log_comm

Table chavin.nginx_access_log_comm stats: [numFiles=1, numRows=2538166, totalSize=6856514, rawDataSize=1598858202]

MapReduce Jobs Launched:

Stage-Stage-1: Map: 4 Cumulative CPU: 91.97 sec HDFS Read: 1000717778 HDFS Write: 6859275 SUCCESS

Stage-Stage-3: Map: 1 Cumulative CPU: 1.46 sec HDFS Read: 6989009 HDFS Write: 6856514 SUCCESS

Total MapReduce CPU Time Spent: 1 minutes 33 seconds 430 msec

OK

host time request referer

Time taken: 55.218 seconds

问题解决,但是该解决方法只能对本次Hive会话有用,Hive使用命令exit退出后再进入依旧会出现该问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐