

 Amazon Redshift는 패치 198부터 새 Python UDF 생성을 더 이상 지원하지 않습니다. 기존 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를 사용하여 특정 SQL 명령을 사용하고 이 섹션에 요약된 권한을 부여하여 AWS Glue Data Catalog에 카탈로그화된 데이터를 쿼리할 수 있습니다. 기본적으로 AWS Glue Data Catalog는 쿼리 편집기 v2 데이터베이스에 `awsdatacatalog`라는 이름으로 나열됩니다. 일부 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)를 참조하세요.

**참고**  
AWS Glue Data Catalog 쿼리는 Amazon Redshift RA3 노드 유형 클러스터와 Amazon Redshift Serverless에서만 지원됩니다.

다음 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 데이터베이스 개발자 가이드에서 [시스템 변경](https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_SYSTEM.html)을 참조하세요.
+ SHOW SCHEMAS - 스키마 목록을 표시합니다. `awsdatacatalog`라는 데이터베이스의 스키마는 AWS Glue Data Catalog에 카탈로그화된 AWS Glue를 나타냅니다. 예를 들어 이러한 스키마를 표시하려면 다음을 실행합니다.

  ```
  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 Database 개발자 안내서의 [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 사용자입니다. IAM 역할에 대한 *IAMR:myIAMRole*에 사용 권한을 부여하는 방법도 있습니다.

1. 트리 뷰 창에서 이전에 만든 클러스터 또는 작업 그룹에 대한 연결을 편집하거나 삭제합니다. 다음 방법 중 하나를 사용하여 클러스터 또는 작업 그룹에 연결합니다.
   + 클러스터에서 `awsdatacatalog` 데이터베이스에 연결하려면, **IAM ID를 사용하는 임시 보안 인증** 인증 방법을 사용해야 합니다. 이 인증 방법에 대한 자세한 내용은 [Amazon Redshift 데이터베이스에 연결](query-editor-v2-connecting.md) 단원을 참조하세요. 쿼리 편집기 v2 관리자가 연결 창에 이 인증 방법을 표시하도록 계정의 **계정 설정**을 구성해야 할 수 있습니다.
   + 미리 보기 작업 그룹에서 `awsdatacatalog` 데이터베이스에 연결하려면 **페더레이션 사용자** 인증 방법을 사용해야 합니다. 이 인증 방법에 대한 자세한 내용은 [Amazon Redshift 데이터베이스에 연결](query-editor-v2-connecting.md) 단원을 참조하세요.

1. 부여된 권한이 있다면 IAM ID를 사용하여 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>

Query Editor V2를 사용하여 AWS Glue Data Catalog에 탑재된 Amazon S3 테이블 카탈로그에 저장된 데이터를 쿼리할 수 있습니다. Amazon S3 테이블 카탈로그는 만드는 시점에 AWS Glue Data Catalog에 탑재되며, 동일한 계정에서 동일한 AWS 리전에 있는 모든 프로비저닝된 클러스터 및 서버리스 작업 그룹에 외부 데이터베이스로 자동으로 표시됩니다. Amazon Redshift를 사용하여 Amazon S3 테이블에 액세스하는 방법에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서의 [Accessing Amazon S3 tables with Amazon Redshift](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-redshift.html)를 참조하세요.