Amazon Simple Storage Service (Amazon S3) のリクエストレートのプレフィックスとネストされたフォルダについて知りたいと考えています。
解決策
プレフィックス
キープレフィックスは、オブジェクト名の前に完全なパスを付けることができる文字列です。これにはバケット名が含まれます。たとえば、オブジェクト (123.txt) が BucketName/Project/WordFiles/123.txt として保存されている場合、プレフィックスは BucketName/Project/WordFiles/123.txt になることがあります。プレフィックスは、オブジェクトキー名全体など、任意の長さにすることができます。
123.txt ファイルがパスが指定されていないバケット内にある場合、Amazon S3 はリクエストレートに従ってプレフィックス値を自動的に調整します。パーティションは、プレフィックス文字列のどの位置でも自動的に形成されます。
バケット内のパーティション化されたプレフィックスは、1 秒あたり 3,500 件の PUT/COPY/POST/DELETE または 5,500 件の GET/HEAD リクエストをサポートできます。バケットに設定できるプレフィックスの数に制限はありません。ただし、リクエストレートが急上昇すると、スロットリングが発生する可能性があります。
**注:**Amazon S3 には、キーやオブジェクト用のパーティションはありません。パーティションはプレフィックスレベルにのみ存在し、オブジェクトレベルには存在しません。Amazon S3 でプレフィックスを使用する方法の詳細については、「プレフィックスを使用してオブジェクトを整理する」を参照してください。
フォルダ
Amazon S3 でフォルダを作成すると、サービスは指定されたフォルダ名に設定されたキーを使用して 0 バイトのオブジェクトを作成します。
Amazon S3 では、フォルダはオブジェクトをグループ化し、ファイルを整理します。従来のファイルシステムとは異なり、Amazon S3 はオブジェクトとファイルの整理に階層を使用しません。Amazon S3 コンソールは、オブジェクトをグループ化して表示する方法としてのみフォルダ概念をサポートしています。
フォルダは 2 つのスラッシュ (/) 文字の間の値です。たとえば、ファイルを BucketName/Project/WordFiles/123.txt として保存するとします。このファイルパスには、「Project」というフォルダと、「WordFiles」というサブフォルダーがあります。Project と WordFiles はどちらもフォルダです。パスが指定されていないバケットに 123.txt ファイルを保存した場合、Amazon S3 はフォルダを使用してファイルを保存しません。
**注:**フォルダ構造には、リクエストレートをサポートするパーティション化されたプレフィックスが示されていない場合があります。
プレフィックスとフォルダの違い
プレフィックスとフォルダの違いは、スラッシュ文字の重要性です。フォルダの場合、この文字はサブフォルダまたはオブジェクト名を示します。プレフィックスの場合、スラッシュは単なる文字であり、パーティションの配置を示すものではありません。
**注:**フォルダ構造は Amazon S3 コンソールにのみ適用されます。詳細については、「フォルダを使用して Amazon S3 コンソールでオブジェクトを整理する」を参照してください。
関連情報
AWS re:Invent 2018: Amazon S3 と Amazon S3 Glacier のベストプラクティス
オブジェクトの整理、一覧表示、操作