hadoop.tmp.dir не соблюдается командой hadoop - PullRequest
0 голосов
/ 27 апреля 2018

Как установить hadoop.tmp.dir в командной строке? Я попытался добавить его, добавив его в командную строку - и когда это не сработало также через HADOOP_OPTS:

export HADOOP_OPTS = "- Dhadoop.tmp.dir = / tmp / tmp

Этот каталог был создан специально для всемирной записи:

$ls -lrta /tmp/tmp
total 0
drwxrwxrwx   2 myuser   wheel    64 Apr 27 01:23 .
drwxrwxrwt  45 root     wheel  1440 Apr 27 01:23 ..

Но hadoop продолжает использовать значение по умолчанию tmpdir:

$hadoop jar target/mp5-1.0-SNAPSHOT-jar-with-dependencies.jar org.apache.giraph.GiraphRunner -Dmapreduce.child.java.opts="-Dhadoop.tmpdir=/tmp/tmp -Djava.io.tmpdir=/tp/tmp" ConnectedComponentsComputation -vif org.apache.giraph.io.formats.IntIntNullTextInputFormat -vip dataset/graph.data -vof org.apache.giraph.io.formats.IdWithValueTextOutputFormat -op file://$(pwd)/output/part-a -w 1 -ca giraph.SplitMasterWorker=false

Но всегда мы заканчиваем ошибками разрешения;

Exception in thread "main" java.io.IOException: 
Mkdirs failed to create /var/folders/3t/4d3czfm17fb2v9z_m8rvflyrg8jmdl/T/hadoop-unjar2119053878070751096/META-INF/license
    at org.apache.hadoop.util.RunJar.ensureDirectory(RunJar.java:140)
    at org.apache.hadoop.util.RunJar.unJar(RunJar.java:109)
    at org.apache.hadoop.util.RunJar.unJar(RunJar.java:85)
    at org.apache.hadoop.util.RunJar.run(RunJar.java:222)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:148)

Так как настроить hadoop в командной строке или хотя бы через env vars (не изменяя сами файлы конфигурации hadoop)?

(кстати, я также установите это в $HADOOP_CONF_DIR/core-site.xml .. все еще без кубиков)

$grep  -C 2 hadoop.tmp.dir $HADOOP_CONF_DIR/core-site.xml
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/tmp/tmp</value>
    </property>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...