Ошибка применения политики авторизации к конфигурации куста: не удалось создать каталог ${system:java.io.tmpdir}\${hive.session.id}_resources

Я запускаю Hadoop 3.0.0-alpha1 в Windows и добавляю к нему Hive 2.1.1. При попытке открыть улей билайн командой hive получаю ошибку:

Error applying authorization policy on hive configuration: 
Couldn't create directory ${system:java.io.tmpdir}\${hive.session.id}_resources

Что не так?

Я запускаю mysql как хранилище метаданных для Hive и добавляю необходимые файлы в HDFS:

hadoop fs -mkdir /user/hive
hadoop fs -mkdir /user/hive/warehouse
hadoop fs -mkdir /tmp

После этого я изменил разрешения:

hadoop fs -chmod 777 /user/hive
hadoop fs -chmod 777 /user/hive/warehouse
hadoop fs -chmod 777 /tmp

Демоны YARN и DFS работают так же, как и mysql, известно, что драйвер mysql jdbc работает как с хаупом, так и с кустом.


person Benvorth    schedule 09.03.2017    source источник
comment
Посмотрите документацию Hive о свойствах конфигурации cwiki.apache.org/confluence/display/ Hive/ и, в частности, hive.exec.scratchdir и реквизиты 3+cratchdir.   -  person Samson Scharfrichter    schedule 09.03.2017
comment
Также помните, что java.io.tmpdir — это локальный каталог — простой код Java не может использовать HDFS!   -  person Samson Scharfrichter    schedule 09.03.2017


Ответы (1)


замените эту конкретную конфигурацию в файле hive-site.xml.

<value>${system:java.io.tmpdir}/${hive.session.id}_resources</value>

заменить

<property>
 <name>hive.downloaded.resources.dir</name>
  <!--
     <value>${system:java.io.tmpdir}/${hive.session.id}_resources</value>
   -->
  <value>/home/hduser/hive/tmp/${hive.session.id}_resources</value>
  <description>Temporary local directory for added resources in the remote file system.</description>
</property> 
person andani    schedule 03.08.2018