Comment afficher les informations d'utilisation du disque pour les fichiers et les répertoires Hadoop HDFS

HadoopHadoopBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce tutoriel, nous allons explorer les étapes pour afficher les informations d'utilisation du disque pour les fichiers et les répertoires Hadoop HDFS. Comprendre l'utilisation du stockage de votre cluster Hadoop est crucial pour une gestion efficace des ressources et l'optimisation de vos flux de traitement de données.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("Hadoop")) -.-> hadoop/HadoopHDFSGroup(["Hadoop HDFS"]) hadoop/HadoopHDFSGroup -.-> hadoop/fs_du("FS Shell du") hadoop/HadoopHDFSGroup -.-> hadoop/fs_tail("FS Shell tail") hadoop/HadoopHDFSGroup -.-> hadoop/fs_stat("FS Shell stat") subgraph Lab Skills hadoop/fs_du -.-> lab-415053{{"Comment afficher les informations d'utilisation du disque pour les fichiers et les répertoires Hadoop HDFS"}} hadoop/fs_tail -.-> lab-415053{{"Comment afficher les informations d'utilisation du disque pour les fichiers et les répertoires Hadoop HDFS"}} hadoop/fs_stat -.-> lab-415053{{"Comment afficher les informations d'utilisation du disque pour les fichiers et les répertoires Hadoop HDFS"}} end

Comprendre l'architecture HDFS

Le Hadoop Distributed File System (HDFS) est le système de stockage principal utilisé par les applications Hadoop. HDFS est conçu pour stocker et traiter de grandes quantités de données dans un environnement de calcul distribué. Il offre un accès à haut débit aux données des applications et est tolérant aux pannes, évolutif et hautement disponible.

Architecture HDFS

HDFS suit une architecture maître-esclave, composée des éléments clés suivants :

NameNode

Le NameNode est le nœud maître dans l'architecture HDFS. Il est responsable de la gestion de l'espace de noms du système de fichiers, y compris l'arborescence des répertoires et les métadonnées de tous les fichiers et répertoires de l'arbre. Le NameNode coordonne également l'accès aux fichiers par les clients.

DataNodes

Les DataNodes sont les nœuds esclaves dans l'architecture HDFS. Ils sont responsables du stockage des blocs de données réels et de la prise en charge des requêtes de lecture et d'écriture des clients. Les DataNodes effectuent également la création, la suppression et la réplication de blocs sur instruction du NameNode.

Client

Le client est l'application ou l'utilisateur qui interagit avec HDFS. Les clients peuvent effectuer diverses opérations, telles que la création, la suppression et la modification de fichiers et de répertoires, ainsi que la lecture et l'écriture de données dans le système de fichiers.

graph TD NameNode -- Metadata --> DataNodes Client -- Read/Write --> DataNodes DataNodes -- Data Blocks --> NameNode

Le NameNode maintient l'espace de noms du système de fichiers et la correspondance entre les fichiers et les DataNodes, tandis que les DataNodes stockent les blocs de données réels. Les clients interagissent avec le NameNode pour obtenir des informations sur l'emplacement des blocs de données, puis accèdent directement aux DataNodes pour lire ou écrire des données.

Réplication des données HDFS

HDFS offre une réplication des données pour garantir la tolérance aux pannes et la haute disponibilité. Par défaut, HDFS réplique chaque bloc de données trois fois, stockant les réplicas sur différents DataNodes. Cela garantit que les données restent disponibles même si un ou plusieurs DataNodes échouent.

Taille des blocs HDFS

HDFS utilise une taille de bloc importante, généralement de 128 Mo, pour minimiser la charge de gestion de nombreux petits fichiers. Ce choix de conception est basé sur l'hypothèse que la plupart des applications Hadoop traitent de grandes quantités de données, et la taille de bloc importante permet de réduire le nombre de recherches sur disque et d'améliorer le débit global.

En comprenant l'architecture HDFS et ses composants clés, vous pouvez mieux saisir comment gérer et interagir avec le système de fichiers, y compris la vérification des informations d'utilisation du disque pour les fichiers et les répertoires HDFS.

