

# Athena 콘솔을 사용하여 데이터 소스에 연결
<a name="connect-to-a-data-source-console-steps"></a>

Athena 콘솔을 사용하여 데이터 소스 연결을 생성하고 구성할 수 있습니다.

**데이터 소스에 대한 연결을 생성하려면**

1. [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)에서 Athena 콘솔을 엽니다.

1. 콘솔 탐색 창이 표시되지 않으면 왼쪽의 확장 메뉴를 선택합니다.  
![확장 메뉴를 선택합니다.](http://docs.aws.amazon.com/ko_kr/athena/latest/ug/images/nav-pane-expansion.png)

1. 탐색 창에서 **데이터 소스 및 카탈로그**를 선택합니다.

1. **데이터 소스 및 카탈로그** 페이지에서 **데이터 소스 생성**을 선택합니다.

1. **데이터 원본 선택(Choose data source)**에서 다음 지침을 고려하여 <shared id="ATE"/>에서 쿼리할 데이터 원본을 선택합니다.
   + 데이터 소스에 해당하는 연결 옵션을 선택합니다. Athena에는 MySQL, Amazon DocumentDB 및 PostgreSQL을 포함한 소스에 대해 구성할 수 있는 사전 구축된 데이터 원본 커넥터가 있습니다.
   + Amazon S3에서 데이터를 쿼리하려고 하고 이 페이지에서 Apache Hive 메타스토어 또는 다른 연동 쿼리 데이터 원본 옵션 중 하나를 사용하고 있지 않은 경우 **S3 - AWS Glue Data Catalog**를 선택합니다. Athena는 AWS Glue Data Catalog를 사용하여 Amazon S3의 데이터 원본에 대한 메타데이터 및 스키마 정보를 저장합니다. 이것은 기본(비연합) 옵션입니다. 자세한 내용은 [AWS Glue Data Catalog을 사용하여 데이터에 연결](data-sources-glue.md) 섹션을 참조하세요. 이 워크플로를 사용하는 단계는 [Athena에 데이터 카탈로그 등록 및 사용](gdc-register.md) 섹션을 참조하세요.
   + **S3 - Apache Hive 메타스토어(S3 - Apache Hive metastore)**를 선택하여 Apache Hive 메타스토어를 사용하는 Amazon S3의 데이터 집합을 쿼리합니다. 이 옵션에 대한 자세한 내용은 [Apache Hive 메타스토어에 Athena 연결](connect-to-data-source-hive-connecting-athena-to-an-apache-hive-metastore.md) 섹션을 참조하세요.
   + <shared id="ATE"/>에서 사용할 고유한 데이터 원본 커넥터를 생성하려면 **사용자 정의 또는 고유 데이터(Custom or shared data)**을 선택합니다. 데이터 원본 커넥터 작성에 대한 정보에 대한 자세한 내용은 [Athena Query Federation SDK를 사용하여 데이터 소스 커넥터 개발](connect-data-source-federation-sdk.md) 섹션을 참조하세요.

1. **다음**을 선택합니다.

1. **데이터 소스 세부 정보 입력** 페이지의 **데이터 소스 이름**에서 자동 생성된 이름을 사용하거나 Athena에서 데이터 소스를 쿼리할 때 SQL 문에 사용할 고유 이름을 입력합니다. 이름은 127자까지 입력할 수 있으며 계정 내에서 고유해야 합니다. 생성 후에는 변경할 수 없습니다. 유효한 문자는 a-z, A-Z, 0-9, \_(밑줄), @(앰퍼샌드) 및 -(하이픈)입니다. `awsdatacatalog`, `hive`, `jmx`, `system` 이름은 Athena에 예약되어 있으므로 데이터 원본 이름에 사용할 수 없습니다.

1. 선택한 데이터 소스가 AWS Glue 연결을 사용하는 경우.

   1. **AWS Glue 연결 세부 정보**에 필요한 정보를 입력합니다. 특정 데이터 소스에 연결하는 데 필요한 속성을 포함하는 연결입니다. 필요한 속성은 연결 유형에 따라 다릅니다. 커넥터와 관련된 속성에 대한 자세한 내용은 [사용 가능한 데이터 소스 커넥터](connectors-available.md) 섹션을 참조하세요. 추가 연결 속성에 대한 자세한 내용은 *AWS Glue 사용 설명서*의 [AWS Glue 연결 속성](https://docs.aws.amazon.com/glue/latest/dg/connection-properties.html)을 참조하세요.
**주의**  
Glue 연결에서 다음 속성은 업데이트할 수 없습니다. 연결을 새로 생성해야 합니다.  
VPC 구성 – `security_group_ids`, `subnet_ids` 

   1.  **Glue 데이터 카탈로그 IAM 역할**은 [Lambda 권한이 없는 AWS Glue Data Catalog 페더레이션 커넥터](connect-to-a-data-source-permissions.md#connect-to-a-data-source-permissions-managed) 섹션을 참조하세요.
**참고**  
**Lambda 실행 IAM 역할**의 경우 다음 중 하나를 선택합니다.  
**새 실행 역할 생성 및 사용** - (기본값) Athena는 사용자를 대신하여 AWS Lambda의 리소스에 액세스하는 데 사용할 실행 역할을 생성합니다. Athena에서 페더레이션된 데이터 소스를 생성하려면 이 역할이 필요합니다.
**기존 실행 역할 사용** - 이 옵션을 사용하여 기존 실행 역할을 선택합니다. 이 옵션의 경우 **실행 역할** 드롭다운에서 사용하려는 실행 역할을 선택합니다.

1. 선택한 데이터 소스가 AWS Glue 연결을 사용하지 않는 경우.

   1. **Lambda 함수**에 대해 **Lambda 함수 생성**을 선택합니다. 선택한 커넥터의 함수 페이지가 AWS Lambda 콘솔에서 열립니다. 이 페이지에는 커넥터에 대한 자세한 정보가 포함되어 있습니다.

   1. **애플리케이션 설정(Application settings)**에서 각 애플리케이션 설정에 관한 설명을 신중히 읽은 다음 필요에 따라 값을 입력합니다.

      표시되는 애플리케이션 설정은 데이터 원본의 커넥터에 따라 다릅니다. 최소한의 필수 설정은 다음과 같습니다.
      + **AthenaCatalogName** – `cloudwatchlogs`와 같이 대상으로 하는 데이터 원본을 나타내는 소문자로 된 Lambda 함수의 이름입니다.
      + **SpillBucket** – Lambda 함수 응답 크기 제한을 초과하는 데이터를 저장하기 위한 계정의 Amazon S3 버킷입니다.
**참고**  
유출된 데이터는 후속 실행에서 재사용되지 않으며 안전하게 삭제할 수 있습니다. Athena는 이 데이터를 삭제하지 않습니다. Amazon S3 유출 버킷에서 이전 데이터를 삭제하는 객체 수명 주기 정책을 추가하여 이러한 객체를 관리하는 것이 좋습니다. 자세한 내용은 Amazon S3 사용 설명서의 [스토리지 수명 주기 관리](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html)를 참조하세요.

   1. **이 앱이 사용자 지정 IAM 역할 및 리소스 정책을 생성하는 것을 확인(I acknowledge that this app creates custom IAM roles and resource policies)**을 선택합니다. 자세한 내용을 보려면 **정보** 링크를 선택하세요.

   1. **배포(Deploy)**를 선택합니다. 배포가 완료되면 Lambda 콘솔의 **리소스** 섹션에 Lambda 함수가 나타납니다.

      계정에 데이터 원본 커넥터를 배포한 후 Athena를 연결할 수 있습니다.

   1. <shared id="ATE"/> 콘솔의 **데이터 원본 입력(Enter data sources)** 페이지로 돌아갑니다.

   1. **연결 세부 정보(Connection details)**섹션에서 **Lambda 함수 선택 또는 입력** 검색 상자 옆에 있는 새로 고침 아이콘을 선택합니다.

   1. Lambda 콘솔에서 방금 생성한 함수의 이름을 선택합니다. Lambda 함수의 ARN이 표시됩니다.

1. (선택 사항) **태그(Tags)**에 대해 이 데이터 원본과 연결할 키-값 페어를 추가합니다. 태그에 대한 자세한 내용은 [Athena 리소스 태깅](tags.md) 섹션을 참조하세요.

1. **다음**을 선택합니다.

1. **검토 및 생성** 페이지에서 데이터 소스의 세부 정보를 검토합니다. 변경하려면 **편집**을 선택합니다.

1. **Athena가 계정에 리소스 생성**의 정보를 읽어보세요. 동의하는 경우 **Athena가 본인을 대신하여 리소스를 생성할 것임을 확인합니다**를 선택합니다.

1. **데이터 소스 생성**을 선택합니다. **Athena**은 계정에 다음 리소스를 생성합니다:
   + **AWS Glue Data Catalog Lambda가 없는 페더레이션 커넥터**의 경우
**참고**  
데이터 소스가 VPC에 있는 경우 Athena는 VPC에 연결하기 위해 계정에 탄력적 네트워크 인터페이스(ENI)를 생성합니다.
     + AWS Glue 연결
     + AWS Glue 카탈로그
   + **AWS Glue Data Catalog Lambda가 있는 페더레이션 커넥터**의 경우
     + AWS Glue 연결
     + Lambda 실행 IAM 역할
     + Lambda 함수
   + **Athena 데이터 카탈로그 페더레이션 커넥터**의 경우
     + Lambda 실행 IAM 역할
     + Lambda 함수

**데이터 원본 세부 정보(Data source details)** 페이지 섹션에는 새 커넥터에 대한 정보가 표시됩니다. 이제 <shared id="ATE"/> 쿼리에 커넥터를 사용할 수 있습니다.

쿼리에서 데이터 커넥터 사용에 대한 자세한 내용은 [페더레이션 쿼리 실행](running-federated-queries.md) 섹션을 참조하세요.