Используйте sqoop экспорт данных из куста в mysql ClassNotFoundException:<имя_таблицы>.class

Ракушка:

bin/sqoop export --bindir ./
 --connect jdbc:mysql://localhost:3306/dbtaobao 
 --username root --password chengnuo1314521. 
 --table user_log 
 --export-dir '/user/hive/warehouse/dbtaobao.db/inner_user_log' 
 --fields-terminated-by ',';

и я вижу jar и class dir: введите описание изображения здесь

Исключение:

2018-06-30 15:51:55,492 INFO mapreduce.AutoProgressMapper: Auto-progress thread is finished. keepGoing=false
2018-06-30 15:51:55,495 INFO mapred.LocalJobRunner: map task executor complete.
2018-06-30 15:51:55,496 WARN mapred.LocalJobRunner: job_local1522330308_0001
java.lang.Exception: java.io.IOException: java.lang.ClassNotFoundException: user_log
    at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:492)
    at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:552)
Caused by: java.io.IOException: java.lang.ClassNotFoundException: user_log
    at org.apache.sqoop.mapreduce.TextExportMapper.setup(TextExportMapper.java:70)
    at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
    at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64)
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:799)
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:347)
    at org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:271)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: user_log
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at org.apache.sqoop.mapreduce.TextExportMapper.setup(TextExportMapper.java:66)
    ... 10 more
...
2018-06-30 15:51:56,104 ERROR tool.ExportTool: Error during export: Export job failed!

Я не знаю, причина в том, что мой Mac, и я ищу эту проблему в течение 7 часов. Я обнаружил некоторую похожую проблему, потому что "Sqoop поместит сгенерированный исходный файл Java в ваш текущий рабочий каталог и скомпилированный файл.class и Файл.jar в /tmp/sqoop-/compile.", но это не моя проблема. Извините за мой плохой английский

1 ответ

Экспорт sqoop из таблиц улья может быть выполнен с использованием hcatalog. Пример команды -

bin/sqoop export 
--connect jdbc:mysql://localhost:3306/dbtaobaz 
--username db --password db --table user_log 
--hcatalog-table user_log 
--fields-terminated-by ',';
Другие вопросы по тегам