Vérifier l'utilisation du disque d'un fichier HDFS

Pour vérifier l'utilisation du disque d'un fichier HDFS, vous pouvez utiliser l'outil en ligne de commande hdfs. La commande hdfs propose diverses sous-commandes pour interagir avec le système de fichiers HDFS, y compris la sous-commande du (utilisation du disque).

Utilisation de la commande hdfs du

La commande hdfs du vous permet de récupérer les informations d'utilisation du disque pour un fichier HDFS. La syntaxe de base est la suivante :

hdfs du <file_path>

Remplacez <file_path> par le chemin du fichier HDFS pour lequel vous souhaitez vérifier l'utilisation du disque.

Par exemple, pour vérifier l'utilisation du disque du fichier /user/labex/data.txt dans HDFS, vous pouvez exécuter la commande suivante :

hdfs du /user/labex/data.txt

La sortie de la commande hdfs du affichera la taille du fichier en octets.

1024 /user/labex/data.txt

Dans cet exemple, le fichier /user/labex/data.txt utilise 1024 octets d'espace disque dans HDFS.

Affichage de l'utilisation du disque dans un format lisible par l'homme

Pour afficher l'utilisation du disque dans un format plus lisible par l'homme, vous pouvez utiliser l'option -h (human-readable) avec la commande hdfs du :

hdfs du -h <file_path>

Cela affichera la taille du fichier dans un format plus lisible, comme des kilooctets (KB), des mégaoctets (MB) ou des gigaoctets (GB).

1 KB /user/labex/data.txt

En utilisant la commande hdfs du avec l'option -h, vous pouvez facilement vérifier l'utilisation du disque des fichiers HDFS et obtenir les informations dans un format facile à comprendre.

Vérifier l'utilisation du disque d'un répertoire HDFS

Pour vérifier l'utilisation du disque d'un répertoire HDFS, vous pouvez utiliser l'outil en ligne de commande hdfs avec la sous-commande du (utilisation du disque). La commande hdfs du vous permet de récupérer les informations d'utilisation du disque pour un répertoire HDFS et son contenu.

Utilisation de la commande hdfs du pour les répertoires

La syntaxe de base pour vérifier l'utilisation du disque d'un répertoire HDFS est la suivante :

hdfs du <directory_path>

Remplacez <directory_path> par le chemin du répertoire HDFS pour lequel vous souhaitez vérifier l'utilisation du disque.

Par exemple, pour vérifier l'utilisation du disque du répertoire /user/labex/data dans HDFS, vous pouvez exécuter la commande suivante :

hdfs du /user/labex/data

La sortie de la commande hdfs du affichera l'utilisation du disque pour chaque fichier et sous-répertoire dans le répertoire spécifié, ainsi que l'utilisation totale du disque pour l'ensemble du répertoire.

1024 /user/labex/data/file1.txt
2048 /user/labex/data/file2.txt
512 /user/labex/data/subdir
3584 /user/labex/data

Dans cet exemple, le répertoire /user/labex/data utilise un total de 3584 octets d'espace disque dans HDFS.

Affichage de l'utilisation du disque dans un format lisible par l'homme

De la même manière que pour vérifier l'utilisation du disque de fichiers individuels, vous pouvez utiliser l'option -h (human-readable) avec la commande hdfs du pour afficher l'utilisation du disque dans un format plus lisible :

hdfs du -h <directory_path>

Cela affichera l'utilisation du disque dans un format tel que des kilooctets (KB), des mégaoctets (MB) ou des gigaoctets (GB).

1 KB /user/labex/data/file1.txt
2 KB /user/labex/data/file2.txt
512 B /user/labex/data/subdir
3.5 KB /user/labex/data

En utilisant la commande hdfs du avec l'option -h, vous pouvez facilement vérifier l'utilisation du disque des répertoires HDFS et obtenir les informations dans un format facile à comprendre.

Résumé

À la fin de ce tutoriel, vous aurez appris à vérifier l'utilisation du disque des fichiers et des répertoires individuels Hadoop HDFS, vous permettant ainsi de mieux gérer votre stockage Hadoop et d'assurer des performances optimales de vos applications de données massives.