本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
查詢資料湖
您可以遵循本教學課程中的任務集,查詢 Amazon S3 資料湖中的資料。首先,建立外部結構描述以參考 AWS Glue Data Catalog 中的外部資料庫。然後,您就可以查詢 Amazon S3 資料湖中的資料。
示範:查詢資料湖
若要了解如何查詢資料湖,請觀看以下影片。
先決條件
在查詢編輯器 v2 中使用資料湖之前,請先確認您已在 Amazon Redshift 環境中設定以下項目:
使用 編目 Amazon S3 資料, AWS Glue 並啟用 Data Catalog AWS Lake Formation。
使用 AWS Glue 已啟用的 Data Catalog 為 Amazon Redshift 建立 IAM 角色 AWS Lake Formation。如需此程序的詳細資訊,請參閱使用 AWS Glue Data Catalog 已啟用 的 為 Amazon Redshift 建立 IAM 角色 AWS Lake Formation。如需使用 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 Redshiftadmin
使用者擁有superuser
權限,而且可以建立結構描述和管理 Redshift 資料庫。如需使用查詢編輯器 v2 來連線至資料庫的相關資訊,請參閱連線至 Amazon Redshift 資料庫。
建立外部結構描述
若要查詢 Amazon S3 資料湖中的資料,請先建立外部結構描述。外部結構描述會參考 AWS Glue Data Catalog 中的外部資料庫。
在查詢編輯器 v2 的編輯器檢視中,選擇
建立,然後選擇結構描述。
輸入結構描述名稱。
對於結構描述類型,選擇外部。
在資料目錄詳細資訊中,區域預設為 AWS 區域 Redshift 資料庫所在的 。
選擇外部結構描述將對應的AWS Glue 資料庫,以及包含 AWS Glue 資料表參考的資料庫。
選擇具有在 Amazon S3 上查詢資料所需許可的 Amazon Redshift IAM 角色。
選擇性地選擇具有 Data Catalog 許可的 IAM 角色。
選擇建立結構描述。
結構描述會出現在樹狀檢視面板中的資料庫下方。
在建立結構描述時,如果您收到資料庫的許可遭拒錯誤,請檢查已連線的使用者是否具有建立結構描述的資料庫權限。
在 Amazon S3 資料湖中查詢資料
請使用您在上一個程序中建立的結構描述。
在樹狀檢視面板中,選擇結構描述。
若要檢視資料表定義,請選擇資料表。隨即會顯示資料表資料欄和資料類型。
若要查詢資料表,請選擇該資料表,然後在內容功能表 (按一下滑鼠右鍵) 中,選擇選取資料表以產生查詢。
在編輯器中執行查詢。
下列範例 SQL 是由查詢編輯器 v2 產生,用於查詢名為 AWS Glue 資料表中的所有資料列
flightscsv
。為了簡單起見,輸出中顯示的資料欄和資料列已遭到截斷。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 ...