本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
考量與限制
當您使用 Athena 讀取 Apache Hudi 資料表時,請考慮下列幾點。
-
增量查詢 – Athena 不支援增量查詢。
-
CTAS – Athena 不支援 CTAS 或 Hudi 資料INSERT INTO。如果您希望 Athena 提供寫入 Hudi 資料集的支援,請將意見回饋傳送至
<athena-feedback@amazon.com>
。如需有關寫入 Hudi 資料的詳細資訊,請參閱下列資源:
-
Apache Hudi 文件中的寫入資料
。
-
MSCK REPAIR TABLE – 不支援在 Athena 的 Hudi 資料表上使用 MSCK REPAIR TABLE。如果您需要載入未在 中建立的 Hudi 資料表 AWS Glue,請使用 ALTER TABLE ADD PARTITION。
-
略過不支援的 S3 Glacier 物件 – 如果 Apache Hudi 資料表中的物件位於 Amazon S3 Glacier 儲存類別中,則將
read_restored_glacier_objects
資料表屬性設定為false
是無效的。例如,假設您發出下列命令:
ALTER TABLE
table_name
SET TBLPROPERTIES ('read_restored_glacier_objects' = 'false')對於 Iceberg 和 Delta Lake 資料表,此命令會產生錯誤
不支援的資料表屬性索引鍵:read_restored_glacier_objects
。對於 Hudi 資料表,ALTER TABLE
命令不會產生錯誤,但是 Amazon S3 Glacier 物件仍不會略過。在ALTER TABLE
命令繼續傳回所有物件之後執行SELECT
查詢。 -
時間戳記查詢 – 目前,嘗試讀取 Hudi 即時資料表中時間戳記資料欄的查詢會失敗或產生空白結果。此限制僅適用於讀取時間戳記欄的查詢。僅包含相同資料表中非時間戳記資料欄的查詢成功。
失敗的查詢會傳回類似下列的訊息:
GENERIC_INTERNAL_ERROR:類別 org.apache.hadoop.io.ArrayWritable 無法轉換為類別 org.apache.hadoop.hive.serde2.io.TimestampWritableV2 (org.apache.hadoop.io.ArrayWritable 和 org.apache.hadoop.hive.serde2.io.TimestampWritableV2 位於載入器 io.trino.server.PluginClassLoader @75c67992 的未命名模組中)