

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

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

# 查詢 AWS Glue Data Catalog
<a name="query-editor-v2-glue"></a>

您可以使用查詢編輯器 v2 來查詢 中目錄化的資料 AWS Glue Data Catalog ，方法是使用特定 SQL 命令並授予本節中概述的許可。依預設， AWS Glue Data Catalog 會列為名為 `awsdatacatalog` 的查詢編輯器 v2 資料庫。並非所有 Amazon Redshift AWS 區域都可查詢 AWS Glue Data Catalog 。請使用 SHOW 命令來判斷此功能是否可用。如需 的詳細資訊 AWS Glue，請參閱《 *AWS Glue 開發人員指南*》中的[什麼是 AWS Glue？](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)。

**注意**  
只有 Amazon Redshift RA3 節點類型叢集和 Amazon Redshift Serverless AWS Glue Data Catalog 才支援查詢 。

您可以設定資料倉儲，並使用下列 SQL 命令檢視目錄化的 AWS Glue 資料庫物件：
+ SHOW — 顯示目前連線的資料倉儲是否已掛載 `awsdatacatalog`。例如，若要顯示 `data_catalog_auto_mount` 參數值，請執行：

  ```
  SHOW data_catalog_auto_mount;
  ```

  如需詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [SHOW](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW.html)。
+ ALTER SYSTEM — 變更 `data_catalog_auto_mount` 的系統層級組態。例如，若要將 `data_catalog_auto_mount` 參數值變更為 `on`，請執行：

  ```
  ALTER SYSTEM SET data_catalog_auto_mount = on;
  ```

  當佈建叢集重新啟動或無伺服器工作群組自動暫停並繼續時，變更便會生效。如需詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [ALTER SYSTEM](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_SYSTEM.html)。
+ SHOW SCHEMAS — 顯示結構描述的清單。名為 的資料庫中的結構描述`awsdatacatalog`代表 中編目的 AWS Glue 資料庫 AWS Glue Data Catalog。例如，若要顯示這些結構描述，請執行：

  ```
  SHOW SCHEMAS FROM DATABASE awsdatacatalog;
  ```

  如需詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [SHOW SCHEMAS](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_SCHEMAS.html)。
+ SHOW TABLES — 顯示結構描述中的資料表清單。例如，若要在結構描述`myglue`執行中顯示名為 `awsdatacatalog`的 AWS Glue Data Catalog 資料庫中的資料表：

  ```
  SHOW TABLES FROM SCHEMA awsdatacatalog.myschema;
  ```

  如需詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [SHOW TABLES](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_TABLES.html)。
