

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Step Functions 및 Amazon Redshift API를 사용하여 ETL/ELT 워크플로 실행
<a name="sample-etl-orchestration"></a>

이 샘플 프로젝트에서는 Step Functions 및 Amazon Redshift Data API를 사용하여 Amazon Redshift 데이터 웨어하우스로 데이터를 로드하는 ETL/ELT 워크플로를 실행하는 방법을 보여줍니다.

이 프로젝트에서 Step Functions는 AWS Lambda 함수와 Amazon Redshift Data API를 사용하여 필요한 데이터베이스 객체를 만들고 예제 데이터 집합을 생성한 다음 차원 테이블과 팩트 테이블을 로드하는 두 작업을 동시에 실행합니다. 두 차원 로드 작업 모두 성공적으로 종료되면 Step Functions는 팩트 테이블에 대한 로드 작업을 실행하고 검증 작업을 실행한 다음 Amazon Redshift 클러스터를 일시 중지합니다.

**참고**  
 ETL 로직을 수정하여 Amazon S3와 같은 다른 소스에서 데이터를 받을 수 있으므로 [COPY](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html) 명령을 사용하여 Amazon S3에서 Amazon Redshift 테이블로 데이터를 복사할 수 있습니다.

Amazon Redshift 및 Step Functions 서비스 통합에 대한 자세한 내용은 다음 설명서를 참조하세요.
+ [Step Functions에서 서비스 통합](integrate-services.md)
+  [Amazon Redshift Data API 사용](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html) 
+  [Amazon Redshift Data API 서비스](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/rds-data.html) 
+  [Lambda를 사용하는 Step Functions 상태 머신 만들기](tutorial-creating-lambda-state-machine.md) 

Lambda 및 Amazon Redshift의 IAM 정책에 대한 자세한 내용은 다음 설명서를 참조하세요.
+  [호출을 위한 IAM 정책AWS Lambda](connect-lambda.md#lambda-iam) 
+  [Amazon Redshift Data API에 대한 액세스 권한 부여](https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html#data-api-access) 

**참고**  
이 샘플 프로젝트를 사용할 때 요금이 발생할 수 있습니다.  
신규 AWS 사용자는 프리 티어를 사용할 수 있습니다. 이 계층에서 특정 사용 수준 미만의 서비스는 무료입니다. AWS 비용 및 프리 티어에 대한 자세한 내용은 [AWS Step Functions 요금](https://aws.amazon.com/step-functions/pricing/)을 참조하세요.

## 1단계: 상태 머신 만들기
<a name="sample-etl-orchestration-create"></a>

1. [Step Functions 콘솔](https://console.aws.amazon.com/states/home?region=us-east-1#/)을 열고 **상태 머신 생성**을 선택합니다.

1. **템플릿에서 생성**을 선택하고 관련 스타터 템플릿을 찾습니다. **다음**을 선택하여 계속 진행합니다.

1. 사용할 템플릿을 선택합니다.

   1. **데모 실행** - 읽기 전용 상태 머신을 생성합니다. 검토 후 워크플로와 모든 관련 리소스를 생성할 수 있습니다.

   1. **이를 기반으로 구축** - 자체 리소스를 사용하여 검토, 사용자 지정 및 배포할 수 있는 편집 가능한 워크플로 정의를 제공합니다. (함수 또는 대기열과 같은 관련 리소스는 자동으로 생성되지 **않습니다**.)

1. **템플릿 사용**을 선택하여 계속 선택합니다.
**참고**  
*계정에 배포된 서비스에 표준 요금이 적용됩니다.*

## 2단계: 상태 머신 데모 실행
<a name="sample-etl-orchestration-start-execution"></a>

**데모 실행** 옵션을 선택한 경우 모든 관련 리소스가 배포되고 실행할 준비가 됩니다. **이를 기반으로 구축**을 선택한 경우 사용자 지정 워크플로를 실행하기 전에 자리 표시자 값을 설정하고 추가 리소스를 생성해야 할 수 있습니다.

1. **배포 및 실행**을 선택합니다.

1. CloudFormation 스택이 배포될 때까지 기다립니다. 이 프로세스는 최대 10분이 걸릴 수 있습니다.

1. **실행 시작** 옵션이 나타나면 **입력**을 검토하고 **실행 시작**을 선택합니다.

**축하합니다\$1**  
이제 상태 머신의 데모가 실행 중이어야 합니다. **그래프 보기**에서 상태를 선택하여 입력, 출력, 변수, 정의 및 이벤트를 검토할 수 있습니다.