Сбой соединения кустов с ошибкой MapredLocalTask (другие люди уже упоминали, что обходной путь должен использовать
set hive.auto.convert.join = false;
У меня работает, но интересно, если это фундаментальная проблема, так как я работаю на Windows 10). Было бы здорово получить здесь несколько просмотров.
Как уже говорилось, я могу обойтись с помощью
set hive.auto.convert.join = false;
Но на самом деле хотелось бы использовать функцию автоматического преобразования. Посмотрев вокруг, люди утверждают, что это может быть проблемой при создании процесса в Win32 ...
Я использую улей 2.3.4 против hadoop 3.2.0 (возможно, это не идеальная комбинация, но в других случаях это не так).
Запрос:
set hive.mapred.mode = nonstrict;
>select * from film fi inner join film_actor fa on (fi.film_id =
fa.film_id) where fi.film_id = 1;
Теперь, запустив это, я получаю:
2019-04-05 15:41:33,700 INFO mr.MapredLocalTask: Executing: C:\hadoop-3.2.0\bin\hadoop jar /C:/apache-hive-2.3.4-bin/lib/hive-exec-2.3.4.jar org.apache.hadoop.hive.ql.exec.mr.ExecDriver -localtask -plan file:/tmp/fdai0145/11acb838-07fc-4566-8fbf-79c2718db072/hive_2019-04-05_15-41-33_019_1135603159764858363-1/-local-10006/plan.xml -jobconffile file:/tmp/fdai0145/11acb838-07fc-4566-8fbf-79c2718db072/hive_2019-04-05_15-41-33_019_1135603159764858363-1/-local-10007/jobconf.xml
2019-04-05 15:41:33,702 ERROR mr.MapredLocalTask: Exception:
java.io.IOException: Cannot run program "C:\hadoop-3.2.0\bin\hadoop" (in directory "C:\Windows\System32"): CreateProcess error=193, %1 ist keine zulõssige Win32-Anwendung
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at java.lang.Runtime.exec(Runtime.java:620)
at java.lang.Runtime.exec(Runtime.java:450)
at org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask.executeInChildVM(MapredLocalTask.java:326)
at org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask.execute(MapredLocalTask.java:157)
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:199)
at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:100)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:2183)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1839)
at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1526)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1237)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1227)
at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:233)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:184)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:403)
at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:821)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:759)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:686)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.util.RunJar.run(RunJar.java:323)
at org.apache.hadoop.util.RunJar.main(RunJar.java:236)
Caused by: java.io.IOException: CreateProcess error=193, %1 ist keine zulõssige Win32-Anwendung
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
at java.lang.ProcessImpl.start(ProcessImpl.java:137)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 23 more
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask
2019-04-05 15:41:33,703 ERROR ql.Driver: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapredLocalTask
2019-04-05 15:41:33,706 INFO ql.Driver: Completed executing command(queryId=fdai0145_20190405154133_8294339b-cccf-4543-b151-412c31dc7aa3); Time taken: 0.133 seconds
2019-04-05 15:41:33,706 INFO exec.ListSinkOperator: Closing operator LIST_SINK[16]
2019-04-05 15:41:33,717 INFO conf.HiveConf: Using the default value passed in for log id: 11acb838-07fc-4566-8fbf-79c2718db072
2019-04-05 15:41:33,717 INFO session.SessionState: Resetting thread name to main