Creación de directorio en HDFS y Copiar archivos (Hadoop)

Creación de directorio en HDFS y Copiar archivos (Hadoop)

HDFS es el Sistema de archivos distribuido Hadoop. Es un sistema de almacenamiento distribuido para grandes conjuntos de datos que admite tolerancia a fallas, alto rendimiento y escalabilidad. Funciona dividiendo datos en bloques que se replican en múltiples máquinas en un clúster. Los bloques se pueden escribir o leer en paralelo, facilitando un alto rendimiento y tolerancia a fallas. HDFS proporciona redundancia similar a RAID con conmutación por error automática. HDFS también admite compresión, replicación y cifrado.

El caso de uso más común para HDFS es almacenar grandes colecciones de datos como archivos de imagen y video, registros, datos del sensor, etc.

Creación de estructura de directorio con HDFS

La utilidad de la línea de comandos "HDFS" está disponible $ Hadoop_home/bin directorio. Suponiendo que el directorio de Hadoop bin ya está incluido en CAMINO Variable ambiental. Ahora inicie sesión como usuario de Hadoop y siga las instrucciones.

  1. Crear un /datos Directorio en el sistema de archivos HDFS. Estoy dispuesto a usar este directorio para contener todos los datos de las aplicaciones.
    HDFS DFS -MKDIR /Data  
  2. Creando otro directorio /var/log, que contiene todos los archivos de registro. Como el directorio /var tampoco existe, use -pag Para crear un directorio de padres también.
    hdfs dfs -mkdir -p /var /log  
  3. También puede usar variables durante la creación de directorio. Por ejemplo, crear un directorio con el mismo nombre que el usuario registrado actualmente. Este directorio se puede utilizar para contener los datos del usuario.
    HDFS DFS -MKDIR -P /USERS /$ USUARIO  

Cambiar los permisos de archivo con HDFS

También puede cambiar los archivos de los propietarios y el permiso en el sistema de archivos HDFS.

  • Para cambiar el propietario del archivo y el propietario del grupo, use el -queso Opción de línea de comando:
    HDFS DFS -ROWN -R $ Hadoop_user: $ hadoop_user /users /hadoop  
  • Para cambiar el permiso del archivo, use el -chmod Opciones de línea de comando.
    HDFS DFS -CHMOD -R 775 /Usuarios /Hadoop 

Copiar archivos a HDFS

El HDFS Comando proporciona -conseguir y -poner Parámetros para copiar archivos a/desde el sistema de archivos HDFS.

  • Por ejemplo, para copiar un solo archivo del sistema de archivos local a HDFS:
    HDFS DFS -put ~/TestFile.txt/var/log/  
  • Copiar múltiples archivos al igual que el árbol de directorio usando los caracteres comodines.
    HDFS DFS -put ~/log/*/var/log/  

Listado de archivos en HDFS

Mientras trabaja con el clúster Hadoop, puede ver archivos debajo del sistema de archivos HDFS a través de la línea de comandos, así como la GUI.

  • Utilizar el -LS Opción con HDFS para enumerar archivos en el sistema de archivos HDFS. Por ejemplo, para enumerar todos los archivos en el uso del directorio raíz:
    HDFS DFS -LS /  
  • El mismo comando se puede usar para enumerar los archivos de los subdirectorios también.
    HDFS DFS -LS /Usuarios /Hadoop  

    Debe obtener la siguiente salida:

    Lista de archivos en HDFS

  • En lugar de la línea de comando, Hadoop también proporciona un explorador gráfico para ver, descargar y cargar archivos fácilmente. Explore el sistema de archivos HDFS en el puerto NameNode en la siguiente URL:

    http: // localhost: 9870/explorer.html

    Explorar archivos en HDFS

Conclusión

HDFS también admite una variedad de otras aplicaciones, como MapReduce, el procesamiento de trabajos procesa grandes volúmenes de datos, así como la autenticación de usuarios y los mecanismos de control de acceso. Los HDF también se pueden combinar con otros sistemas de archivos distribuidos como S3 y Swift para crear soluciones de nube híbridas que combinen alta disponibilidad y baja latencia con almacenamiento de bajo costo.

En este artículo, ha aprendido sobre la creación de una estructura de directorio en el sistema de archivos HDFS, cambiando los permisos y la copia y la lista de archivos con HDFS.