Die Amazon S3-Dateigrößenbeschränkung soll gemäß dieser Ankündigung , aber ich bekomme den folgenden Fehler beim Hochladen einer 5G-Datei
%Vor% Das lässt den Eindruck entstehen, dass S3 nur 5G-Uploads akzeptiert. Ich verwende Apache Spark SQL, um einen Parquet-Datensatz mit der SchemRDD.saveAsParquetFile
-Methode auszugeben.
Die vollständige Stapelverfolgung ist
Ist das Upload-Limit immer noch 5T? Wenn das der Grund ist, warum bekomme ich diesen Fehler und wie behebe ich ihn?
Die Objekt Größe ist auf 5 TB begrenzt. Die Größe hochladen beträgt immer noch 5 GB, wie im Handbuch erklärt:
Abhängig von der Größe der hochgeladenen Daten bietet Amazon S3 die folgenden Optionen:
Objekte in einer einzigen Operation hochladen - Mit einer einzigen
PUT
-Operation können Sie Objekte mit einer Größe von bis zu 5 GB hochladen.Objekte in Teilen hochladen - Mit der Multipart-Upload-API können Sie große Objekte bis zu 5 TB hochladen.
Sobald Sie einen mehrteiligen Upload durchgeführt haben, überprüft und kombiniert S3 die Teile und Sie haben dann ein einzelnes Objekt in S3 mit einer Größe von bis zu 5 TB, das als einzelne Entität mit einer einzigen HTTP GET
-Anforderung heruntergeladen werden kann ... aber das Hochladen ist möglicherweise viel schneller, sogar bei Dateien, die kleiner als 5 GB sind, da Sie die Teile parallel hochladen und sogar das Hochladen von Teilen, die beim ersten Versuch nicht erfolgreich waren, wiederholen können.
Der Trick scheint normalerweise herauszufinden, wie man S3 anweist, einen mehrteiligen Upload durchzuführen. Um Daten von HDFS nach S3 zu kopieren, können Sie das Dateisystem s3n verwenden und speziell Multipart-Uploads mit fs.s3n.multipart.uploads.enabled=true
Dies kann wie folgt durchgeführt werden:
%Vor%Und weitere Konfiguration finden Sie hier: Ссылка
Tags und Links amazon-s3 apache-spark apache-spark-sql parquet jets3t