So zeigen Sie die Datenträgerauslastungsinformationen für Hadoop HDFS-Dateien und -Verzeichnisse an

HadoopHadoopBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Tutorial werden wir die Schritte zur Anzeige von Informationen zur Datenträgerauslastung für Hadoop HDFS-Dateien und -Verzeichnisse untersuchen. Das Verständnis der Speicherauslastung Ihres Hadoop-Clusters ist für die effiziente Ressourcenverwaltung und die Optimierung Ihrer Datenverarbeitungsworkflows von entscheidender Bedeutung.


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{{"So zeigen Sie die Datenträgerauslastungsinformationen für Hadoop HDFS-Dateien und -Verzeichnisse an"}} hadoop/fs_tail -.-> lab-415053{{"So zeigen Sie die Datenträgerauslastungsinformationen für Hadoop HDFS-Dateien und -Verzeichnisse an"}} hadoop/fs_stat -.-> lab-415053{{"So zeigen Sie die Datenträgerauslastungsinformationen für Hadoop HDFS-Dateien und -Verzeichnisse an"}} end

Das HDFS-Architektur verstehen

Hadoop Distributed File System (HDFS) ist das primäre Speichersystem, das von Hadoop-Anwendungen verwendet wird. HDFS ist so konzipiert, dass es große Datenmengen in einer verteilten Rechenumgebung speichert und verarbeitet. Es bietet einen Hochdurchsatz-Zugang zu Anwendungsdaten und ist fehlertolerant, skalierbar und hochverfügbar.

HDFS-Architektur

HDFS folgt einer Master-Slave-Architektur und besteht aus den folgenden Schlüsselkomponenten:

NameNode

Der NameNode ist der Master-Knoten in der HDFS-Architektur. Er ist für die Verwaltung des Dateisystem-Namensraums verantwortlich, einschließlich des Verzeichnisbaums und der Metadaten für alle Dateien und Verzeichnisse im Baum. Der NameNode koordiniert auch den Zugriff der Clients auf die Dateien.

DataNodes

DataNodes sind die Slave-Knoten in der HDFS-Architektur. Sie sind für die Speicherung der eigentlichen Datenblöcke und die Bearbeitung von Lese- und Schreibanforderungen der Clients verantwortlich. DataNodes erstellen, löschen und replizieren Blöcke auch auf Anweisung des NameNodes.

Client

Der Client ist die Anwendung oder der Benutzer, der mit HDFS interagiert. Clients können verschiedene Operationen ausführen, wie das Erstellen, Löschen und Modifizieren von Dateien und Verzeichnissen sowie das Lesen und Schreiben von Daten in das und aus dem Dateisystem.

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

Der NameNode verwaltet den Dateisystem-Namensraum und die Abbildung von Dateien auf DataNodes, während die DataNodes die eigentlichen Datenblöcke speichern. Clients interagieren mit dem NameNode, um Informationen über den Speicherort der Datenblöcke zu erhalten, und greifen dann direkt auf die DataNodes zu, um Daten zu lesen oder zu schreiben.

HDFS-Datenreplikation

HDFS bietet Datenreplikation, um die Fehlertoleranz und Hochverfügbarkeit zu gewährleisten. Standardmäßig repliziert HDFS jeden Datenblock dreimal und speichert die Replikate auf verschiedenen DataNodes. Dies stellt sicher, dass die Daten auch dann verfügbar bleiben, wenn ein oder mehrere DataNodes ausfallen.

HDFS-Blockgröße

HDFS verwendet eine große Blockgröße, typischerweise 128 MB, um den Verwaltungsaufwand für viele kleine Dateien zu minimieren. Diese Designentscheidung basiert auf der Annahme, dass die meisten Hadoop-Anwendungen große Datenmengen verarbeiten, und die große Blockgröße hilft, die Anzahl der Datenträgerzugriffe zu reduzieren und den Gesamtdurchsatz zu verbessern.

Indem Sie die HDFS-Architektur und ihre Schlüsselkomponenten verstehen, können Sie besser verstehen, wie Sie das Dateisystem verwalten und damit interagieren können, einschließlich der Überprüfung der Informationen zur Datenträgerauslastung für HDFS-Dateien und -Verzeichnisse.

Überprüfen der Datenträgerauslastung von HDFS-Dateien

