gpt4 book ai didi

mysql - sqoop 从 mysql 导入 hbase : java. lang.NoSuchMethodError : org. apache.hadoop.hbase.client.HBaseAdmin

转载 作者:行者123 更新时间:2023-11-29 03:17:49 25 4
gpt4 key购买 nike

我的系统环境:

Ubuntu 18.04 LTS  (64bit)
Hadoop 2.7.6
HBase 2.0.1
Sqoop 1.4.7
openjdk version 1.8.0_171

启动hadoop服务和hbase后,我尝试将表从 mysql 导入到 hbase:

/usr/local/sqoop/bin/sqoop  import 
--connect jdbc:mysql://localhost:3306/TESTDB
--table mytable
--username <username>
--hbase-table hbmytable
--column-family hbmytable_cf
--split-by ID
--hbase-create-table
--password ########

但是,导入失败并显示以下错误消息:

......
18/08/08 18:41:28 INFO mapreduce.ImportJobBase: Beginning import of mytable
18/08/08 18:41:28 INFO Configuration.deprecation: mapred.jar is deprecated. Instead, use mapreduce.job.jar
18/08/08 18:41:28 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.hbase.client.HBaseAdmin.<init>(Lorg/apache/hadoop/conf/Configuration;)V
at org.apache.sqoop.mapreduce.HBaseImportJob.jobSetup(HBaseImportJob.java:163)
at org.apache.sqoop.mapreduce.ImportJobBase.runImport(ImportJobBase.java:268)
at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:692)
at org.apache.sqoop.manager.MySQLManager.importTable(MySQLManager.java:127)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:520)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:628)
at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:234)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:243)
at org.apache.sqoop.Sqoop.main(Sqoop.java:252)

有什么解决方法吗?

最佳答案

我在从 MySQL 导入数据到 Hbase 时也遇到了这个异常。

似乎依赖冲突。

我正在使用-

Hadoop - 3.2.0
Hbase - 2.2.0
Sqoop- 1.4.7

我已将下面提到的 jars 手动添加到 SQOOP_HOME/lib -

1: hbase-client-1.2.0.jar
2: hbase-common-1.2.0.jar
3: hbase-mapreduce-2.2.0.jar
4: hbase-protocol-1.2.0.jar
5: hbase-server-1.2.0.jar
6: hbase-zookeeper-2.2.0.jar
7: protobuf-java-2.5.0.jar

并且 Hbase 导入工作正常。

** 我正在使用 Hbase 2.2.0,但我仍然必须使用所有 Hbase-1.2.0 jar。

关于mysql - sqoop 从 mysql 导入 hbase : java. lang.NoSuchMethodError : org. apache.hadoop.hbase.client.HBaseAdmin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51755213/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com