

# S3 Metadata ライブインベントリテーブルスキーマ
<a name="metadata-tables-inventory-schema"></a>

ライブインベントリテーブルは、バケット内のすべてのオブジェクトとそのバージョンのシンプルでクエリ可能なインベントリを提供するため、データの最新の状態を判断できます。オブジェクトの更新は、通常 1 時間以内にインベントリテーブルに反映されます。

このテーブルを使用すると、さまざまなワークロードに対して処理するオブジェクトを特定することで、ビジネスワークフローとビッグデータジョブを簡素化および高速化できます。例えば、インベントリテーブルをクエリして、以下を実行できます。
+ S3 Glacier Deep Archive ストレージクラスに保存されているすべてのオブジェクトを検索します。
+ オブジェクトタグのディストリビューションを作成するか、タグなしでオブジェクトを検索します。
+ AWS Key Management Service (AWS KMS) キーによるサーバー側の暗号化 (SSE-KMS) を使用して暗号化されていないすべてのオブジェクトを検索します。

メタデータテーブル設定のインベントリテーブルを有効にすると、テーブルは*バックフィル*と呼ばれるプロセスを実行し、そのプロセス中に Amazon S3 は汎用バケットをスキャンして、バケット内のすべてのオブジェクトの初期メタデータを取得します。バケット内のオブジェクトの数によっては、このプロセスに数分 (最小 15 分) から数時間かかる場合があります。バックフィルプロセスが完了すると、インベントリテーブルのステータスが **[バックフィル]** から **[アクティブ]** に変わります。バックフィルが完了すると、通常、オブジェクトの更新は 1 時間以内にインベントリテーブルに反映されます。

