

# AWS Glue Studio에서 SAP HANA에 연결
<a name="connecting-to-data-saphana"></a>

 AWS Glue에서는 SAP HANA을 기본으로 지원합니다. AWS Glue Studio에서는 SAP HANA에 연결하고, 데이터 통합 작업을 작성하며, AWS Glue Studio 서버리스 Spark 런타임에서 실행할 수 있는 시각적 인터페이스를 제공합니다.

 AWS Glue Studio에서 SAP HANA용 통합 연결을 생성합니다. 자세한 내용은 [고려 사항](using-connectors-unified-connections.md#using-connectors-unified-connections-considerations) 섹션을 참조하세요.

**Topics**
+ [SAP HANA 커넥션 생성](creating-saphana-connection.md)
+ [SAP HANA 소스 노드 생성](creating-saphana-source-node.md)
+ [SAP HANA 대상 노드 생성](creating-saphana-target-node.md)
+ [고급 옵션](#creating-saphana-connection-advanced-options)

# SAP HANA 커넥션 생성
<a name="creating-saphana-connection"></a>

AWS Glue에서 SAP HANA에 연결하려면 AWS Secrets Manager 보안 암호에서 SAP HANA 보안 인증 정보를 생성하고 저장한 다음 해당 보안 암호를 SAP HANA AWS Glue 연결에 연결해야 합니다. SAP HANA 서비스와 AWS Glue 간에 네트워크 연결을 구성해야 합니다.

**사전 조건** 
+ SAP HANA 서비스가 Amazon VPC에 있는 경우, 퍼블릭 인터넷을 통과하는 트래픽 없이 AWS Glue 작업이 SAP HANA 서비스와 통신할 수 있도록 Amazon VPC를 구성하십시오.

  Amazon VPC에서 작업을 실행하는 동안 AWS Glue가 사용할 **VPC**, **서브넷** 및 **보안 그룹**을 식별하거나 생성합니다. 또한 Amazon VPC가 SAP HANA 엔드포인트와 이 위치 간의 네트워크 트래픽을 허용하도록 구성되어 있는지 확인해야 합니다. 작업을 수행하려면 SAP HANA JDBC 포트와의 TCP 연결을 설정해야 합니다. SAP HANA 포트에 대한 자세한 내용은 [SAP HANA 설명서](https://help.sap.com/docs/HANA_SMART_DATA_INTEGRATION/7952ef28a6914997abc01745fef1b607/88e2e8bded9e4041ad3ad87dc46c7b55.html?locale=en-US)를 참조하십시오. 네트워크 레이아웃에 따라 보안 그룹 규칙, 네트워크 ACL, NAT 게이트웨이 및 피어링 연결을 변경해야 할 수도 있습니다.

**SAP HANA에 대한 연결 구성하는 방법:**

1. AWS Secrets Manager에서 SAP HANA 보안 인증을 사용하여 보안 암호를 생성합니다. Secrets Manager에서 보안 암호를 생성하려면 AWS Secrets Manager 설명서의 [Create an AWS Secrets Manager secret](https://docs.aws.amazon.com//secretsmanager/latest/userguide/create_secret.html)에서 제공하는 자습서를 따릅니다. 보안 암호를 생성한 후에는 다음 단계를 위해 보안 암호 이름, *secretName*을 유지합니다.
   + **키/값 페어**를 선택하면 값 *saphanaUsername*이 포함된 키 `username/USERNAME`에 대한 페어를 생성합니다.
   + **키/값 페어**를 선택하면 값 *saphanaPassword*가 포함된 키 `password/PASSWORD`에 대한 페어를 생성합니다.

1. AWS Glue 콘솔에서 [AWS Glue 연결 추가](console-connections.md)의 단계에 따라 연결을 생성합니다. 연결을 생성한 후에는 AWS Glue에서 이용하기 위해 연결 이름 *connectionName*을 유지합니다.
   + **연결 유형**을 선택할 때 SAP HANA를 선택합니다.
   + **SAP HANA URL을** 제공할 때는 인스턴스의 URL을 제공하십시오.

     SAP HANA JDBC URL은 `jdbc:sap://saphanaHostname:saphanaPort/?databaseName=saphanaDBname,ParameterName=ParameterValue` 형식입니다

     AWS Glue는 JDBC URL 매개 변수가 필요합니다.
     + `databaseName` - 연결할 SAP HANA의 기본 데이터베이스입니다.
   + **AWS 보안 암호**를 선택할 때 *secretName*을 입력합니다.

AWS Glue SAP HANA 연결을 생성한 후에는 AWS Glue 작업을 실행하기 전에 다음 단계를 수행해야 합니다.
+ AWS Glue 작업 권한과 연결된 IAM 역할에 *secretName*을 읽을 수 있는 권한을 부여합니다.

# SAP HANA 소스 노드 생성
<a name="creating-saphana-source-node"></a>

## 필수 전제 조건
<a name="creating-saphana-source-node-prerequisites"></a>
+ 이전 섹션 [SAP HANA 커넥션 생성](creating-saphana-connection.md)에서 설명한 것처럼 AWS Secrets Manager 암호로 구성된 AWS Glue SAP HANA 연결입니다.
+ 연결에 사용되는 보안 암호를 읽을 작업에 대한 적절한 권한.
+ 읽으려는 SAP HANA 테이블, *tableName* 또는 쿼리 *targetQuery*.

  SAP HANA 테이블 이름 및 스키마 이름을 `schemaName.tableName` 형식으로 테이블을 지정할 수 있습니다. 테이블이 기본 스키마 "public"에 있는 경우 스키마 이름과 "." 구분 기호는 필요하지 않습니다. 이것을 *tableIdentifier*라고 합니다. 데이터베이스는 `connectionName`에서 JDBC URL 매개변수로 제공된다는 점에 유의하십시오.

## SAP HANA 데이터 소스 추가
<a name="creating-saphana-source-node-add"></a>

****데이터 소스 - SAP HANA** 노드를 추가하는 방법:**

1.  SAP HANA 데이터 소스의 연결을 선택합니다. 생성했으므로 드롭다운에서 사용할 수 있을 것입니다. 연결을 생성해야 하는 경우 **SAP HANA 연결 생성**을 선택합니다. 자세한 내용은 이전[SAP HANA 커넥션 생성](creating-saphana-connection.md) 섹션을 참조하세요.

    연결을 선택한 후에는 **속성 보기**를 클릭하여 연결 속성을 볼 수 있습니다.

1.  **SAP HANA 소스** 옵션을 선택하십시오.
   +  **단일 테이블 선택** - 단일 테이블에서 모든 데이터에 액세스할 수 있습니다.
   +  **사용자 지정 쿼리 입력** - 사용자 지정 쿼리를 기반으로 여러 테이블의 데이터 세트에 액세스할 수 있습니다.

1.  단일 테이블을 선택한 경우 *tableName*을 입력합니다.

    **사용자 지정 쿼리 입력**을 선택한 경우 SQL SELECT 쿼리를 입력합니다.

1.  **사용자 지정 SAP HANA 속성**에서 필요한 경우 파라미터와 값을 입력합니다.

# SAP HANA 대상 노드 생성
<a name="creating-saphana-target-node"></a>

## 필수 전제 조건
<a name="creating-saphana-target-node-prerequisites"></a>
+ 이전 섹션 [SAP HANA 커넥션 생성](creating-saphana-connection.md)에서 설명한 것처럼 AWS Secrets Manager 암호로 구성된 AWS Glue SAP HANA 연결입니다.
+ 연결에 사용되는 보안 암호를 읽을 작업에 대한 적절한 권한.
+ 쓰고 싶은 SAP HANA 테이블, *tableName*

  SAP HANA 테이블 이름 및 스키마 이름을 `schemaName.tableName` 형식으로 테이블을 지정할 수 있습니다. 테이블이 기본 스키마 "public"에 있는 경우 스키마 이름과 "." 구분 기호는 필요하지 않습니다. 이것을 *tableIdentifier*라고 합니다. 데이터베이스는 `connectionName`에서 JDBC URL 매개변수로 제공된다는 점에 유의하십시오.

## SAP HANA 데이터 대상 추가
<a name="creating-saphana-target-node-add"></a>

****데이터 대상 - SAP HANA** 노드 추가 방법:**

1.  SAP HANA 데이터 소스의 연결을 선택합니다. 생성했으므로 드롭다운에서 사용할 수 있을 것입니다. 연결을 생성해야 하는 경우 **SAP HANA 연결 생성**을 선택합니다. 자세한 내용은 이전[SAP HANA 커넥션 생성](creating-saphana-connection.md) 섹션을 참조하세요.

    연결을 선택한 후에는 **속성 보기**를 클릭하여 연결 속성을 볼 수 있습니다.

1. *tableName*을 제공하여 **테이블 이름**을 구성합니다.

1.  **사용자 지정 Teradata 속성**에서 필요한 경우 파라미터와 값을 입력합니다.

## 고급 옵션
<a name="creating-saphana-connection-advanced-options"></a>

SAP HANA 노드를 생성할 때 고급 옵션을 제공할 수 있습니다. 이 옵션은 Spark 스크립트에 대한 AWS Glue를 프로그래밍할 때 사용할 수 있는 옵션과 동일합니다.

[SAP HANA 커넥션](aws-glue-programming-etl-connect-saphana-home.md)를 참조하세요.