Amazon Simple Storage Service
コンソールユーザーガイド

S3 バケット内でフォルダを使用する方法

Amazon S3 で、バケットとオブジェクトは主要なリソースであり、オブジェクトがバケットに格納されます。Amazon S3 はフラットな構造であり、ファイルシステムに見られる階層はありません。ただし、構造を分かりやすくするため、Amazon S3 コンソールは、オブジェクトのグループ化の方法としてフォルダーの概念をサポートしています。Amazon S3 ではそのために、オブジェクトに共通の名前プレフィックスが使用されます (つまり、共通の文字列で始まる名前が付けられます)。オブジェクト名はキー名とも呼ばれます。

たとえば、コンソールで photos という名前のフォルダを作成し、その中に myphoto.jpg という名前のオブジェクトを保存できます。このオブジェクトはキー名 photos/myphoto.jpg で保存され、photos/ がプレフィックスになります。

ここでは、さらに 2 つの例を示します。

  • バケットに logs/date1.txtlogs/date2.txtlogs/date3.txt という 3 つのオブジェクトがある場合、コンソールには logs という名前のフォルダが表示されます。コンソールでフォルダーを開くと、date1.txtdate2.txtdate3.txt という 3 つのオブジェクトが表示されます。

  • photos/2017/example.jpg という名前のオブジェクトがある場合、コンソールには、フォルダー photos とオブジェクト 2017 を格納した example.jpg という名前のフォルダーが表示されます。

フォルダー内にフォルダーを作成できますが、バケット内にバケットを作成することはできません。オブジェクトをフォルダーに直接アップロードしてコピーできます。フォルダーは、作成、削除、公開することができますが、名前を変更することはできません。オブジェクトはフォルダ間でコピーすることができます。

重要

Amazon S3 コンソールでは、キー名の最後 (末尾) の文字がスラッシュ「/」になっているすべてのオブジェクト (examplekeyname/ など) がフォルダとして扱われます。キー名の末尾が「/」のオブジェクトは、Amazon S3 コンソールを使用してアップロードすることができません。ただし、名前の末尾が「/」のオブジェクトは、Amazon S3、AWS CLI を使用した API、AWS SDK、または REST API を使用してアップロードできます。

名前の末尾が「/」のオブジェクトは、Amazon S3 コンソールではフォルダとして扱われます。Amazon S3 コンソールには、このようなオブジェクトのコンテンツやメタデータが表示されません。Amazon S3 コンソールを使用して名前の末尾が「/」のオブジェクトをコピーすると、コピー先の場所に新しいフォルダが作成されますが、オブジェクトのデータとメタデータはコピーされません。