Aprende en esta guía los comandos más usados de HDFS (Hadoop Distributed File System) para listar, leer y escribir ficheros, cargar y descargar y gestionar los permisos y el sistema.
Puedes descargar HDFS desde el repositorio oficial de Hadoop. Ahí encontrarás los binarios de todo el software necesario para desplegar un clúster de HDFS.
Los comandos básicos de Hadoop y de HDFS son similares a los que podrás usar en una terminal de un sistema Linux, a continuación presento una lista con los comandos de HDFS más importantes divididos por secciones en función de su utilidad.
Recuerda que los comandos del tipo hadoop fs
actúan como sinónimos en el caso de que exista HDFS.
Contenidos
Listar Ficheros en HDFS
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -ls / | Lista todos los ficheros y directorios para el path / |
hdfs dfs -ls -h / | Lista los ficheros con su tamaño en formato legible |
hdfs dfs -ls -R / | Lista todos los ficheros y directorios recursivamente (con subdirectorios) |
hdfs dfs -ls /file* | Lista todos los ficheros que cumplen el patrón (ficheros que comienzan con ‘file’) |
hadoop fs -stat «type:%F» / | Imprime estadísticas del fichero o directorio en el formato indicado |
Leer y Escribir Ficheros
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -text /app.log | Imprime el fichero en modo texto por la terminal |
hdfs dfs -cat /app.log | Muestra el contenido del fichero en la salida estándar |
hdfs dfs -appendToFile /home/file1 /file2 | Añade el contenido del fichero local ‘file1’ al fichero en HDFS ‘file2’ |
Cargar y Descargar Ficheros
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -put /home/file1 /hadoop | Copia el fichero ‘file1’ del sistema de ficheros local a HDFS |
hdfs dfs -put -f /home/file1 /hadoop | Copia el fichero ‘file1’ del sistema de ficheros local a HDFS y lo sobreescribe en el caso de que ya exista |
hdfs dfs -put -l /home/file1 /hadoop | Copia el fichero ‘file1’ del sistema de ficheros local a HDFS. Fuerza replicación 1 y permite al DataNode persistir los datos de forma perezosa. |
hdfs dfs -put -p /home/file1 /hadoop | Copia el fichero ‘file1’ del sistema de ficheros local a HDFS. Mantiene los tiempos de acceso, de modificación y propietario original |
hdfs dfs -get /file1 /home/ | Copia el fichero ‘file1’ de HDFS al sistema de ficheros local |
hdfs dfs -copyToLocal /file1 /home/ | Copia el fichero ‘file1’ de HDFS al sistema de ficheros local (igual que el anterior) |
hdfs dfs -moveFromLocal /home/file1 /hadoop | Copia el fichero ‘file1’ del sistema de ficheros local a HDFS y luego lo borra del sist. ficheros local |
Gestión de Ficheros
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -cp /hadoop/file1 /hadoop1 | Copia el fichero al directorio destino en HDFS |
hdfs dfs -cp -p /hadoop/file1 /hadoop1 | Copia el fichero al directorio destino en HDFS conservando tiempos de acceso y de modificación, propietario y modo |
hdfs dfs -rm /hadoop/file1 | Elimina el fichero ‘file1’ de HDFS y lo envía a la papelera |
hdfs dfs -rm -r /hadoop hdfs dfs -rm -R /hadoop hdfs dfs -rmr /hadoop | Elimina el directorio y su contenido en HDFS |
hdfs dfs -rm -skipTrash /file1 | Elimina el fichero sin dejarlo en la papelera |
hdfs dfs -mkdir /hadoop2 | Crea un directorio en HDFS |
hdfs dfs -touchz /hadoop3 | Crea un fichero en HDFS con tamaño 0 |
hadoop fs -getmerge -nl /file1 /file2 /output | Concatena los ficheros file1 y file2 en el fichero destino /output |
Gestión de Permisos
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -checksum /hadoop/file1 | Muestra la información checksum del fichero |
hdfs dfs -chmod 775 /hadoop/file1 | Cambia los permisos del fichero en HDFS |
hdfs dfs -chmod -R 755 /hadoop | Cambia los permisos de los ficheros recursivamente |
hdfs dfs -chown hadoop:hadoop /file1 | Cambia el propietario y el grupo del fichero |
hdfs dfs -chown -R hadoop:hadoop /file1 | Cambia el propietario y el grupo recursivamente |
hdfs dfs -chgrp hadoop /file1 | Cambia el grupo del fichero |
Comandos de Administración HDFS
COMANDO | DESCRIPCIÓN |
---|---|
hdfs dfs -df /hadoop | Muestra la capacidad y el espacio libre y usado del sistema de ficheros |
hdfs dfs -df -h /hadoop | Muestra la capacidad y el espacio libre y usado del sistema de ficheros en formato legible |
hadoop version | Muestra la versión de hadoop |
hdfs fsck / | Comprueba el estado de salud del sistema de ficheros |
hdfs dfsadmin -safemode leave | Deshabilita el modo seguro del NameNode |
hdfs namenode -format | Formatea el NameNode |
hadoop fs -test -e filename | Si el path existe en HDFS, devuelve 0 |
hadoop fs -setrep -w 3 /file1 | Cambia el factor de replicación de un fichero a 3. Si se indica un directorio, cambia el factor de replicación de todos los ficheros que contiene |
Siguientes pasos y Cursos de HDFS
Aquí tienes dos cursos muy recomendados con los que consolidarás conceptos fundamentales para convertirte en experto de estas tecnologías fundamentales para los ingenieros de datos. Estos cursos te enseñarán todo lo que necesitas para manipular el sistema de ficheros distribuido de Hadoop HDFS en un entorno empresarial. Aprenderás a navegar por el sistema de archivos con línea de comandos, implementar clusters y automatización.
Curso completo de la Plataforma Hadoop
Aprende Hadoop a fondo con este. Está disponible en Coursera y ofrecido por la Universidad de San Diego. Con este curso aprenderás los conceptos clave de Hadoop MapReduce. La ventaja es que podrás ir al ritmo que consideres adecuado, tanto en las clases de teoría como en los ejercicios y laboratorios que tendrás disponibles. Se divide en 4 módulos con 26 horas de contenido que ya han cursado más de 140000 estudiantes.
- Fundamentos de Hadoop
- Stack de Hadoop
- HDFS
- MapReduce
- Apache Spark
Introducción a Big Data con Hadoop y Spark
En este curso ofrecido por IBM en Coursera podrás aprender los conceptos básicos de Hadoop y spark aplicando ejemplos. Cuenta con más de 11 horas de contenido y más de 6000 estudiantes. Se divide en 6 módulos:
- Qué es Big Data
- Introducción al ecosistema Hadoop
- Apache Spark
- Dataframes y Spark SQL
- Desarrollo y Runtime
- Monitorización y configuración
También, te recomiendo el siguiente libro fundamental. Puedes encontrarlo en Amazon:
A continuación, el vídeo-resumen. ¡No te lo pierdas!