Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 16499|Antwort: 0

[Quelle] Dateien direkt von Hadoop HDFS herunterladen

[Link kopieren]
Veröffentlicht am 10.07.2019 14:20:11 | | |
Laden Sie große Dateien von HDFS herunter

Ich habe eine große Datei (etwa 2 GB) DataInputStream vom HDFS-Client bekommen und muss sie als Datei auf meinem Host speichern.

Ich überlege, Apache Common IOUtils zu verwenden und so etwas zu machen......


Ich habe nach anderen Lösungen gesucht, die besser sind als diese hier. Das Hauptanliegen ist die Verwendung von Pufferung in Input und IOUtils.copy.

Für Dateien größer als 2GB wird empfohlen, IOUtils.copyLarge() zu verwenden (wenn wir von denselben IOUtils sprechen: org.apache.commons.io.IOUtils)

Die Replik in IOUtils verwendet die Standardpuffergröße von 4Kb (obwohl man eine weitere Puffergröße als Parameter angeben kann).

Der Unterschied zwischen copy() und copyLarge() besteht darin, dass das Ergebnis zurückgegeben wird.

Denn copy(), wenn der Strom größer als 2 GB ist, wirst du die Kopie erfolgreich verwenden, aber das Ergebnis ist -1.

Für copyLarge() ist das Ergebnis die Anzahl der vollständig kopierten Bytes.

Mehr dazu in der Dokumentation finden Sie hier:


Der Hyperlink-Login ist sichtbar.



Wie man über die Spring Rest API überprüft, ob eine Datei vollständig heruntergeladen ist.

Ich habe eine einfache REST-API erstellt, um Dateien von hdfs bereitzustellen (die Dateien sind groß und ich möchte sie nicht lokal kopieren).

Ich möchte die Informationen dokumentieren, die der Download erfolgreich abgeschlossen hat, also den gesamten Stream lesen, aber ich weiß nicht wie. Ich kann nur die Informationen notieren, dass der Dateidownload begonnen hat.

Jede Hilfe wäre sehr willkommen.


Du kannst versuchen, einen Wrapper auf dem InputStream zu erstellen und einige Flags auf dem Stream close(close()) auszulösen.

Zum Beispiel können Sie ProxyInputStream als Grundlage verwenden:








Vorhergehend:Teilen Sie einige ausgemessene Webseiten, um SMS-Verifizierungscodes online zu erhalten
Nächster:JS--Plugin: Baumentwicklung und Implementierungsanhang ist herunterladbar!!
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com