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

最終更新日: 2020 年 1 月 14 日

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

解決方法

大きなファイルの場合、アップロード速度を最大化するために、Amazon S3 が複数のアップロードに分割する場合があります。Amazon S3 コンソールは、セッションタイムアウトのため、大きなアップロード中にタイムアウトすることがあります。

Amazon S3 コンソールを使用するのではなく、AWS コマンドラインインターフェイス (AWS CLI) または AWS SDK を使用してファイルをアップロードしてみてください。

AWS CLI

まず、AWS CLI のインストールして設定します。AWS CLI の設定は、必ず正しい Amazon S3 へのアクセス権限を持つ AWS Identity and Access Management (IAM) ユーザーまたはロールの認証情報で行ってください。

次に、大きなファイルをアップロードするには、次のようなコマンドを実行します。

aws s3 cp cat.png s3://awsexamplebucket

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

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

高レベル (aws s3) コマンドまたは低レベル (aws s3api) コマンドを使用したマルチパートアップロードの詳細については、「AWS CLI を使用して、Amazon S3 へのファイルのマルチパートアップロードを実行する方法を教えてください」を参照してください。

AWS SDK

大きなファイルをアップロードするプログラム可能なアプローチについては、AWS SDK for Java などの AWS SDK の使用を検討してください。操作の例については、「AWS SDK for Java を使用したオブジェクトのアップロード」を参照してください。

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


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

改善できることはありますか?


さらにサポートが必要な場合