Hadoop FS Shell find

HadoopHadoopBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, profundizaremos en el mundo de Hadoop HDFS y nos centraremos en el comando find de la interfaz de shell de FS. Imagina que eres un arqueólogo explorando un templo antiguo en busca de tesoros y secretos ocultos. Tu objetivo es utilizar el comando find de la interfaz de shell de FS para navegar por el vasto sistema de archivos de Hadoop, al igual que si estuvieras descubriendo artefactos ocultos en un templo.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("Hadoop")) -.-> hadoop/HadoopHDFSGroup(["Hadoop HDFS"]) hadoop/HadoopHDFSGroup -.-> hadoop/hdfs_setup("HDFS Setup") hadoop/HadoopHDFSGroup -.-> hadoop/fs_ls("FS Shell ls") hadoop/HadoopHDFSGroup -.-> hadoop/fs_mkdir("FS Shell mkdir") hadoop/HadoopHDFSGroup -.-> hadoop/fs_put("FS Shell copyToLocal/put") hadoop/HadoopHDFSGroup -.-> hadoop/fs_chmod("FS Shell chmod") hadoop/HadoopHDFSGroup -.-> hadoop/fs_find("FS Shell find") hadoop/HadoopHDFSGroup -.-> hadoop/fs_stat("FS Shell stat") subgraph Lab Skills hadoop/hdfs_setup -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_ls -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_mkdir -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_put -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_chmod -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_find -.-> lab-271870{{"Hadoop FS Shell find"}} hadoop/fs_stat -.-> lab-271870{{"Hadoop FS Shell find"}} end

Configuración del entorno

En este paso, aseguraremos de que nuestro entorno de Hadoop esté configurado correctamente antes de utilizar el comando find de la interfaz de shell de FS.

Abra la terminal y siga los pasos siguientes para comenzar.

  1. Cambie al usuario hadoop:

    su - hadoop
  2. Verifique la versión de Hadoop:

    hadoop version
  3. Cree un archivo example.txt en el directorio raíz de HDFS:

    echo "This is an example file." | hdfs dfs -put - /example.txt

Recuperar información del archivo

En este paso, demostraremos cómo utilizar el comando find de la interfaz de shell de FS para localizar archivos específicos dentro del sistema de archivos de Hadoop.

  1. Busque un archivo llamado example.txt dentro del directorio raíz de HDFS:

    hdfs dfs -find / -name "example.txt"
  2. Recupere información sobre el archivo utilizando el comando stat de la interfaz de shell de FS:

    hdfs dfs -stat "%n %y %r" /example.txt > /home/hadoop/example_info.txt
    cat /home/hadoop/example_info.txt

El comando hdfs dfs -stat se utiliza para recuperar información de estado sobre archivos o directorios en HDFS. Puede utilizar diferentes opciones de formato para personalizar la información de salida. A continuación, se presentan algunas opciones de formato comúnmente utilizadas y sus significados:

  • %b: Tamaño del archivo en bytes.
  • %n: Nombre del archivo.
  • %o: Tamaño del bloque.
  • %r: Factor de replicación.
  • %u: Nombre de usuario.
  • %g: Nombre de grupo.
  • %y: Fecha de modificación en el formato yyyy-MM-dd HH:mm:ss.
  • %F: Tipo de archivo (archivo, directorio o enlace simbólico).

Analizando directorios

En este paso, exploraremos cómo se puede utilizar find de la interfaz de shell de FS para analizar directorios y su contenido.

  1. Liste todos los directorios debajo del directorio /user:

    hdfs dfs -ls /user
  2. Cree un directorio llamado superDirectory debajo del directorio /user y establezca sus permisos en 777 (rwxrwxrwx):

    hdfs dfs -mkdir /user/superDirectory
    hdfs dfs -chmod 777 /user/superDirectory
  3. Utilice find de la interfaz de shell de FS para localizar el directorio superDirectory:

    hdfs dfs -find /user -name "superDirectory"
  4. Utilice la interfaz de shell de FS para identificar directorios con permisos específicos:

    hdfs dfs -ls /user | grep '^drwxrwxrwx'

Resumen

En este laboratorio, nos sumergimos en el mundo de Hadoop HDFS y exploramos las capacidades del comando find de la interfaz de shell de FS. Al simular una expedición arqueológica en un templo, aprendimos cómo buscar y analizar efectivamente archivos y directorios dentro del sistema de archivos de Hadoop. Esta experiencia práctica nos brindó información sobre la gestión y navegación de estructuras de datos complejas en Hadoop, mejorando nuestra comprensión de las operaciones de HDFS.