Wie finde ich die Größe einer HDFS-Datei? Mit welchem Befehl sollte die Größe einer Datei in HDFS ermittelt werden?So finden Sie die Größe einer HDFS-Datei
Antwort
Sie können den Befehl hadoop fs -ls
verwenden, um Dateien im aktuellen Verzeichnis sowie deren Details aufzulisten. Die 5. Spalte in der Befehlsausgabe enthält die Dateigröße in Bytes.
Für z.B. Befehl hadoop fs -ls input
gibt folgende Ausgabe:
Found 1 items
-rw-r--r-- 1 hduser supergroup 45956 2012-07-19 20:57 /user/hduser/input/sou
Die Größe der Datei sou
45.956 Bytes.
Ich finde mich auch mit hadoop fs -dus <path>
sehr viel. wenn ein Verzeichnis auf HDFS zum Beispiel den Namen „/ user/Frylock/Eingabe“ 100 Dateien enthält, und Sie müssen die Gesamtgröße für alle diese Dateien könnten Sie laufen:
hadoop fs -dus /user/frylock/input
und Sie würden die Gesamtgröße zurück (in Byte) aller Dateien im Verzeichnis "/ user/frylock/input".
Denken Sie auch daran, dass HDFS Daten redundant speichert, sodass der tatsächlich von einer Datei belegte physische Speicher 3x oder mehr sein kann, als von hadoop fs -ls
und hadoop fs -dus
gemeldet wird.
Zusätzlich zu dem letzten Punkt - der Replikationsfaktor ist die Nummer nach den Genehmigungsflags angezeigt, und vor dem Besitzer (2. Spalte in @ adhunavkulkarni's Antwort) –
hadoop fs -du -s
Verwenden Sie 'hadoop fs -du -s -h/Benutzer/frylock/Eingabe' für eine viel lesbarere Ausgabe. – axiom
Wenn Sie dies über die API tun möchten, können Sie die Methode 'getFileStatus()' verwenden.
Es ist nicht richtig, es gibt keine Dateigröße zurück es zugewiesene Blockgröße, die für leere Dateien nicht Null sein wird. Der Standardwert ist 67108864. – user1613360
Ich benutzte die folgende Funktion, die mir half, die Dateigröße zu bekommen.
public class GetflStatus
{
public long getflSize(String args) throws IOException, FileNotFoundException
{
Configuration config = new Configuration();
Path path = new Path(args);
FileSystem hdfs = path.getFileSystem(config);
ContentSummary cSummary = hdfs.getContentSummary(path);
long length = cSummary.getLength();
return length;
}
}
Können Sie mir bitte sagen, wenn dies 7906 zurückgibt, was ist dann die Größe dieses Verzeichnisses? Ist es in Bytes oder in Kbs? – retiremonk
Siehe den Befehl unten mit awk Skript die Größe (in GB) der gefilterten Ausgabe in HDFS zu sehen:
hadoop fs -du -s /data/ClientDataNew/**A*** | awk '{s+=$1} END {printf "%.3fGB\n", s/1000000000}'
Ausgang ---> 2.089GB
hadoop fs -du -s /data/ClientDataNew/**B*** | awk '{s+=$1} END {printf "%.3fG\n", s/1000000000}'
Ausgang ---> 1.724GB
hadoop fs -du -s /data/ClientDataNew/**C*** | awk '{s+=$1} END {printf "%.3fG\n", s/1000000000}'
Ausgabe ---> 0.986GB
- 1. So finden Sie die wahre Größe ("logischer Bereich") einer TScrollBox
- 2. So ermitteln Sie die Größe einer Zeichenfolge bei einer Schriftart
- 3. Finden Sie die Größe der unbekannten Größe Array
- 4. So steuern Sie die Größe von Bildanhängen in einer NSTextView
- 5. So erhöhen Sie die Player-Klasse Größe Bei einer Kollision?
- 6. So berechnen Sie die Größe eines UIFont
- 7. So ändern Sie die Größe eines Bildhintergrunds
- 8. So erhalten Sie die ResultSet-Größe
- 9. So ändern Sie die Größe der Aktionsleiste
- 10. So ändern Sie die Größe eines Popover
- 11. So finden Sie die cdh-Version hadoop
- 12. So finden Sie die Versionsnummer von libxxx.a
- 13. So finden Sie "Löcher" in einer Tabelle
- 14. So finden Sie die Länge einer Audiodatei (in Sekunden)
- 15. So finden Sie die Quelle einer Joomla-Seite
- 16. So finden Sie die Version einer Crystal Reports-RPT-Datei?
- 17. So finden Sie die untergeordneten Elemente einer RibbonComboBox
- 18. So finden Sie, ob die Maus über einer Ansicht ist
- 19. So finden Sie die Leistung einer Zahl in SQLite
- 20. So finden Sie die Cursorposition in einer JTextArea
- 21. So finden Sie die Objektgröße (einschließlich enthaltener Objekte)
- 22. Finden Sie die Breite eines Auto-Größe Element
- 23. So finden Sie den vorletzten Datensatz in einer Gruppe finden Sie die letzte
- 24. So finden Sie die Länge eines LPCSTR
- 25. So finden Sie die innereHTML eines Elements
- 26. So finden Sie die Registerkarte (TabControl) auf
- 27. So finden Sie die Woche des Monats
- 28. So finden Sie die Cognito Pool ID
- 29. So finden Sie Bildverschlüsselungsalgorithmus
- 30. So finden Sie Median
Wie würden Sie die Größe in der vom Menschen lesbaren Form ausgeben? -ls - lah funktioniert hier nicht –