本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
S3 Metadata 故障診斷
請使用以下資訊來協助您診斷和修正使用 Amazon S3 Metadata 時可能遇到的常見問題。
我無法刪除我的 AWS 受管資料表儲存貯體和中繼資料表
您必須先刪除一般用途儲存貯體上的相關聯中繼資料表組態,才能刪除中繼資料表。如需詳細資訊,請參閱刪除中繼資料表組態。
您必須先刪除與此儲存貯體相關聯的所有中繼資料表組態,以及儲存貯體中的所有中繼資料表,才能刪除 AWS 受管資料表儲存貯體。如需詳細資訊,請參閱刪除中繼資料表組態及刪除中繼資料表。
我無法設定或變更 AWS 受管中繼資料表的加密設定
建立中繼資料表組態時,您可以選擇使用 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS) 透過伺服器端加密來加密 AWS 受管中繼資料表。如果您選擇使用 SSE-KMS,則必須在與您的一般用途儲存貯體相同的區域中提供客戶管理的 KMS 金鑰。您只能在建立資料表期間設定資料表的加密類型。建立 AWS 受管資料表後,您無法變更其加密設定。若要為中繼資料表指定 SSE-KMS,您必須具有特定權限。如需詳細資訊,請參閱 SSE-KMS 的權限。
中繼資料表的加密設定優先於預設儲存貯體層級的加密設定。如果您沒有為資料表指定加密,則會繼承儲存貯體的預設加密設定。
根據預設, AWS 受管資料表儲存貯體會使用 Amazon S3 受管金鑰 (SSE-S3) 以伺服器端加密進行加密。建立第一個中繼資料組態後,您可以將 AWS 受管資料表儲存貯體的預設加密設定設定為使用伺服器端加密搭配 AWS Key Management Service (AWS KMS) 金鑰 (SSE-KMS)。如需詳細資訊,請參閱 AWS 受管資料表儲存貯體的加密和 使用資料表儲存貯體中的 AWS KMS 金鑰 (SSE-KMS) 指定伺服器端加密。
當我嘗試重新建立中繼資料表組態時,會遇到錯誤
刪除中繼資料表組態只會刪除組態。 AWS 受管資料表儲存貯體和中繼資料資料表仍然存在,即使您刪除中繼資料資料表組態也一樣。
如果刪除中繼資料資料表組態,並想要為相同的一般用途儲存貯體重新建立組態,您必須先從 AWS 受管資料表儲存貯體手動刪除舊日誌和庫存資料表。否則,建立新中繼資料資料表組態會失敗,因為這些資料表已存在。
若要刪除您的中繼資料表,請參閱 刪除中繼資料表。
我無法在我的組態上啟用庫存資料表
如果您在 2025 年 7 月 15 日之前建立 S3 Metadata 組態,則無法在該組態上啟用庫存資料表。建議您刪除並重新建立組態,以便建立庫存資料表,並使日誌資料表記錄過期。如需詳細資訊,請參閱在 2025 年 7 月 15 日之前建立的中繼資料組態上啟用庫存資料表。
我無法在我的組態上啟用日誌資料表記錄過期功能
如果您在 2025 年 7 月 15 日之前建立 S3 Metadata 組態,則無法在該組態上使日誌資料表記錄過期。建議您刪除並重新建立組態,以便使日誌資料表記錄過期,並建立庫存資料表。如需詳細資訊,請參閱在 2025 年 7 月 15 日之前建立的中繼資料組態上啟用庫存資料表。
我無法查詢中繼資料表
如果您無法查詢中繼資料表,請檢查下列項目:
-
當您使用 Amazon Athena 或 Amazon Redshift 查詢中繼資料表時,必須以引號 (
") 或反引號 (`) 括住中繼資料表命名空間名稱,否則查詢可能無法運作。 -
在 Amazon EMR 或其他第三方引擎上使用 Apache Spark 查詢中繼資料表時,我議您使用 Amazon S3 Tables Iceberg REST 端點。如果您不使用此端點,則可能無法成功執行查詢。如需詳細資訊,請參閱使用 Amazon S3 Tables Iceberg REST 端點存取資料表。
-
請確定您具有適當的 AWS Identity and Access Management (IAM) 許可來查詢中繼資料表。如需詳細資訊,請參閱查詢中繼資料表的許可權。
-
如果您使用 Amazon Athena,並在嘗試執行查詢時遇到錯誤,請執行下列動作:
-
如果您嘗試在 Athena 中執行查詢時收到錯誤訊息:
「執行查詢的權限不足。主體對指定資源沒有任何權限」,您必須獲得資料表上必要的 Lake Formation 許可權。如需詳細資訊,請參閱授予資料表或資料庫的 Lake Formation 許可。 -
如果您在嘗試執行查詢時收到錯誤
「Iceberg 無法存取請求的資源」,請前往 AWS Lake Formation 主控台,並確定您已授予自己所建立資料表儲存貯體目錄和資料庫 (命名空間) 的許可。授予這些許可權時,請勿指定資料表。如需詳細資訊,請參閱授予資料表或資料庫的 Lake Formation 許可。
-
當我嘗試使用特定 S3 Metadata AWS CLI 命令和 API 操作時,收到 405 個錯誤
針對 V2 中繼資料表組態呼叫 V1 GetBucketMetadataTableConfiguration API 操作或使用 get-bucket-metadata-table-configuration AWS Command Line Interface (AWS CLI) 命令會導致 HTTP 405 Method Not Allowed錯誤。 V2 同樣地,呼叫 V1 DeleteBucketMetadataTableConfiguration API 操作或使用 delete-bucket-metadata-table-configuration AWS CLI 命令也會導致 405 錯誤。
您可以針對 V1 或 V2 中繼資料表組態使用 V2 GetBucketMetadataConfiguration API 操作或 get-bucket-metadata-configuration AWS CLI 命令。同樣地,您可以針對 V1 或 V2 中繼資料表組態使用 V2 DeleteBucketMetadataConfiguration API 操作或 delete-bucket-metadata-configuration AWS CLI 命令。
建議您更新您的處理程序,以使用新的 V2 API 操作 (CreateBucketMetadataConfiguration、GetBucketMetadataConfiguraion 和 DeleteBucketMetadataConfiguration),而非 V1 API 操作。如需有關從 S3 Metadata 的 V1 移轉至 V2 的詳細資訊,請參閱 在 2025 年 7 月 15 日之前建立的中繼資料組態上啟用庫存資料表。
若要確定您的組態是 V1 還是 V2,您可以查看 GetBucketMetadataConfiguration API 回應的下列屬性。 AWS 受管儲存貯體類型 ("aws") 表示 V2 組態,而客戶受管儲存貯體類型 ("customer") 表示 V1 組態。
"MetadataTableConfigurationResult": { "TableBucketType": ["aws" | "customer"]
如需詳細資訊,請參閱檢視中繼資料表組態。