Lake Formation應用程式整合 API 作業工作流程 - AWS Lake Formation

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

Lake Formation應用程式整合 API 作業工作流程

以下是應用程序集成 API 操作的工作流程:

  1. 用戶使用集成的第三方查詢引擎提交查詢或數據請求。查詢引擎會採用代表使用者或使用者群組的 IAM 角色,並擷取呼叫應用程式整合 API 作業時要使用的受信任登入資料。

  2. 查詢引擎會呼叫GetUnfilteredTableMetadata,如果是分區資料表,則查詢引擎會呼叫GetUnfilteredPartitionsMetadata以從「資料目錄」擷取中繼資料和原則資訊。

  3. Lake Formation 執行對請求的授權。如果使用者對資料表沒有適當的權限,AccessDeniedException則會擲回。

  4. 作為請求的一部分,查詢引擎會傳送它支援的篩選。有跡象表明,可以在一個數組中被發送兩個標誌:列 _ 權限和 CELL_FILTER_ 權限如果查詢引擎不支援這些功能中的任何一項,且該功能的資料表上存在原則,則會擲回 a PermissionTypeMismatchException,且查詢失敗。這是為了避免數據洩漏。

  5. 返回的響應包含以下內容:

    • 表的整個模式,以便查詢引擎可以使用它來解析存儲中的數據。

    • 使用者可存取的授權資料行清單。如果授權的資料行清單是空的,表示使用者具有DESCRIBE權限,但沒有SELECT權限,而且查詢失敗。

    • 旗標IsRegisteredWithLakeFormation,表示 Lake Formation 是否可以將認證分配給此資源資料。如果傳回 false,則應使用客戶的登入資料來存取 Amazon S3。

    • CellFilters如果有任何應該被應用到數據行的列表。此清單包含用於評估每一列的欄和表示式。只有當 CELL_FILTER_ PERFORCE 作為請求的一部分發送,並且對調用用戶的表格有數據過濾器時,才應填充此選項。

  6. 擷取中繼資料後,查詢引擎會呼叫GetTemporaryGlueTableCredentials或取GetTemporaryGluePartitionCredentials得 AWS 登入資料,以從 Amazon S3 位置擷取資料。

  7. 查詢引擎會從 Amazon S3 讀取相關物件,根據步驟 2 中收到的政策篩選資料,然後將結果傳回給使用者。

的應用程式整合 API 作業Lake Formation包含用於設定與協力廠商查詢引擎整合的其他內容。您可以在憑證自動售貨 API 操作部分中查看操作詳細信息。