¿Cuál debe ser hadoop.tmp.dir?
Pregunta
Hadoop tiene la configuración de parámetros hadoop.tmp.dir
la que, según la documentación, es ` "Una base para otros directorios temporales." presumo, este camino se refiere al sistema de archivos local.
I establece este valor en /mnt/hadoop-tmp/hadoop-${user.name}
. Después de formatear el NameNode e iniciar todos los servicios, veo exactamente el mismo camino creado en HDFS.
¿Significa esto, hadoop.tmp.dir
se refiere a la ubicación temporal en HDFS ?
Solución
Es confuso, pero hadoop.tmp.dir
se utiliza como la base para los directorios temporales a nivel local, y también en HDFS . El documento no es grande, pero mapred.system.dir
está configurado por defecto para "${hadoop.tmp.dir}/mapred/system"
, y esto define el camino de la HDFS en donde el Mapa / Reducir tiendas marco archivos del sistema.
Si usted quisiera que éstos no estar atado juntos, usted puede editar su mapred-site.xml
tal que la definición de mapred.system.dir es algo que no está ligada a ${hadoop.tmp.dir}
Otros consejos
Permítanme añadir un poco más a la respuesta de kkrugler:
No tenemos propiedades tres HDFS que contienen hadoop.tmp.dir
en sus valores
-
dfs.name.dir
:. Directorio en tiendas NameNode sus metadatos, con valor predeterminado${hadoop.tmp.dir}/dfs/name
-
dfs.data.dir
:. Directorio donde se almacenan los bloques de datos HDFS, con el valor por defecto${hadoop.tmp.dir}/dfs/data
-
fs.checkpoint.dir
:. Directorio donde almacenar secundaria NameNode sus puestos de control, el valor predeterminado es${hadoop.tmp.dir}/dfs/namesecondary
Esta es la razón por la que viste en sus /mnt/hadoop-tmp/hadoop-${user.name}
HDFS después de formatear NameNode.
tenía un vistazo para obtener información sobre éste. Lo único que pude llegar a este post era sobre la Amazon Elastic Guía de MapReduce Dev :
En hadoop-site.xml, establecemos hadoop.tmp.dir a / Mnt / var / lib / hadoop / tmp. / Mnt es donde que montar los volúmenes EC2 “extra”, que puede contener muchos más datos que el volumen predeterminado. (El monto exacto depende del tipo de instancia.) Hadoop de RunJar.java (el módulo que descomprime los JAR de entrada) interpreta hadoop.tmp.dir como un sistema de archivos Hadoop camino en lugar de una ruta local, por lo que escribe en el camino en lugar de HDFS una ruta local. HDFS está montada bajo / Mnt (específicamente / Mnt / var / lib / hadoop / dfs /. Así que puedes un montón de escritura de datos en él.