+ SHOW COLUMNS — 顯示資料表中的資料欄清單。例如，若要在結構描述`myglue`和資料表`mytable`執行中顯示名為 `awsdatacatalog`的 AWS Glue Data Catalog 資料庫中的資料欄：

  ```
  SHOW COLUMNS FROM TABLE awsdatacatalog.myglue.mytable;
  ```

  如需詳細資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [SHOW COLUMNS](https://docs.aws.amazon.com/redshift/latest/dg/r_SHOW_COLUMNS.html)。

**若要授予 IAM 使用者或角色查詢 的許可 AWS Glue Data Catalog，**

1. 在樹狀檢視窗格中，使用**資料庫使用者名稱和密碼**身分驗證方法，連線至佈建叢集或無伺服器工作群組中的初始資料庫。例如，使用您在建立叢集或工作群組時使用的管理員使用者和密碼連線至 `dev` 資料庫。

1. 在編輯器索引標籤中，執行下列 SQL 陳述式以向 IAM 使用者授予 AWS Glue Data Catalog的存取權。

   ```
   GRANT USAGE ON DATABASE awsdatacatalog to "IAM:myIAMUser"
   ```

   其中 *IAM:myIAMUser* 是您想要向其授予 AWS Glue Data Catalog使用權限的 IAM 使用者。或者，您也可以將 *IAMR:myIAMRole* 的使用權限授予 IAM 角色。

1. 在樹狀檢視窗格中，編輯或刪除先前建立的叢集或工作群組連線。使用下列其中一種方式連線至叢集或工作群組：
   + 若要從叢集存取 `awsdatacatalog` 資料庫，您必須使用身分驗證方法**使用您的 IAM 身分的暫時憑證**。如需此身分驗證方法的相關資訊，請參閱[連線至 Amazon Redshift 資料庫](query-editor-v2-connecting.md)。您的查詢編輯器 v2 管理員可能需要設定帳戶的**帳戶設定**，才能在連線視窗上顯示此身分驗證方法。
   + 若要從工作群組存取 `awsdatacatalog` 資料庫，您必須使用身分驗證方法**聯合身分使用者**。如需此身分驗證方法的相關資訊，請參閱[連線至 Amazon Redshift 資料庫](query-editor-v2-connecting.md)。

1. 透過所授予的權限，您可以使用 IAM 身分來針對您的 AWS Glue Data Catalog執行 SQL。

連線後，您可以使用查詢編輯器 v2 來查詢 AWS Glue Data Catalog中所編目的資料。在查詢編輯器 v2 的樹狀檢視窗格上，選擇叢集或工作群組和 `awsdatacatalog` 資料庫。在編輯器或筆記本窗格中，確認您已選擇正確的叢集或工作群組。所選擇的資料庫應該是初始的 Amazon Redshift 資料庫，例如 `dev`。如需有關編寫查詢的資訊，請參閱[使用 Amazon Redshift 編寫查詢](query-editor-v2-query-run.md)和[Amazon Redshift 中的筆記本Notebooks](query-editor-v2-notebooks.md)。系統會保留名為 `awsdatacatalog` 的資料庫，以參考帳戶中的外部 Data Catalog 資料庫。對 `awsdatacatalog` 資料庫所進行的查詢只能是唯讀的。請使用由三個部分組成的標記法來參考 SELECT 陳述式中的資料表。其中第一部分是資料庫名稱，第二部分是 AWS Glue 資料庫名稱，第三部分是 AWS Glue 資料表名稱。

```
SELECT * FROM awsdatacatalog.<aws-glue-db-name>.<aws-glue-table-name>;
```

您可以執行讀取 AWS Glue Data Catalog 資料並填入 Amazon Redshift 資料表的各種案例。

下列範例 SQL 會聯結兩個在其中定義的資料表 AWS Glue。

```
SELECT pn.emp_id, alias, role, project_name 
FROM "awsdatacatalog"."empl_db"."project_name_table" pn, 
"awsdatacatalog"."empl_db"."project_alias_table" pa
WHERE pn.emp_id = pa.emp_id;
```

下列範例 SQL 會建立 Amazon Redshift 資料表，並填入來自兩個 AWS Glue 資料表聯結的資料。

```
CREATE TABLE dev.public.glue AS
SELECT pn.emp_id, alias, role, project_name 
FROM "awsdatacatalog"."empl_db"."project_name_table" pn, 
"awsdatacatalog"."empl_db"."project_alias_table" pa
WHERE pn.emp_id = pa.emp_id;
```

## 查詢 Amazon S3 資料表 （預覽）
<a name="query-editor-v2-glue-s3-tables"></a>

您可以使用查詢編輯器 v2 來查詢掛載到 的 Amazon S3table 目錄中所保留的資料 AWS Glue Data Catalog。Amazon S3 資料表目錄會在建立 AWS Glue Data Catalog 時掛載到 ，並自動在相同帳戶 AWS 區域 下的相同 中，在所有佈建叢集和無伺服器工作群組上顯示為外部資料庫。如需使用 Amazon Redshift 存取 Amazon S3 資料表的詳細資訊，請參閱[《Amazon Simple Storage Service 使用者指南》中的使用 Amazon Redshift 存取 Amazon S3 資料表](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-redshift.html)。