

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# S3 Metadata 資料表探索您的資料
<a name="metadata-tables-overview"></a>

Amazon S3 Metadata 透過自動擷取一般用途儲存貯體中物件的中繼資料，並將其儲存在您可以查詢的唯讀、全託管 Apache Iceberg 資料表中，從而加速資料探索。這些唯讀資料表稱為「中繼資料表」**。當您在一般用途儲存貯體中新增、更新或移除物件時，S3 Metadata 會自動重新整理對應的中繼資料表，以反映最新的變更。

根據預設，S3 Metadata 提供三種中繼資料類型：
+ [系統定義的中繼資料](UsingMetadata.md#SysMetadata)，例如物件的建立時間和儲存類別
+ 自訂中繼資料，例如在物件上傳期間包含的標籤和[使用者定義的中繼資料](UsingMetadata.md#UserMetadata)
+ 事件中繼資料，例如物件更新或刪除的時間，以及 AWS 帳戶 發出請求的

透過 S3 Metadata，您可以輕鬆尋找、儲存和查詢 S3 物件的中繼資料，以便快速準備資料，以用於商業分析、內容擷取、人工智慧和機器學習 (AI/ML) 模型訓練等。

您可以針對每個一般用途儲存貯體建立一個中繼資料表組態，其中包含兩個互補的中繼資料表：
+ **日誌資料表**：依預設，您的中繼資料表組態包含*日誌資料表*，資料表中擷取了儲存貯體中物件發生的事件。日誌資料表會以近乎即時的速度記錄對資料所做的變更，協助您進行識別上傳至儲存貯體的新資料、追蹤最近刪除的物件、監控生命週期轉換等作業。日誌資料表會記錄新物件，以及更新物件及其中繼資料的 (更新需要 `PUT` 或 `DELETE` 運算子)。

  日誌資料表會擷取建立中繼資料表組態後發生之變更事件 (例如上傳、更新和刪除) 的中繼資料。由於此資料表是可查詢的，因此您可以透過簡單的 SQL 查詢，稽核對儲存貯體的變更。

  每個中繼資料表組態都需要日誌資料表。(在 S3 Metadata 的初始版本中，日誌資料表又稱為「中繼資料表」。)

  如需日誌資料表中存放哪些資料的詳細資訊，請參閱 [S3 Metadata 日誌資料表結構描述](metadata-tables-schema.md)。

  為協助將儲存成本降到最低，您可以選擇啟用日誌資料表記錄到期條件。如需詳細資訊，請參閱[到期的日誌資料表記錄](metadata-tables-expire-journal-table-records.md)。
+ **即時庫存資料表**：您可以選擇將*即時庫存資料表*新增至中繼資料表組態。即時庫存資料表提供了儲存貯體中所有物件及其版本的簡單、可查詢的庫存，以方便您確認資料的最新狀態。

  您可以使用即時庫存資料表，透過識別要針對各種工作負載進行處理的物件，簡化並加快業務工作流程和巨量資料任務。例如，您可以查詢即時庫存資料表來尋找存放在特定儲存類別中的所有物件、具有特定標籤的所有物件、未使用 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 進行伺服器端加密的所有物件等。

  當您為中繼資料表組態啟用即時庫存資料表，資料表會通過一個稱為*回填*的程序，在該期間 Amazon S3 會掃描您的一般用途儲存貯體，以擷取存在於儲存貯體中所有物件的初始中繼資料。根據您的儲存貯體中的物件數量，此程序可能需要幾分鐘 (至少 15 分鐘) 至數小時。回填程序完成後，即時庫存資料表的狀態會從**回填**變更為**作用中**。回填完成後，對物件的更新通常會在一小時內反映在即時庫存資料表中。

  您需要為回填庫存資料表付費。如果您的一般用途儲存貯體擁有超過十億個物件，則您也需為即時庫存資料表支付月費。如需詳細資訊，請參閱 [Amazon S3 定價](https://aws.amazon.com/s3/pricing/)。

  如需即時庫存資料表中存放哪些資料的詳細資訊，請參閱 [S3 Metadata 即時庫存資料表結構描述](metadata-tables-inventory-schema.md)。

您的中繼資料表存放在 AWS 受管 S3 資料表儲存貯體中，該儲存貯體提供針對表格式資料最佳化的儲存體。若要查詢中繼資料，您可以將資料表儲存貯體與 Amazon SageMaker 資料湖倉整合。此整合使用 AWS Glue Data Catalog 和 AWS Lake Formation，可讓 AWS 分析服務自動探索和存取您的資料表資料。

將資料表儲存貯體與 整合後 AWS Glue Data Catalog，您可以使用 Amazon Athena、Amazon EMR 和 Amazon Redshift 等 AWS 分析服務直接查詢中繼資料表。您也可以使用 Amazon Quick 建立具有查詢資料的互動式儀表板。如需有關整合 AWS 受管 S3 資料表儲存貯體與 Amazon SageMaker 資料湖倉的詳細資訊，請參閱 [將 Amazon S3 Tables 與 AWS 分析服務整合](s3-tables-integrating-aws.md)。

您也可以使用 Apache Spark、 和任何其他支援 Apache Iceberg 格式的應用程式來查詢中繼資料表Apache Trino，方法是使用 AWS Glue Iceberg REST 端點、Amazon S3 Tables Iceberg REST 端點或Apache Iceberg用戶端目錄的 Amazon S3 Tables Catalog。如需存取中繼資料表的詳細資訊，請參閱 [存取資料表資料](s3-tables-access.md)。

如需 S3 Metadata 定價，請參閱 [Amazon S3 定價](https://aws.amazon.com/s3/pricing/)。

## 中繼資料表的運作方式
<a name="metadata-tables-how-they-work"></a>

中繼資料表是由 Amazon S3 管理，無法透過 Amazon S3 本身以外的任何 IAM 主體進行修改 不過，您可以刪除中繼資料表。因此，中繼資料表是唯讀的，這有助於確保正確反映一般用途儲存貯體的內容。

若要在 AWS 受管中繼資料表中產生和存放物件中繼資料，您可以為一般用途儲存貯體建立中繼資料表組態。只要一般用途儲存貯體中的組態處於作用中狀態，Amazon S3 就會持續更新中繼資料的資料表，以反映資料的最新變更狀態。

建立中繼資料表組態之前，請確定您具有建立和管理中繼資料表的必要 AWS Identity and Access Management (IAM) 許可。如需詳細資訊，請參閱[設定設定中繼資料表的許可](metadata-tables-permissions.md)。

**中繼資料表儲存、組織和加密**  
當建立中繼資料表組態時，您的中繼資料表會儲存在 AWS 受管資料表儲存貯體中。您帳戶和相同區域中的所有中繼資料表組態都存放在單一 AWS 受管資料表儲存貯體中。這些 AWS 受管資料表儲存貯體已命名`aws-s3`，並具有下列 Amazon Resource Name (ARN) 格式：

`arn:aws:s3tables:region:account_id:bucket/aws-s3`

例如，如果您的帳戶 ID 為 123456789012，而您的一般用途儲存貯體位於美國東部 （維吉尼亞北部） (`us-east-1`)，您的 AWS 受管資料表儲存貯體也會在美國東部 （維吉尼亞北部） (`us-east-1`) 建立，並具有下列 ARN：

`arn:aws:s3tables:us-east-1:123456789012:bucket/aws-s3`

根據預設， AWS 受管資料表儲存貯體會使用 Amazon S3 受管金鑰 (SSE-S3) 進行伺服器端加密。建立第一個中繼資料組態之後，您可以設定 AWS 受管資料表儲存貯體的預設加密設定，以搭配 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 使用伺服器端加密。如需詳細資訊，請參閱 [AWS 受管資料表儲存貯體的加密](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-aws-managed-buckets.html#aws-managed-buckets-encryption)和 [使用資料表儲存貯體中的 AWS KMS 金鑰 (SSE-KMS) 指定伺服器端加密](s3-tables-kms-specify.md)。

在 AWS 受管資料表儲存貯體中，組態的中繼資料資料表通常會以下列命名格式存放在命名空間中：

`b_general-purpose-bucket-name`

**注意**  
如果您的一般用途儲存貯體名稱包含任何句號，則句號會在命名空間名稱中轉換為底線 (`_`)。
如果您的一般用途儲存貯體是在 2018 年 3 月 1 日之前建立的，其名稱可能包含大寫字母和底線，而且長度也可能高達 255 個字元。如果您的儲存貯體名稱具有這些特性，則中繼資料表命名空間會有不同的格式。一般用途儲存貯體名稱字首為 `b_`、截斷為 63 個字元、轉換為所有小寫，且字尾為雜湊。

中繼資料資料表具有下列 Amazon Resource Name (ARN) 格式，其中包含中繼資料資料表的資料表 ID：

`arn:aws:s3tables:region-code:account-id:bucket/aws-s3/table/table-id`

例如，美國東部 (維吉尼亞北部) 區域中的中繼資料表會有如下所示的 ARN：

`arn:aws:s3tables:us-east-1:111122223333:bucket/aws-s3/table/a12bc345-67d8-912e-3456-7f89123g4h56`

日誌資料表具有名稱 `journal`，而即時庫存資料表具有名稱 `inventory`。

建立中繼資料表組態時，您可以選擇使用 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 透過伺服器端加密來加密 AWS 受管中繼資料表。如果您選擇使用 SSE-KMS，則必須在與您的一般用途儲存貯體相同的區域中提供客戶管理的 KMS 金鑰。您只能在建立資料表期間設定資料表的加密類型。建立 AWS 受管資料表後，您無法變更其加密設定。若要為中繼資料表指定 SSE-KMS，您必須具有特定權限。如需詳細資訊，請參閱 [SSE-KMS 的權限](metadata-tables-permissions.md#metadata-kms-permissions)。

中繼資料表的加密設定優先於預設儲存貯體層級的加密設定。如果您沒有為資料表指定加密，則會繼承儲存貯體的預設加密設定。

AWS 受管資料表儲存貯體不會計入 S3 Tables 配額。如需使用 AWS 受管資料表儲存貯體和 AWS 受管資料表的詳細資訊，請參閱[使用 AWS 受管資料表儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-aws-managed-buckets.html)。

若要監控中繼資料表組態的更新，您可以使用 AWS CloudTrail。如需詳細資訊，請參閱[CloudTrail 日誌記錄所追蹤的 Amazon S3 儲存貯體層級動作](cloudtrail-logging-s3-info.md#cloudtrail-bucket-level-tracking)。

**中繼資料表維護和記錄過期**  
為了讓您的 中繼資料表發揮最佳效能，Amazon S3 會對資料表執行定期維護活動，例如壓縮和移除未參考的檔案。這些維護活動有助於將儲存中繼資料表的成本降到最低，並最佳化查詢效能。此資料表維護會自動執行，您不需要選擇加入或持續管理。

**注意**  
您無法控制日誌資料表或庫存資料表快照的過期時間。對於每個資料表，Amazon S3 至少儲存 1 個快照，儲存時間最長 24 小時。
為了協助將成本降至最低，您可以將日誌資料表記錄設定為過期。根據預設，日誌資料表記錄不會過期，而且日誌資料表記錄必須至少保留 7 天。如需詳細資訊，請參閱[到期的日誌資料表記錄](metadata-tables-expire-journal-table-records.md)。

**Topics**
+ [中繼資料表的運作方式](#metadata-tables-how-they-work)
+ [中繼資料表限制](metadata-tables-restrictions.md)
+ [S3 Metadata 日誌資料表結構描述](metadata-tables-schema.md)
+ [S3 Metadata 即時庫存資料表結構描述](metadata-tables-inventory-schema.md)
+ [設定中繼資料表](metadata-tables-configuring.md)
+ [查詢中繼資料表](metadata-tables-querying.md)
+ [S3 Metadata 故障診斷](metadata-tables-troubleshooting.md)