Esta característica es imperante cuando se pretenden almacenar grandes cantidades de datos, puesto que en general no es posible almacenar cientos de terabytes o petabytes en una única máquina.
Se pueden crear directorios en HDFS empleando el siguiente comando: hadoop fs –mkdir
Para ello, se pueden ejecutar los siguientes comandos: hadoop fs –copyFromLocal
En concreto, se pueden emplear los siguientes comandos: hadoop fs –cat
Es importante notar que esta salida puede introducirse como entrada a otro comando de Unix, por ejemplo, podría usarse grep para buscar coincidencias con una determinada expresión regular dentro del fichero.
En concreto, se pueden emplear los siguientes comandos: hadoop fs –cp
Hadoop soporta otros comandos que tienen como finalidad gestionar los permisos, comprobar el espacio ocupado por un directorio o el espacio disponible, etc. Todos ellos, así como los parámetros que acepta cada uno, se pueden consultar ejecutando el siguiente comando: hadoop fs –help Dentro de esta sección se explica el funcionamiento interno de HDFS, y qué mecanismos son los que lo convierten en un sistema adecuado para el almacenamiento de grandes cantidades de datos.
Todos los ficheros están divididos en bloques, que por defecto tienen un tamaño de 128 MB.
Para garantizar la tolerancia a fallos, si un datanode deja de estar disponible, el namenode lo detecta mediante un proceso de heartbeat y vuelve a replicar los bloques perdidos en otras máquinas que sí estén disponibles.
Como se puede observar, el namenode es una pieza fundamental del sistema de archivos HDFS.
El uso del lenguaje Java, altamente portable, significa que HDFS puede ser desplegado en una amplia gama de máquinas.
La arquitectura no impide que se ejecuten varios DataNodes en la misma máquina, pero en un despliegue real ese es raramente el caso.
Los archivos en HDFS son de una sola escritura y tienen estrictamente un escritor en cualquier momento.