在使用sqoop命令将MySQL数据库的数据表数据迁移到Hive数据仓库时,发生了错误。
使用了如下命令(命令1):
sqoop import -connect jdbc:mysql://master:3306/*** --username **** --password **** --query "select id,referrer,from_url,landing_page_url,url_title,platform_description,other_params,history from web_chat_text_ems_2019_07 where 1=1 and $CONDITIONS" --hcatalog-database itcast_ods --hcatalog-table web_chat_text_ems_ods -m 10 --split-by id
错误信息如下(部分):
2023-01-09 07:06:31,280 INFO metastore.HMSHandler: Created RawStore: org.apache.hadoop.hive.metastore.ObjectStore@2ba31591
2023-01-09 07:07:13,181 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000000_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:13,301 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000009_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:13,311 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000003_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:13,343 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000006_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:21,192 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000005_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:21,211 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000002_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:21,218 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000008_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:27,629 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000001_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:27,644 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000007_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
2023-01-09 07:07:27,683 INFO mapreduce.Job: Task Id : attempt_1673201919048_0006_m_000004_0, Status : FAILED
Error: java.lang.ClassCastException: java.util.LinkedList cannot be cast to org.apache.hive.hcatalog.mapreduce.InputJobInfo
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportHelper.<init>(SqoopHCatImportHelper.java:88)
at org.apache.sqoop.mapreduce.hcat.SqoopHCatImportMapper.setup(SqoopHCatImportMapper.java:45)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:800)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:348)
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:178)
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:1878)
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:172)
我所使用的软件的版本信息如下:
Hadoop 3.3.1 ,4.0.0-alpha-2,mysql8.0,sqoob 1.4.7,java 1.8
尝试增加了HCAT_HOME,将$HIVE_HOME/lib中的hive-common-4.0.0-alpha-2.jar 拷贝到$SQOOP_HOME/lib中,没有解决问题。
请问以上错误发生的原因, 及如何解决