Amazon S3 コンソールを使用してサイズの大きいファイルをアップロードしようとしています。アップロードが失敗するのはなぜですか?

最終更新日: 2021 年 1 月 26 日

コンソールを使用して、サイズの大きいファイル (1 GB 以上) を Amazon Simple Storage Service (Amazon S3) にアップロードしようとしています。ただし、アップロードが永続的に失敗し、タイムアウトエラーが発生する場合があります。どうすればこの問題を解決できますか?

解決方法

サイズの大きいファイルの場合、Amazon S3 はアップロード速度を最大化するため、ファイルを複数のアップロードに分割することがあります。Amazon S3 コンソールは、セッションタイムアウトのため、サイズの大きいファイルのアップロード中にタイムアウトすることがあります。Amazon S3 コンソールを使用する代わりに、AWS コマンドラインインターフェイス (AWS CLI) または AWS SDK を使用してファイルをアップロードしてみてください。

注: Amazon S3 コンソールを使用する場合、アップロードの最大ファイルサイズは 160 GB です。160 GB を超えるファイルをアップロードするには、AWS CLI、AWS SDK、または Amazon S3 REST API を使用します。

AWS CLI

最初に、AWS CLI をインストールして設定します。必ず、AWS Identity and Access Management (IAM) ユーザーまたはロールの認証情報を使用して、AWS CLI を設定します。IAM ユーザーまたはロールは、Amazon S3 にアクセスするための正しいアクセス許可を持っている必要があります。

重要: AWS CLI コマンドの実行時にエラーが発生した場合は、AWS CLI の最新バージョンを使用していることを確認してください

サイズの大きいファイルをアップロードするには、cp コマンドを実行します。

aws s3 cp cat.png s3://docexamplebucket

注: ファイルは、コマンドを実行しているのと同じディレクトリにある必要があります。

aws s3 cp などの高レベル (aws s3) コマンドを実行する場合、Amazon S3 は、サイズの大きいオブジェクトについて自動的にマルチパートアップロードを実行します。マルチパートアップロードでは、サイズの大きいファイルは複数のパートに分割され、Amazon S3 に個別にアップロードされます。すべてのパートがアップロードされると、Amazon S3 はパートを単一のファイルに結合します。マルチパートアップロードを使用すると、アップロードが高速になり、サイズの大きいファイルで失敗する可能性が低くなります。

マルチパートアップロードの詳細については、「AWS CLI を使用して、Amazon S3 にファイルをマルチパートアップロードする方法を教えてください」をご参照ください。

AWS SDK

サイズの大きいファイルのアップロードに関するプログラムによる手法については、AWS SDK for Java など、AWS SDK の使用をご検討ください。オペレーション例については、「AWS SDK for Java を使用したオブジェクトのアップロード」をご参照ください。

注: アプリケーションを開発および管理するための AWS SDK とプログラミングツールキットを網羅したリストについては、「AWS での構築ツール」をご参照ください。


この記事はお役に立ちましたか?


請求に関するサポートまたは技術サポートが必要ですか?