O que deveria ser hadoop.tmp.dir?

o Hadoop tem o parâmetro de configuração hadoop.tmp.dir que, de acordo com a documentação, é ` ' uma base para outras pastas temporárias." presumo que este caminho se refere ao sistema de ficheiros local.

fixei este valor para /mnt/hadoop-tmp/hadoop-${user.name}. Depois de formatar o namenode e iniciar todos os Serviços, eu vejo exatamente o mesmo caminho criado em HDFS.

isto significa que hadoop.tmp.dir se refere a uma localização temporária emHDFS ?

Author: AdrieanKhisbe, 2010-03-01

3 answers

É confuso, mas hadoop.tmp.dir é usado como base para pastas temporárias localmente, e também em HDFS. O documento não é grande, mas mapred.system.dir é definido por omissão em "${hadoop.tmp.dir}/mapred/system", e isto define o caminho no HDFS onde o mapa/reduzir o framework armazena os ficheiros do sistema.

Se você quiser que estes não sejam amarrados juntos, você pode editar o seu mapred-site.xml Tal que a definição de mapred.sistema.dir é algo que não está ligado${hadoop.tmp.dir}

 33
Author: kkrugler, 2015-01-26 14:39:32
Deixe-me acrescentar um pouco mais à resposta de kkrugler:

Existem três propriedades HDFS que contêm {[[0]} nos seus valores

  1. dfs.name.dir: pasta onde o namenode guarda os seus meta-dados, com o valor por omissão ${hadoop.tmp.dir}/dfs/name.
  2. dfs.data.dir: directório onde são armazenados blocos de dados HDFS, com o valor por omissão ${hadoop.tmp.dir}/dfs/data.
  3. fs.checkpoint.dir: pasta onde o namenode secundário guarda os seus pontos de controlo, o valor por omissão é ${hadoop.tmp.dir}/dfs/namesecondary.
Foi por isso que viu o /mnt/hadoop-tmp/hadoop-${user.name} nos seus HDFS depois a formatar o código do nome.
 27
Author: darcyq, 2013-01-25 22:38:23
Dei uma vista de olhos à procura de informações sobre este. A única coisa que consegui arranjar foi este post no Guia do Dev Amazonas elástico do MapReduce.:

Em hadoop-site.xml, configuramos hadoop.tmp.dir to /mnt / var/lib/hadoop / tmp. / mnt é onde montamos os volumes" extra " EC2, que pode conter muito mais dados do que o volume por omissão. (O montante exacto depende do tipo de instância.) Hadoop's RunJar.java (O módulo que descompacta as barras de entrada) interpreta hadoop.tmp.dir como um sistema de ficheiros Hadoop caminho em vez de um caminho local, por isso escreve para o caminho em HDFS em vez de um caminho local. HDFS é montado em / mnt (especificamente /mnt / var / lib / hadoop/dfs/. Então, você pode escreve-lhe muitos dados.

 3
Author: Binary Nerd, 2010-03-02 04:11:56