查詢資料湖 - Amazon Redshift

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

查詢資料湖

您可以查詢 Amazon S3 資料湖中的資料。首先,建立外部結構描述以參考 AWS Glue Data Catalog 中的外部資料庫。然後,您就可以查詢 Amazon S3 資料湖中的資料。

示範:查詢資料湖

若要了解如何查詢資料湖,請觀看以下影片。

先決條件

在查詢編輯器 v2 中使用資料湖之前,請先確認您已在 Amazon Redshift 環境中設定以下項目:

  • 使用 AWS Glue 來為 Amazon S3 資料編目,並為 AWS Lake Formation 啟用 Data Catalog。

  • 使用已為 AWS Lake Formation 啟用 Data Catalog 的 AWS Glue 來為 Amazon Redshift 建立 IAM 角色。如需此程序的詳細資訊,請參閱使用為 AWS Lake Formation 啟用的 AWS Glue Data Catalog,為 Amazon Redshift 建立 IAM 角色。如需有關使用 Redshift Spectrum 和 Lake Formation 的詳細資訊,請參閱使用 Redshift Spectrum 搭配 AWS Lake Formation

  • 授予資料表的 SELECT 許可,以在 Lake Formation 資料庫中進行查詢。如需有關此程序的詳細資訊,請參閱授予資料表的 SELECT 許可,以在 Lake Formation 資料庫中進行查詢

    您可以在 Lake Formation 主控台 (https://console.aws.amazon.com/lakeformation/)、許可區段、資料湖許可頁面中驗證 IAM 角色、AWS Glue 資料庫和資料表是否具有適當許可。

  • 確認已連線的使用者擁有在 Amazon Redshift 資料庫中建立結構描述和存取資料湖中資料的許可。當您在查詢編輯器 v2 中連線到資料庫時,您要選擇包含憑證 (可以是資料庫使用者或 IAM 使用者) 的驗證方法。已連線的使用者必須具備適當的許可和資料庫權限,例如 superuser。建立叢集或工作群組的 Amazon Redshift admin 使用者擁有 superuser 權限,而且可以建立結構描述和管理 Redshift 資料庫。如需有關使用查詢編輯器 v2 來連線至資料庫的詳細資訊,請參閱連線至 Amazon Redshift 資料庫

建立外部結構描述

若要查詢 Amazon S3 資料湖中的資料,請先建立外部結構描述。外部結構描述會參考 AWS Glue Data Catalog 中的外部資料庫。

  1. 在查詢編輯器 v2 的編輯器檢視中,選擇 Create 建立,然後選擇結構描述

  2. 輸入結構描述名稱。

  3. 對於結構描述類型,選擇外部

  4. Data Catalog 詳細資訊內,區域會預設為 Redshift 資料庫所在的 AWS 區域。

  5. 選擇外部結構描述要映射到、且包含 AWS Glue 資料表參考的 AWS Glue 資料庫

  6. 選擇具有在 Amazon S3 上查詢資料所需許可的 Amazon Redshift IAM 角色

  7. 選擇性地選擇具有 Data Catalog 許可的 IAM 角色

  8. 選擇建立結構描述

    結構描述會出現在樹狀檢視面板中的資料庫下方。

在建立結構描述時,如果您收到資料庫的許可遭拒錯誤,請檢查已連線的使用者是否具有建立結構描述的資料庫權限。

在 Amazon S3 資料湖中查詢資料

請使用您在上一個程序中建立的結構描述。

  1. 在樹狀檢視面板中,選擇結構描述。

  2. 若要檢視資料表定義,請選擇資料表。隨即會顯示資料表資料欄和資料類型。

  3. 若要查詢資料表,請選擇該資料表,然後在內容功能表 (按一下滑鼠右鍵) 中,選擇選取資料表以產生查詢。

  4. 編輯器中執行查詢。

    下列範例 SQL 是由查詢編輯器 v2 所產生,目的是要查詢名為 flightscsv 的 AWS Glue 資料表中的所有資料列。為了簡單起見,輸出中顯示的資料欄和資料列已遭到截斷。

    SELECT * FROM "dev"."mydatalake_schema"."flightscsv"; year quarter month dom day_of_week fl_date unique_carrier airline_id carrier tail_num fl_num 2016 4 10 19 3 10/19/16 OO 20304 OO N753SK 3086 2016 4 10 19 3 10/19/16 OO 20304 OO N753SK 3086 2016 4 10 19 3 10/19/16 OO 20304 OO N778SK 3087 2016 4 10 19 3 10/19/16 OO 20304 OO N778SK 3087 ...