不安定な接続で大きなファイルを S3 にアップロードするにはどうすればよいでしょうか?

不安定な接続で大きなファイルを S3 にアップロードするにはどうすればよいでしょうか?

S3 バケットにアップロードする必要があるファイル (500 MB から 7 GB) が多数あります。接続が非常に不安定です。

500MBのファイルをアップロードしようとしましたs3cmdが、91%完了後にタイムアウトしました(16時間かかりました)

Cyber​​Duck で試してみましたが、同じことが起こりました。20% 程度で失敗し、転送を再試行すると最初からやり直しになりました。Cyber​​Duck はマルチパートをサポートしているはずですが、そうではないようです...

次のようにファイルを小さなファイルに分割できます。.zip ファイルを複数のセグメントに分割するにはどうすればよいですか?しかし、それが唯一の選択肢でない限り、私はそうしたくないです。再開サポート付きで大きなファイルを S3 にアップロードできる、使用できる優れたプログラムは何ですか?

答え1

s3tools (s3cmd-1.5.0-rc1) を使ってみました。FAQからヒントを得ました。http://s3tools.org/kb/item13.htm。 以下を参照してください。

s3cmd はマルチパートアップロードをサポートしていますか?

はい、s3cmd の最新バージョンは Amazon S3 マルチパートアップロードをサポートしています。

アップロードするファイルが 15 MB を超える場合、マルチパート アップロードが自動的に使用されます。その場合、ファイルは複数の部分に分割され、各部分のサイズは 15 MB になります (最後の部分はより小さくなる場合があります)。各部分は個別にアップロードされ、転送が完了すると送信先で再構築されます。

この新しい機能により、パーツのアップロードが失敗した場合でも、すでにアップロードされている他のパーツに影響を与えることなく、アップロードを再開できます。

s3cmd には、マルチパートアップロードに関連する 2 つのオプションがあります。

--マルチパートを無効にする

すべてのファイルのマルチパートアップロードを無効にする

そして

--multipart-chunk-size-mb=サイズ

マルチパートアップロードの各チャンクのサイズ。SIZE より大きいファイルは自動的にマルチスレッド マルチパートとしてアップロードされ、小さいファイルは従来の方法でアップロードされます。SIZE はメガバイト単位で、デフォルトのチャンク サイズは 15 MB、許容される最小チャンク サイズは 5 MB、最大は 5 GB です。

そのため、アップロードするときには、最小のチャンク サイズを選択します。以下のように、アップロードの分割と再開が表示されます。

$ s3cmd put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/

some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 1 of 52, 5MB]
 5242880 of 5242880   100% in  164s    31.08 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 2 of 52, 5MB]
 5242880 of 5242880   100% in  193s    26.46 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 3 of 52, 5MB]
 2023424 of 5242880    38% in  135s    14.59 kB/s^CERROR: 
some_video.mp4' part 3 failed. Use
  /usr/local/bin/s3cmd abortmp s3://some_bucket/some_video.mp4 XXX_SOME_HASH_XXX
to abort the upload, or
  /usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put ...
to continue the upload.
See ya!

それでは再開します。

/usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/

答え2

Cyber​​duck の転送ウィンドウでは、右クリックして再開を選択できると思います。

それでもダメならクラウドベリーアップロードの再開をサポート

答え3

FileZilla Pro を使用して、S3 バケットとの間でファイルを転送できます。FileZilla Pro はマルチパートアップロードをサポートしており、失敗した場合は転送を再開します。

ちなみに、このアプリには、大容量ファイルのサポート、一括転送、フィルター、ディレクトリ比較、リモート ファイル検索、ドラッグ アンド ドロップ、速度制限の設定など、他にも多くの機能が備わっています。

私はFileZilla Proチームのメンバーです。

詳細はこちらhttps://filezillapro.comそしてhttps://youtube.com/c/FileZillaPro

関連情報