제로 ETL 통합 시작하기
Amazon Redshift에서 제로 ETL 통합을 구성하기 전에 Amazon Aurora DB 클러스터를 구성하고 필요한 파라미터 및 권한으로 설정하세요.
Amazon RDS 콘솔에서 - Amazon Aurora 사용 설명서에 나와 있는 대로 소스 Amazon Aurora DB 클러스터를 생성합니다.
-
Amazon RDS 콘솔에서 - Amazon Aurora 사용 설명서에 나와 있는 대로 DB 클러스터 파라미터를 구성합니다.
그런 다음 Amazon Redshift 콘솔 및 AWS CLI에서 나머지 초기 설정을 계속 진행합니다.
-
Amazon Redshift 콘솔에서 - 대상 Amazon Redshift 데이터 웨어하우스 만들기.
-
AWS CLI 또는 Amazon Redshift 콘솔에서 - 데이터 웨어하우스에 대/소문자 구분 기능 사용 설정.
-
Amazon Redshift 콘솔에서 - Amazon Redshift 데이터 웨어하우스에 대한 권한 부여 구성.
이미 대/소문자 구분을 사용 설정하고 데이터 웨어하우스에 대한 인증을 구성한 경우에는 Amazon Aurora 사용 설명서에 자세히 설명된 대로 Amazon RDS 콘솔에서 제로 ETL 통합 생성을 계속 진행하세요.
대상 Amazon Redshift 데이터 웨어하우스 만들기
이 단계를 수행하기 전에 Amazon RDS 콘솔에서 소스 DB 클러스터를 생성하고 DB 클러스터 파라미터를 구성합니다.
이 단계에서는 미리 보기 Redshift 서버리스 작업 그룹 또는 미리 보기 프로비저닝된 클러스터와 같은 대상 Amazon Redshift 데이터 웨어하우스를 생성합니다.
참고
대상 데이터 웨어하우스는 새 기능을 테스트해 볼 수 있는 Amazon Redshift 배포 옵션인 미리 보기에서 생성해야 합니다. 프로덕션에서 이러한 기능을 사용하거나 미리 보기 데이터 웨어하우스를 프로덕션 배포로 이동할 수 없습니다. Amazon Redshift 데이터 웨어하우스가 프로비저닝된 클러스터인 경우 반드시 암호화해야 합니다. 프로비저닝된 클러스터를 생성할 때 암호화하는 것이 좋습니다. 자세한 내용은 Amazon Redshift 데이터베이스 암호화 섹션을 참조하세요.
대상 데이터 웨어하우스의 특성은 다음과 같아야 합니다.
인스턴스 유형 ra3.16xlarge, ra3.4xlarge 또는 ra3.xlplus의 프로비저닝된 클러스터 또는 Amazon Redshift Serverless를 실행 중입니다.
미리 보기 클러스터 또는 작업 그룹으로 생성됩니다. Amazon Redshift 프로비저닝된 클러스터를 생성하는 경우
PREVIEW_2023
트랙을 선택해야 합니다. 현재 또는 후속 트랙의 데이터 웨어하우스는 미리 보기 트랙으로 수정할 수 없습니다.대/소문자 구분(
enable_case_sensitive_identifier
)이 켜져 있습니다. 자세한 내용은 데이터 웨어하우스에 대/소문자 구분 기능 사용 설정 섹션을 참조하세요.대상 데이터 웨어하우스가 Amazon Redshift 프로비저닝된 클러스터인 경우 암호화됩니다. 자세한 내용은 Amazon Redshift 데이터베이스 암호화 섹션을 참조하세요.
미리 보기에서 대상 데이터 웨어하우스를 만들려면 배포 유형에 따라 다음 항목 중 하나를 참조하세요.
Amazon Redshift 프로비저닝 클러스터 - 미리 보기 클러스터 생성. 제로 ETL 통합을 사용하려면
PREVIEW_2023
트랙을 선택해야 합니다.Amazon Redshift 서버리스 - 아래 절차를 따르세요.
참고
Amazon Redshift Serverless 기능을 테스트하려면 미리 보기에서 Amazon Redshift Serverless 작업 그룹을 만듭니다. 이러한 기능을 프로덕션 환경에서 사용하거나 미리 보기 작업 그룹을 프로덕션 작업 그룹으로 이동할 수 없습니다. 미리 보기 이용 약관은 AWS 서비스 약관
의 베타 및 미리 보기를 참조하세요. Preview(미리 보기)에서 작업 그룹 생성
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/redshift/
에서 Amazon Redshift 콘솔을 엽니다. 탐색 메뉴에서 서버리스 대시보드를 선택하고 작업 그룹 구성을 선택합니다. 현재 AWS 리전의 계정에 대한 작업 그룹이 나열됩니다. 각 작업 그룹의 속성 하위 집합이 목록의 열에 표시됩니다.
Workgroups(작업 그룹) 목록 페이지에 미리 보기를 소개하는 배너가 표시됩니다. Create preview workgroup(미리 보기 작업 그룹 생성) 버튼을 선택하여 작업 그룹 생성 페이지를 엽니다.
작업 그룹의 속성을 입력합니다. 미리 보기 버전임을 나타내는 작업 그룹 이름을 입력하는 것이 좋습니다. 테스트하려는 기능에 대해 -preview 레이블이 지정된 옵션을 포함하여 작업 그룹 옵션을 선택합니다. 작업 그룹 및 네임스페이스에 대한 옵션을 입력하려면 페이지를 계속 진행합니다. 작업 그룹 생성에 대한 일반 정보는 Amazon Redshift 관리 안내서의 네임스페이스를 사용하여 작업 그룹 생성을 참조하세요.
생성을 선택하여 미리 보기에서 작업 그룹을 생성합니다.
미리 보기 작업 그룹을 사용할 수 있으면 SQL 클라이언트를 사용하여 데이터를 로드하고 쿼리합니다.
프로비저닝된 클러스터를 생성하면 기본 파라미터 그룹도 생성됩니다. 기본 파라미터 그룹은 편집할 수 없으므로 새 클러스터를 생성하기 전에 사용자 지정 파라미터 그룹을 생성하여 클러스터에 연결하거나 생성된 클러스터에 연결할 파라미터 그룹을 편집할 수 있습니다. 또한 사용자 지정 파라미터 그룹을 만들 때 또는 현재 파라미터 그룹을 편집할 때 대/소문자 구분을 사용하도록 설정해야 제로 ETL 통합을 사용할 수 있습니다.
다음과 같이 Amazon Redshift 콘솔 또는 AWS CLI를 사용하여 사용자 지정 파라미터 그룹을 만들 수 있습니다.
Amazon Redshift 콘솔 사용 - 콘솔을 사용한 파라미터 그룹 관리
AWS CLI 사용 - AWS CLI 및 Amazon Redshift API를 사용한 파라미터 그룹 관리
데이터 웨어하우스에 대/소문자 구분 기능 사용 설정
프로비저닝된 클러스터를 생성하는 동안 파라미터 그룹을 연결하고 대소문자 구분을 활성화할 수 있지만, 서버리스 작업 그룹은 생성된 후에만 AWS Command Line Interface를 통해 업데이트할 수 있습니다. 이는 MySQL의 대/소문자 구분을 지원하는 데 필요합니다. enable_case_sensitive_identifier
는 데이터베이스, 테이블 및 열의 이름 식별자가 대/소문자를 구분하는지 여부를 결정하는 구성 값입니다. 데이터 웨어하우스에서 대/소문자를 구분하지 않는 통합을 만들려면 이 파라미터를 사용 설정해야 합니다. 자세한 내용은 enable_case_sensitive_identifier 단원을 참조하세요.
Amazon Redshift Serverless의 경우 – AWS CLI를 사용하여 Amazon Redshift 서버리스에 대/소문자 구분 사용 설정. 대/소문자 구분은 AWS CLI에서만 Amazon Redshift Serverless에 대해 설정할 수 있다는 점에 유의하세요.
Amazon Redshift 프로비저닝된 클러스터의 경우 - Amazon Redshift 콘솔을 사용하여 대/소문자 구분을 프로비저닝된 클러스터에 사용 설정 또는 AWS CLI를 사용하여 대/소문자 구분을 프로비저닝된 클러스터에 사용 설정.
다음 AWS CLI 명령을 실행하여 MySQL의 대/소문자 구분을 사용 설정합니다.
aws redshift-serverless update-workgroup \ --workgroup-name
destination-workgroup
\ --config-parameters parameterKey=enable_case_sensitive_identifier,parameterValue=true
다음 단계로 진행하기 전에 작업 그룹 상태가 Active
상태가 될 때까지 기다립니다.
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/redshift/
에서 Amazon Redshift 콘솔을 엽니다. 왼쪽 탐색 창에서 프로비저닝된 클러스터 대시보드를 선택합니다.
데이터를 복제할 프로비저닝된 클러스터를 선택합니다. 클러스터 세부 정보 페이지가 나타납니다.
왼쪽 탐색 창에서 구성 > 워크로드 관리를 선택합니다. 워크로드 관리 페이지가 나타납니다.
파라미터 그룹을 선택합니다.
파라미터 탭을 선택합니다.
대/소문자 구분 식별자 사용 설정을 선택한 다음 저장을 선택합니다.
메시지가 나타나면 저장을 선택합니다.
기본 파라미터 그룹은 편집할 수 없으므로 터미널 프로그램에서 다음 AWS CLI 명령을 실행하여 사용자 지정 파라미터 그룹을 생성하고 프로비저닝된 클러스터와 연결합니다.
aws redshift create-cluster-parameter-group \ --parameter-group-name
zero-etl-params
\ --parameter-group-family redshift-1.0 \ --description "Param group for zero-ETL integrations"다음 AWS CLI 명령을 실행하여 MySQL의 대/소문자 구분을 사용 설정합니다.
aws redshift modify-cluster-parameter-group \ --parameter-group-name
zero-etl-params
\ --parameters ParameterName=enable_case_sensitive_identifier,ParameterValue=true다음 명령을 실행하여 파라미터 그룹을 클러스터에 연결합니다.
aws redshift modify-cluster \ --cluster-identifier
destination-cluster
\ --cluster-parameter-group-namezero-etl-params
프로비저닝된 클러스터를 사용할 수 있을 때까지 기다립니다.
describe-cluster
명령을 사용하여 클러스터의 상태를 확인할 수 있습니다. 그리고 나서 다음 명령을 실행하여 클러스터를 재부팅합니다.aws redshift reboot-cluster \ --cluster-identifier
destination-cluster
Amazon Redshift 데이터 웨어하우스에 대한 권한 부여 구성
Aurora MySQL DB 클러스터의 데이터를 Amazon Redshift 데이터 웨어하우스에 복제하려면 먼저 다음 두 엔터티를 추가해야 합니다.
권한 있는 보안 주체 — 데이터 웨어하우스에 제로 ETL 통합을 생성할 수 있는 사용자 또는 역할을 식별합니다.
권한 있는 통합 소스 — 데이터 웨어하우스를 업데이트할 수 있는 Aurora MySQL DB 클러스터를 식별합니다.
권한 있는 보안 주체 추가
Redshift Serverless 작업 그룹 또는 프로비저닝된 클러스터에 제로 ETL 통합을 생성하려면 연결된 네임스페이스 또는 프로비저닝된 클러스터에 대한 액세스 권한을 부여하세요.
다음 조건이 모두 충족되면 이 단계를 건너뛰어도 됩니다.
Redshift Serverless 작업 그룹 또는 프로비저닝된 클러스터를 소유하는 AWS 계정이 소스 Aurora MySQL DB 클러스터도 소유합니다.
해당 보안 주체가 이 Redshift Serverless 네임스페이스 또는 프로비저닝된 클러스터에 제로 ETL 통합을 생성할 수 있는 권한이 있는 ID 기반 IAM 정책과 연결되어 있습니다.
-
Amazon Redshift 콘솔의 왼쪽 탐색 창에서 Redshift 서버리스를 선택합니다.
-
네임스페이스의 이름을 선택하고 리소스 정책 탭으로 이동합니다. 탭이 표시되지 않는 경우 리소스 정책 탭이 내 Amazon Redshift 데이터 웨어하우스에 표시되지 않는 경우 섹션을 참조하세요.
-
권한 있는 보안 주체 추가를 선택합니다.
-
추가하려는 권한 있는 보안 주체별로 AWS 사용자 또는 역할의 ARN 또는 네임스페이스에 제로 ETL 통합을 만들기 위해 액세스 권한을 부여하려는 AWS 계정 ID를 입력합니다. 계정 ID는 ARN으로 저장됩니다.
변경 사항 저장을 선택합니다.
-
Amazon Redshift 콘솔의 왼쪽 탐색 창에서 프로비저닝된 클러스터 대시보드를 선택합니다.
-
클러스터를 선택한 다음 클러스터를 선택하고 리소스 정책 탭으로 이동합니다. 이 탭이 보이지 않는 경우 리소스 정책 탭이 내 Amazon Redshift 데이터 웨어하우스에 표시되지 않는 경우 섹션을 참조하세요.
-
권한 있는 보안 주체 추가를 선택합니다.
-
추가하려는 권한 있는 보안 주체별로 AWS 사용자 또는 역할의 ARN 또는 클러스터에 제로 ETL 통합을 만들기 위해 액세스 권한을 부여하려는 AWS 계정 ID를 입력합니다. 계정 ID는 ARN으로 저장됩니다.
Save changes(변경 사항 저장)를 선택합니다.
권한 있는 통합 소스 추가
소스 DB 클러스터가 Amazon Redshift 데이터 웨어하우스를 업데이트할 수 있도록 하려면 네임스페이스에 권한 있는 통합 소스로 추가해야 합니다.
-
Amazon Redshift 콘솔에서 서버리스 대시보드로 이동합니다.
-
네임스페이스의 이름을 선택합니다.
-
리소스 정책 탭으로 이동합니다.
-
권한 있는 통합 소스 추가를 선택합니다.
-
제로 ETL 통합을 위한 데이터 소스인 Aurora MySQL DB 클러스터의 ARN을 지정합니다. 예:
arn:aws:rds:us-east-1:
.123456789012
:cluster:zero-etl-cluster
참고
권한 있는 통합 소스를 제거하면 네임스페이스에 데이터가 복제되는 것이 중지됩니다. 이 작업을 수행하면 해당 소스 Aurora DB 클러스터에서 이 네임스페이스로의 모든 제로 ETL 통합이 비활성화됩니다.
-
Amazon Redshift 콘솔에서 프로비저닝된 클러스터 대시보드로 이동합니다.
-
프로비저닝된 클러스터의 이름을 선택합니다.
-
리소스 정책 탭으로 이동합니다.
-
권한 있는 통합 소스 추가를 선택합니다.
-
제로 ETL 통합을 위한 데이터 소스인 소스 Aurora DB 클러스터의 ARN을 지정합니다. 예:
arn:aws:rds:us-east-1:
.123456789012
:cluster:zero-etl-cluster
참고
권한 있는 통합 소스를 제거하면 프로비저닝된 클러스터에 데이터가 복제되는 것이 중지됩니다. 이 작업을 수행하면 해당 소스 Aurora DB 클러스터에서 이 Amazon Redshift 프로비저닝된 클러스터로의 모든 제로 ETL 통합이 비활성화됩니다.
다음 단계
이제 대상 Amazon Redshift 데이터 웨어하우스에 대한 권한 부여를 구성했으므로, 제로 ETL 통합을 만들고 데이터 복제를 시작할 수 있습니다. 관련 지침은 Amazon Redshift가 구성된 Amazon Aurora 제로 ETL 통합 생성 섹션을 참조하세요.