Um die Datenträgerauslastung einer HDFS-Datei zu überprüfen, können Sie das Befehlszeilentool hdfs verwenden. Der hdfs-Befehl bietet verschiedene Unterbefehle für die Interaktion mit dem HDFS-Dateisystem, einschließlich des du (Datenträgerauslastung)-Unterbefehls.

Verwenden des hdfs du-Befehls

Der hdfs du-Befehl ermöglicht es Ihnen, Informationen zur Datenträgerauslastung einer HDFS-Datei abzurufen. Die grundlegende Syntax lautet wie folgt:

hdfs du <file_path>

Ersetzen Sie <file_path> durch den Pfad zur HDFS-Datei, deren Datenträgerauslastung Sie überprüfen möchten.

Beispielsweise können Sie den folgenden Befehl ausführen, um die Datenträgerauslastung der Datei /user/labex/data.txt in HDFS zu überprüfen:

hdfs du /user/labex/data.txt

Die Ausgabe des hdfs du-Befehls zeigt die Dateigröße in Bytes an.

1024 /user/labex/data.txt

In diesem Beispiel verwendet die Datei /user/labex/data.txt 1024 Bytes Datenspeicherplatz in HDFS.

Anzeigen der Datenträgerauslastung in einem menschenlesbaren Format

Um die Datenträgerauslastung in einem menschenlesbareren Format anzuzeigen, können Sie die Option -h (menschenlesbar) mit dem hdfs du-Befehl verwenden:

hdfs du -h <file_path>

Dadurch wird die Dateigröße in einem lesbareren Format angezeigt, wie z. B. Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB).

1 KB /user/labex/data.txt

Indem Sie den hdfs du-Befehl mit der -h-Option verwenden, können Sie die Datenträgerauslastung von HDFS-Dateien einfach überprüfen und die Informationen in einem leicht verständlichen Format erhalten.

Überprüfen der Datenträgerauslastung von HDFS-Verzeichnissen

Um die Datenträgerauslastung eines HDFS-Verzeichnisses zu überprüfen, können Sie das Befehlszeilentool hdfs mit dem du (Datenträgerauslastung)-Unterbefehl verwenden. Der hdfs du-Befehl ermöglicht es Ihnen, Informationen zur Datenträgerauslastung eines HDFS-Verzeichnisses und dessen Inhalt abzurufen.

Verwenden des hdfs du-Befehls für Verzeichnisse

Die grundlegende Syntax zur Überprüfung der Datenträgerauslastung eines HDFS-Verzeichnisses lautet wie folgt:

hdfs du <directory_path>

Ersetzen Sie <directory_path> durch den Pfad zum HDFS-Verzeichnis, dessen Datenträgerauslastung Sie überprüfen möchten.

Beispielsweise können Sie den folgenden Befehl ausführen, um die Datenträgerauslastung des Verzeichnisses /user/labex/data in HDFS zu überprüfen:

hdfs du /user/labex/data

Die Ausgabe des hdfs du-Befehls zeigt die Datenträgerauslastung für jede Datei und jedes Unterverzeichnis innerhalb des angegebenen Verzeichnisses sowie die Gesamt-Datenträgerauslastung für das gesamte Verzeichnis an.

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

In diesem Beispiel verwendet das Verzeichnis /user/labex/data insgesamt 3584 Bytes Datenspeicherplatz in HDFS.

Anzeigen der Datenträgerauslastung in einem menschenlesbaren Format

Ähnlich wie bei der Überprüfung der Datenträgerauslastung einzelner Dateien können Sie die Option -h (menschenlesbar) mit dem hdfs du-Befehl verwenden, um die Datenträgerauslastung in einem lesbareren Format anzuzeigen:

hdfs du -h <directory_path>

Dadurch wird die Datenträgerauslastung in einem Format wie Kilobyte (KB), Megabyte (MB) oder Gigabyte (GB) angezeigt.

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

Indem Sie den hdfs du-Befehl mit der -h-Option verwenden, können Sie die Datenträgerauslastung von HDFS-Verzeichnissen einfach überprüfen und die Informationen in einem leicht verständlichen Format erhalten.

Zusammenfassung

Am Ende dieses Tutorials haben Sie gelernt, wie Sie die Datenträgerauslastung einzelner Hadoop HDFS-Dateien und -Verzeichnisse überprüfen können. Dies befähigt Sie, Ihren Hadoop-Speicher besser zu verwalten und die optimale Leistung Ihrer Big-Data-Anwendungen sicherzustellen.