Hadoop-Quotenverwaltung

HadoopHadoopBeginner
Jetzt üben

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

Einführung

In diesem Labor lernst du, wie du die begrenzte Lagerkapazität einer Kamelkarawane im Arabischen Wüstenland managst, einschließlich der Vergleich von Speicherplatzquoten und Namensquoten. Du wirst damit betraut, sorgfältig zu planen und Frachtplätze zuzuweisen, um die Sicherheit und Integrität der Beförderung von kostbaren Waren wie Gewürzen und feinen Seiden zu gewährleisten.

Aktuelle Speichergrenzen erkunden

In diesem Schritt erkundest du die aktuelle Speicherauslastung des Hadoop Distributed File Systems (HDFS) und vertraut dir mit den vorhandenen Verzeichnissen und Dateien.

  1. Wechseln Sie als Benutzer hadoop mit dem Befehl su - hadoop. Anschließend erstellen Sie Dateien und Verzeichnisse mit dem folgenden Code:
hdfs dfs -mkdir -p /cargo_space/fine_silks
hdfs dfs -touchz /cargo_space/spices.txt
  1. Verwenden Sie den folgenden Code, um die erstellten Dateien und Verzeichnisse anzuzeigen:
hdfs dfs -ls -R /cargo_space

Dieser Befehl listet den Inhalt des Verzeichnisses /cargo_space auf.

  1. Abfragen Sie die detaillierten statistischen Informationen des angegebenen Verzeichnisses im HDFS und zeigen Sie die Quota-Situation an:
hdfs dfs -count -q /cargo_space

Hier ist die Erklärung des obigen Befehls:

  • hdfs: stellt das Befehlszeilentool für das Hadoop-verteilte Dateisystem dar.
  • dfs: stellt die Befehlssammlung dar, die auf das verteilte Dateisystem operiert.
  • -count: Dieser Parameter wird verwendet, um die Anzahl der Dateien und das Verzeichnis im angegebenen Verzeichnis zu zählen.
  • -q: Dieser Parameter gibt an, dass die Quota-Informationen für das Verzeichnis angezeigt werden sollen. Die Quota-Informationen umfassen die von dem Dateisystem für das Verzeichnis festgelegten Speicherplatz- und Dateizählgrenzen.
  • /cargo_space: Dies ist der Pfad zum Zielverzeichnis der Befehlsausführung.

Sie werden die folgenden Ergebnisse sehen:

none             inf            none             inf            2            1                  0 /cargo_space

Die Ergebnisse werden nacheinander wie folgt erklärt:

  • none: Die Anzahl der Dateienquota (d.h. Name-Quota) ist nicht begrenzt.
  • inf: Die Anzahl der verbleibenden Dateien unter der Grenze ist unendlich.
  • none: Die Diskusplatzquota ist nicht begrenzt.
  • inf: Der verbleibende Speicherplatz unter der Grenze ist unbegrenzt.
  • 2: Die Anzahl der Dateien oder Verzeichnisse im Verzeichnis /cargo_space ist 2.
  • 1: Die gespeicherten Daten in /cargo_space belegen 1 Speicherplatz.
  • 0 /cargo_space: Das Verzeichnis /cargo_space hat eine zusätzliche Diskusplatznutzung von 0 Byte.

Ein Speicherplatzlimit für ein Verzeichnis festlegen

In diesem Schritt lernst du, wie du ein Speicherplatzlimit für ein Verzeichnis im HDFS festlegst, was die Gesamtplatznutzung auf diesem Verzeichnis und seinen Unterverzeichnissen begrenzt.

  1. Lege ein Limit von 1 GB (1073741824 Byte) für das Verzeichnis /cargo_space fest, indem du folgendes ausführst:
hdfs dfsadmin -setSpaceQuota 1073741824 /cargo_space

Dieser Befehl legt ein Speicherplatzlimit von 1 GB für das Verzeichnis /cargo_space und seine Unterverzeichnisse fest.

  1. Abfrage die detaillierten statistischen Informationen des angegebenen Verzeichnisses im HDFS und zeige die Quota-Situation an:
hdfs dfs -count -q /cargo_space

Ein Namenslimit für ein Verzeichnis festlegen

Neben der Festlegung eines Speicherplatzlimits erlaubt HDFS auch, ein Limit für die maximale Anzahl von Dateien und Verzeichnissen innerhalb eines Verzeichnisses festzulegen. In diesem Schritt lernst du, wie du dieses Namenslimit festlegst.

  1. Lege ein Limit von 10 Dateien/Verzeichnissen für das Verzeichnis /cargo_space fest, indem du folgendes ausführst:
hdfs dfsadmin -setQuota 10 /cargo_space

Dieser Befehl legt ein Namenslimit von 10 Dateien und Verzeichnissen für das Verzeichnis /cargo_space und seine Unterverzeichnisse fest.

  1. Um das Limit zu überprüfen, führe folgenden Befehl aus:
hdfs dfs -count -q /cargo_space

Dieser Befehl wird die aktuelle Anzahl von Dateien und Verzeichnissen sowie das Limit für das angegebene Verzeichnis anzeigen.

Quota-Limits für Verzeichnisse entfernen

In diesem Schritt lernst du, wie du Quota-Limits für Verzeichnisse im HDFS entfernst, was sowohl die zuvor festgelegten Speicherplatzquotas als auch die Namensquotas umfasst.

Entfernen von Speicherplatzquotas

  1. Für das Verzeichnis /cargo_space führe folgenden Befehl aus, um seinen Speicherplatzquota zu entfernen:
hdfs dfsadmin -clrSpaceQuota /cargo_space

Dieser Befehl entfernt das Speicherplatzquota-Limit für das Verzeichnis /cargo_space und seine Unterverzeichnisse.

  1. Um zu bestätigen, dass das Quota entfernt wurde, frage die detaillierten Statistiken des angegebenen Verzeichnisses ab und zeige das Quota an:
hdfs dfs -count -q /cargo_space

Entfernen des Namensquotas

  1. Für das Verzeichnis /cargo_space führe folgenden Befehl aus, um seine Datei- und Verzeichniszählquotas zu entfernen:
hdfs dfsadmin -clrQuota /cargo_space

Dieser Befehl entfernt die Datei- und Verzeichnisquota-Limits für das Verzeichnis /cargo_space und seine Unterverzeichnisse.

  1. Um zu verifizieren, dass das Quota entfernt wurde, führe folgenden Befehl aus:
hdfs dfs -count -q /cargo_space

An diesem Punkt kannst du sicher sein, dass das Verzeichnis /cargo_space nicht mehr den zuvor festgelegten Quota-Limits unterliegt.

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Hadoop-Quota-Management-Labor erfolgreich abgeschlossen und die grundlegenden Techniken zum Verwalten von Speicherressourcen im Hadoop Distributed File System (HDFS) beherrscht. Durch das Camelot-Szenario haben Sie gelernt, wie Sie die aktuelle Speicherauslastung erkunden, Speicherplatzquotas und Namensquotas implementieren. Diese praktische Erfahrung verbessert nicht nur Ihre praktischen Fähigkeiten, sondern hebt auch die Wichtigkeit der effizienten Ressourcenverwaltung in verteilten Systemen wie Hadoop hervor.