**注記**  
インベントリテーブルのバックフィルの実行は課金されます。汎用バケットに 10 億個を超えるオブジェクトがある場合は、インベントリテーブルの月額料金も請求されます。詳細については、[Amazon S3 の料金](https://aws.amazon.com/s3/pricing/) を参照してください。

Amazon S3 Metadata インベントリテーブルには行と列が含まれています。各行は、汎用バケット内のオブジェクトの現在の状態を表します。インベントリテーブルは、バケット内のすべてのオブジェクトのシンプルでクエリ可能なインベントリを提供するため、データの現在の状態を判断できます。

以下は、`amzn-s3-demo-bucket:` という名前の汎用バケットのインベントリテーブルの例です。

```
bucket                key                        sequence_number                                                                                          version_id   is_delete_marker   size   last_modified_date   e_tag	                          storage_class   is_multipart   encryption_status   is_bucket_key_enabled   kms_key_arn                                                                   checksum_algorithm   object_tags   user_metadata	                                                                                                                  
amzn-s3-demo-bucket   Finance/statement1.pdf     80e737d8b4d82f776affffffffffffffff006737d8b4d82f776a00000000000000000000000000000000000000000000000072                FALSE              6223   11/15/2024 23:26     e131b86632dda753aac4018f72192b83    STANDARD	  FALSE          SSE-KMS             FALSE                   arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890df   SSECRC32             {}            {count -> Asia, customs -> false, family -> true, location -> Mary, name -> football, user -> United States}                      
amzn-s3-demo-bucket   s3-dg.pdf                  80e737d8b4e39f1dbdffffffffffffffff006737d8b4e39f1dbd00000000000000000000000000000000000000000000000072                FALSE              3554   11/15/2024 23:26     9bb49efc2d92c05558ddffbbde8636d5    STANDARD	  FALSE          DSSE-KMS            FALSE                   arn:aws:kms:us-east-1:936810216292:key/0dcebce6-49fd-4cae-b2e2-5512ad281afd   SSESHA1              {}            {}                                                                                                                                
amzn-s3-demo-bucket   Development/Projects.xls   80e737d8b4ed9ac5c6ffffffffffffffff006737d8b4ed9ac5c600000000000000000000000000000000000000000000000072                FALSE              7746   11/15/2024 23:26     729a6863e47fb9955b31bfabce984908    STANDARD	  FALSE          SSE-S3              FALSE                   NULL                                                                          SSECRC32             {}            {count -> Asia, customs -> Canada, family -> Billiards, filter -> true, location -> Europe, name -> Asia, user -> United States}
```

インベントリテーブルには次のスキーマがあります。


| 列名 | 必須? | データ型 |   | 
| --- | --- | --- | --- | 
|  `bucket`  | はい | String | 汎用バケット名。詳細については、「[汎用バケットの命名規則](bucketnamingrules.md)」を参照してください。 | 
|  `key`  | はい | String | バケット内のオブジェクトを一意に識別するオブジェクトのキー名 (またはキー)。詳細については、「[Amazon S3 オブジェクトに命名する](object-keys.md)」を参照してください。 | 
|  `sequence_number`  | はい | String |  シーケンス番号。特定のオブジェクトのレコードに含まれる序数です。同じバケットとキーのレコードを順に並べるには、`sequence_number` でソートできます。特定のバケットとキーについて、`sequence_number` 値が辞書順で大きいほど、レコードがより最近バケットに導入されたことを意味します。  | 
|  `version_id`  | いいえ | String |  オブジェクトのバージョン ID。バケットのバージョニングを有効にすると、Amazon S3 はバケットに追加されたオブジェクトにバージョン番号を割り当てます。詳細については、「[S3 バージョニングによる複数のバージョンのオブジェクトの保持](Versioning.md)」を参照してください。 バージョニング状態を設定する前にバケットに保存されたオブジェクトのバージョン ID は null です。  | 
|  `is_delete_marker`  | いいえ | ブール値 |  オブジェクトの削除マーカーのステータス。オブジェクトが削除マーカーの場合、この値は `True` です。それ以外の場合は、`False` です。詳細については、「[削除マーカーの使用](DeleteMarker.md)」を参照してください。  削除マーカーに追加される行の `record_type` 値は `DELETE` ではなく `UPDATE_METADATA` です。S3 ライフサイクルの有効期限が切れた結果として削除マーカーが作成された場合、`requester` 値は `s3.amazonaws.com` です。   | 
|  `size`  | いいえ | Long |  バイト単位のオブジェクトサイズ。不完全なマルチパートアップロードまたはオブジェクトメタデータのサイズは含まれません。`is_delete_marker` が `True` の場合、サイズは `0` です。詳細については、「[システムで定義されたオブジェクトメタデータ](UsingMetadata.md#SysMetadata)」を参照してください。  | 
|  `last_modified_date`  | いいえ | Timestamp NTZ (タイムゾーンなし) |  オブジェクト作成日または最終更新日のいずれか遅い方。マルチパートアップロードの場合、オブジェクトの作成日はマルチパートアップロードが開始された日付です。詳細については、「[システムで定義されたオブジェクトメタデータ](UsingMetadata.md#SysMetadata)」を参照してください。  | 
|  `e_tag`  | いいえ | String |  エンティティタグ (ETag) は、オブジェクトのハッシュです。ETag は、変更をオブジェクトのコンテンツにのみ反映し、メタデータには反映しません。ETag は、オブジェクトデータの MD5 ダイジェストである場合があります。ETag が MD5 ダイジェストであるかどうかは、オブジェクトの作成方法と暗号化方法によって異なります。詳細については、「**Amazon S3 API リファレンス」の「[https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html)」を参照してください。  | 
|  `storage_class`  | いいえ | String |  オブジェクトの保存に使用されるストレージクラス。`STANDARD`、`REDUCED_REDUNDANCY`、`STANDARD_IA`、`ONEZONE_IA`、`INTELLIGENT_TIERING`、`GLACIER`、`DEEP_ARCHIVE`、`GLACIER_IR` のいずれかです。詳細については、「[Amazon S3 ストレージクラスの理解と管理](storage-class-intro.md)」を参照してください。  | 
|  `is_multipart`  | いいえ | ブール値 |  オブジェクトのアップロードタイプ。オブジェクトがマルチパートアップロードとしてアップロードされた場合、この値は `True` です。それ以外の場合は、`False` です。詳細については、「[Amazon S3 でのマルチパートアップロードを使用したオブジェクトのアップロードとコピー](mpuoverview.md)」を参照してください。  | 
|  `encryption_status`  | いいえ | String |  使用される暗号化キーの種類に応じた、オブジェクトのサーバー側の暗号化ステータス。Amazon S3 マネージドキーによるサーバー側の暗号化 (SSE-S3)、AWS Key Management Service (AWS KMS) キーによるサーバー側の暗号化 (SSE-KMS)、AWS KMS keys による二層式サーバー側の暗号化 (DSSE-KMS)、またはお客様が指定したキーによるサーバー側の暗号化 (SSE-C) のいずれかとなります。オブジェクトが暗号化されていない場合、この値は null です。可能な値は、`SSE-S3`、`SSE-KMS`、`DSSE-KMS`、`SSE-C`、または null です。詳細については、「[暗号化によるデータの保護](UsingEncryption.md)」を参照してください。  | 
|  `is_bucket_key_enabled`  | いいえ | ブール値 |  オブジェクトの S3 バケットキーの有効化ステータス。オブジェクトが SSE-KMS に S3 バケットキーを使用する場合、この値は `True` です。それ以外の場合は、`False` です。詳細については、「[オブジェクトレベルで S3 バケットキーを設定する](configuring-bucket-key-object.md)」を参照してください。  | 
|  `kms_key_arn`  | いいえ | String |  `encryption_status` が `SSE-KMS` または `DSSE-KMS` の行の場合、オブジェクトの暗号化に使用される KMS キーの Amazon リソースネーム (ARN)。オブジェクトが SSE-KMS または DSSE-KMS で暗号化されていない場合、値は null です。詳細については、「[AWS KMS キーによるサーバー側の暗号化 (SSE-KMS) の使用](UsingKMSEncryption.md)」および「[AWS KMS キーによる二層式サーバー側の暗号化 (DSSE-KMS) の使用](UsingDSSEncryption.md)」を参照してください。  行が、削除または上書きイベントが処理された時点で存在しなくなったオブジェクトバージョンを表す場合、`encryption_status` 列の値が `SSE-KMS` または `DSSE-KMS` であっても、`kms_key_arn` には null 値が含まれます。   | 
|  `checksum_algorithm`  | いいえ | String |  オブジェクトのチェックサムを作成するために使用されるアルゴリズム。`CRC64-NVME`、`CRC32`、`CRC32C`、`SHA1`、または `SHA256` のいずれかです。チェックサムが存在しない場合、この値は null です。詳細については、「[サポートされているチェックサムアルゴリズムの使用](checking-object-integrity-upload.md#using-additional-checksums)」を参照してください。  | 
|  `object_tags`  | いいえ | Map <String, String> |  オブジェクトに関連付けられたオブジェクトタグ。オブジェクトタグは、キーと値のペアのマップとして保存されます。オブジェクトにオブジェクトタグがない場合、空のマップ (`{}`) が保存されます。詳細については、「[タグを使用したオブジェクトの分類](object-tagging.md)」を参照してください。  `record_type` 値が `DELETE` の場合、`object_tags` 列には null 値が含まれます。`record_type` 値が `CREATE` または `UPDATE_METADATA` の場合、削除または上書きイベントが処理された時点で存在しなくなったオブジェクトバージョンを表す行には、`object_tags` 列に null 値が含まれます。   | 
|  `user_metadata`  | いいえ | Map <String, String> |  オブジェクトに関連付けられているユーザーメタデータ。ユーザーメタデータは、キーと値のペアのマップとして保存されます。オブジェクトにユーザーメタデータがない場合、空のマップ (`{}`) が保存されます。詳細については、「[ユーザー定義のオブジェクトメタデータ](UsingMetadata.md#UserMetadata)」を参照してください。  `record_type` 値が `DELETE` の場合、`user_metadata` 列には null 値が含まれます。`record_type` 値が `CREATE` または `UPDATE_METADATA` の場合、削除または上書きイベントが処理された時点で存在しなくなったオブジェクトバージョンを表す行には、`user_metadata` 列に null 値が含まれます。   | 