descargar descarga common commands hadoop hdfs

hadoop - descarga - Factor de replicación HDFS



hdfs dfs (3)

Cuando estoy cargando un archivo a HDFS, si establezco el factor de replicación en 1, ¿las divisiones de archivos van a residir en una sola máquina o las divisiones se distribuirán a varias máquinas a través de la red?

hadoop fs -D dfs.replication=1 -copyFromLocal file.txt /user/ablimit


Si establece que la replicación sea 1, el archivo solo estará presente en el nodo cliente, es decir, el nodo desde el que está cargando el archivo.


De acuerdo con Hadoop: Guía definitiva

La estrategia predeterminada de Hadoop es colocar la primera réplica en el mismo nodo que el cliente (para los clientes que se ejecutan fuera del clúster, un nodo se elige al azar, aunque el sistema intenta no elegir los nodos que están demasiado llenos o demasiado ocupados). La segunda réplica se coloca en un rack diferente del primero (off-rack), elegido al azar. La tercera réplica se coloca en el mismo rack que la segunda, pero en un nodo diferente elegido al azar. Se colocan réplicas adicionales en nodos aleatorios en el clúster, aunque el sistema intenta evitar colocar demasiadas réplicas en el mismo bastidor.

Esta lógica tiene sentido ya que disminuye la vibración de la red entre los diferentes nodos. Pero, el libro se publicó en 2009 y hubo muchos cambios en el marco de Hadoop.

Creo que depende de si el cliente es igual que un nodo de Hadoop o no. Si el cliente es un nodo Hadoop, todas las divisiones estarán en el mismo nodo. Esto no proporciona un rendimiento de lectura / escritura mejor a pesar de tener múltiples nodos en el clúster. Si el cliente no es el mismo que el nodo Hadoop, entonces el nodo se elige al azar para cada división, por lo que las divisiones se reparten entre los nodos de un clúster. Ahora, esto proporciona un mejor rendimiento de lectura / escritura.

Una ventaja de escribir en nodos múltiples es que incluso si uno de los nodos se cae, un par de divisiones pueden estar caídas, pero al menos algunos datos pueden recuperarse de alguna manera de las divisiones restantes.


  • Si su clúster es un nodo único, al cargar un archivo se derramará de acuerdo con el tamaño del bloque y permanecerá en una sola máquina.
  • Si su clúster es multinúcleo, al cargar un archivo se derramará de acuerdo con el tamaño de bloques y se distribuirá a diferentes nodos de datos en su clúster por conducto y NameNode decidirá dónde se moverán los datos en el clúster.

El factor de replicación de HDFS se utiliza para hacer una copia de los datos (es decir) si el factor de duplicación es 2, entonces todos los datos que cargue en HDFS tendrán una copia.