제퍼넷 로고

Amazon Redshift와 Amazon Aurora PostgreSQL 제로 ETL 통합을 사용하여 거의 실시간에 가까운 운영 분석을 달성 | 아마존 웹 서비스

시간

“데이터는 모든 애플리케이션, 프로세스, 비즈니스 결정의 중심에 있습니다. 데이터를 사용하여 고객 경험을 개선하고 혁신을 추진하면 비즈니스 성장으로 이어질 수 있습니다.”

- 스와미 시바수브라마니아어, AWS의 데이터베이스, 분석 및 기계 학습 부사장 제로 ETL 접근 방식을 통해 AWS는 건설업체가 거의 실시간 분석을 실현하도록 돕습니다..

업계 전반의 고객은 점점 더 데이터 중심으로 변하고 있으며 트랜잭션 데이터에 대해 실시간에 가까운 분석을 구현하여 민첩성을 향상함으로써 수익을 늘리고 비용을 절감하며 비즈니스 운영을 최적화하려고 합니다. AWS는 고객 요구 사항과 피드백을 기반으로 구축자가 분석용 데이터를 준비하는 대신 데이터에서 가치를 창출하는 데 더 집중할 수 있도록 제로 ETL 비전을 실현하기 위해 투자하고 꾸준히 발전하고 있습니다.

당사의 제로ETL 통합 아마존 레드 시프트 페타바이트 규모의 데이터에서 Amazon Redshift를 사용하여 분석, 인공 지능(AI) 및 기계 학습(ML)에 대비할 수 있도록 지점 간 데이터 이동을 촉진합니다. 트랜잭션 데이터가 기록된 후 몇 초 이내에 되지 않습니다. AWS 데이터베이스인 zero-ETL을 사용하면 Amazon Redshift에서 데이터를 원활하게 사용할 수 있으므로 ETL(추출, 변환 및 로드) 작업을 수행하는 복잡한 데이터 파이프라인을 구축하고 유지 관리할 필요가 없습니다.

트랜잭션 데이터베이스와 데이터 웨어하우스 간의 ETL 파이프라인 구축 및 관리에 획일적인 시간과 리소스를 투자하는 대신 데이터에서 가치를 창출하는 데 집중할 수 있도록 지원합니다. AWS re:Invent 2023에서 Amazon Redshift와 XNUMX개의 AWS 데이터베이스 제로 ETL 통합을 발표했습니다.:

이 게시물에서는 다음을 사용하여 거의 실시간 운영 분석을 시작하는 방법에 대한 단계별 지침을 제공합니다. Amazon Redshift와 Amazon Aurora PostgreSQL 제로 ETL 통합.

솔루션 개요

제로 ETL 통합을 생성하려면 다음을 지정합니다. Amazon Aurora PostgreSQL 호환 에디션 클러스터(PostgreSQL 15.4 및 제로 ETL 지원과 호환 가능)를 소스로, Redshift 데이터 웨어하우스를 대상으로 합니다. 통합은 소스 데이터베이스의 데이터를 대상 데이터 웨어하우스로 복제합니다.

내에 Aurora PostgreSQL DB 프로비저닝 클러스터를 생성해야 합니다. Amazon RDS 데이터베이스 미리 보기 환경 그리고 레드시프트 프로비저닝된 미리보기 클러스터 or 서버리스 미리보기 작업 그룹, 미국 동부(오하이오) AWS 리전. Amazon Redshift의 경우 ETL이 없는 통합을 사용하려면 Preview_2023 트랙을 선택해야 합니다.

다음 다이어그램은 이 게시물에서 구현된 아키텍처를 보여줍니다.

다음은 이 솔루션에 대한 제로 ETL 통합을 설정하는 데 필요한 단계입니다. 전체 시작 가이드를 보려면 다음을 참조하세요. Amazon Redshift와 Aurora zero-ETL 통합 작업제로 ETL 통합 작업.

bdb-3883-image001

1단계 이후에는 2~4단계를 건너뛰고 5단계에서 바로 제로 ETL 통합 생성을 시작할 수도 있습니다. 이 경우 Amazon RDS는 누락된 구성에 대한 메시지를 표시하며 다음을 선택할 수 있습니다. 나를 위해 수정 Amazon RDS가 자동으로 단계를 구성하도록 합니다.

  1. 사용자 지정된 DB 클러스터 파라미터 그룹을 사용하여 Aurora PostgreSQL 소스를 구성합니다.
  2. 구성 Amazon Redshift 서버리스 네임스페이스에 필요한 리소스 정책이 있는 대상입니다.
  3. 대소문자를 구분하는 식별자를 활성화하도록 Redshift Serverless 작업 그룹을 업데이트합니다.
  4. 필요한 권한을 구성합니다.
  5. 제로 ETL 통합을 생성합니다.
  6. Amazon Redshift의 통합에서 데이터베이스를 생성합니다.
  7. 실시간에 가까운 거래 데이터 분석을 시작하세요.

사용자 정의된 DB 클러스터 파라미터 그룹을 사용하여 Aurora PostgreSQL 소스 구성

Aurora PostgreSQL DB 클러스터의 경우 다음 내에 사용자 지정 파라미터 그룹을 생성해야 합니다. Amazon RDS 데이터베이스 미리 보기 환경, 미국 동부(오하이오) 리전. 당신은 할 수 있습니다 Amazon RDS 미리보기 환경에 직접 액세스.

Aurora PostgreSQL 데이터베이스를 생성하려면 다음 단계를 완료하십시오.

  1. Amazon RDS 콘솔에서 다음을 선택합니다. 매개변수 그룹 탐색 창에서
  2. 왼쪽 메뉴에서 매개변수 그룹 만들기.
  3. 럭셔리 매개변수 그룹 제품군선택한다. aurora-postgresql15.
  4. 럭셔리 타입선택한다. DB Cluster Parameter Group.
  5. 럭셔리 그룹 이름, 이름을 입력하십시오 (예 : zero-etl-custom-pg-postgres).
  6. 왼쪽 메뉴에서 만들기.bdb-3883-image002

Amazon Redshift와 Aurora PostgreSQL zero-ETL 통합에는 특정 값이 필요합니다. Aurora DB 클러스터 파라미터, 향상된 논리적 복제(aurora.enhanced_logical_replication)가 필요합니다.

  1. 매개변수 그룹 페이지에서 새로 생성된 매개변수 그룹을 선택합니다.
  2. 행위 메뉴, 선택 편집.
  3. 다음 Aurora PostgreSQL을 설정합니다(aurora-postgresql15 제품군) 클러스터 매개변수 설정:
    • rds.logical_replication=1
    • aurora.enhanced_logical_replication=1
    • aurora.logical_replication_backup=0
    • aurora.logical_replication_globaldb=0

향상된 논리적 복제(aurora.enhanced_logical_replication)를 활성화하면 자동으로 REPLICA IDENTITY 매개변수가 FULL로 설정됩니다. 이는 모든 열 값이 WAL(미리 쓰기 로그)에 기록된다는 의미입니다.

  1. 왼쪽 메뉴에서 저장 (Save Changes).bdb-3883-image003
  2. 왼쪽 메뉴에서 데이터베이스 탐색 창에서 다음을 선택합니다. 데이터베이스 생성.
    bdb-3883-image004
  3. 럭셔리 엔진 종류, 고르다 Amazon Aurora.
  4. 럭셔리 Edition, 고르다 Amazon Aurora PostgreSQL 호환 에디션.
  5. 럭셔리 사용 가능한 버전선택한다. Aurora PostgreSQL(PostgreSQL 15.4 및 Zero-ETL 지원과 호환).bdb-3883-image006
  6. 럭셔리 Canva의 제작된 채널아트 템플릿을, 고르다 생산.
  7. 럭셔리 DB 클러스터 식별자, 입력 zero-etl-source-pg.bdb-3883-image007
  8. $XNUMX Million 미만 자격 증명 설정, 비밀번호를 입력하세요 마스터 비밀번호 또는 자동으로 비밀번호를 생성하는 옵션을 사용하세요.
  9. . 인스턴스 구성 섹션, 고르다 메모리 최적화 클래스.
  10. 적절한 인스턴스 크기를 선택합니다(기본값은 db.r5.2xlarge).bdb-3883-image008
  11. $XNUMX Million 미만 추가 구성에 대한 DB 클러스터 파라미터 그룹, 이전에 생성한 파라미터 그룹을 선택합니다(zero-etl-custom-pg-postgres).bdb-3883-image009
  12. 나머지 구성에 대해서는 기본 설정을 그대로 둡니다.
  13. 왼쪽 메뉴에서 데이터베이스 생성.

몇 분 안에 하나의 작성자와 하나의 리더 인스턴스가 있는 Aurora PostgreSQL 클러스터가 가동되며 상태는 다음과 같이 변경됩니다. 만들기유효한. 새로 생성된 Aurora PostgreSQL 클러스터는 제로 ETL 통합의 소스가 됩니다.

bdb-3883-image010

다음 단계는 제로 ETL 통합을 위해 Amazon Aurora PostgreSQL에 명명된 데이터베이스를 생성하는 것입니다.

PostgreSQL 리소스 모델을 사용하면 클러스터 내에 여러 데이터베이스를 생성할 수 있습니다. 따라서 ETL이 없는 통합 생성 단계에서 통합의 소스로 사용할 데이터베이스를 지정해야 합니다.

PostgreSQL을 설정할 때 기본적으로 template0, template1 및 postgres라는 세 가지 표준 데이터베이스를 얻을 수 있습니다. PostgreSQL에서 새 데이터베이스를 생성할 때마다 실제로는 클러스터에 있는 세 데이터베이스 중 하나를 기반으로 합니다. Aurora PostgreSQL 클러스터 생성 중에 생성된 데이터베이스는 template0을 기반으로 합니다. 그만큼 CREATE DATABASE 명령은 기존 데이터베이스를 복사하여 작동하며, 명시적으로 지정하지 않은 경우 기본적으로 표준 시스템 데이터베이스 template1을 복사합니다. Zero-ETL 통합을 위한 명명된 데이터베이스의 경우 데이터베이스는 template1이 아닌 template0을 사용하여 생성되어야 합니다. 따라서 초기 데이터베이스 이름이 아래에 추가되면 추가 구성, 이는 template0을 사용하여 생성되며 제로 ETL 통합에는 사용할 수 없습니다.

  1. 다음을 사용하여 명명된 새 데이터베이스를 생성하려면 CREATE DATABASE 새로운 Aurora PostgreSQL 클러스터 내 zero-etl-source-pg, 먼저 PostgreSQL 클러스터의 라이터 인스턴스 엔드포인트를 가져옵니다.bdb-3883-image011
  2. 터미널에서 또는 AWS 클라우드쉘, PostgreSQL 클러스터에 SSH로 접속하고 다음 명령을 실행하여 psql을 설치하고 새 데이터베이스를 생성합니다. zeroetl_db:
    sudo dnf install postgresql15
    psql –version
    psql -h <RDS Write Instance Endpoint> -p 5432 -U postgres
    create database zeroetl_db template template1;

첨가 template template1 선택사항입니다. 기본적으로 언급되지 않은 경우 CREATE DATABASE 사용하게 될 template1.

클라이언트를 통해 연결하고 데이터베이스를 생성할 수도 있습니다. 인용하다 Aurora PostgreSQL DB 클러스터에 연결 PostgreSQL 클러스터에 연결하는 옵션입니다.

Redshift Serverless를 대상으로 구성

Aurora PostgreSQL 소스 데이터베이스 클러스터를 생성한 후 Redshift 대상 데이터 웨어하우스를 구성합니다. 데이터 웨어하우스는 다음 요구 사항을 준수해야 합니다.

  • 미리 보기로 생성됨(Aurora PostgreSQL 소스에만 해당)
  • 3개 이상의 노드가 있는 RA3.16 노드 유형(ra3.4xlarge, ra3xlarge 또는 raXNUMX.xlplus) 또는 Redshift Serverless를 사용합니다.
  • 암호화됨(프로비저닝된 클러스터를 사용하는 경우)

이 게시물에서는 다음 단계에 따라 Redshift Serverless 작업 그룹과 네임스페이스를 대상 데이터 웨어하우스로 생성하고 구성합니다.

  1. Amazon Redshift 콘솔에서 다음을 선택합니다. 서버리스 대시보드 탐색 창에서

Amazon Aurora PostgreSQL과 Amazon Redshift의 ETL 제로 통합이 미리 보기로 시작되었으므로(프로덕션 목적이 아님) 미리 보기 환경에서 대상 데이터 웨어하우스를 생성해야 합니다.

  1. 왼쪽 메뉴에서 미리보기 작업그룹 만들기.

첫 번째 단계는 Redshift Serverless 작업 그룹을 구성하는 것입니다.

  1. 럭셔리 작업 그룹 이름, 이름을 입력하십시오 (예 : zero-etl-target-rs-wg).bdb-3883-image014
  2. 또한 용량을 선택하여 데이터 웨어하우스의 컴퓨팅 리소스를 제한할 수 있습니다. 용량은 8~8RPU에서 512단위로 구성할 수 있습니다. 이 게시물의 경우 다음으로 설정하세요. 8 RPU.
  3. 왼쪽 메뉴에서 다음 보기.bdb-3883-image016

다음으로 데이터 웨어하우스의 네임스페이스를 구성해야 합니다.

  1. 선택 새 네임스페이스 만들기.
  2. 럭셔리 네임 스페이스, 이름을 입력하십시오 (예 : zero-etl-target-rs-ns).
  3. 왼쪽 메뉴에서 다음 보기.bdb-3883-image017
  4. 왼쪽 메뉴에서 작업 그룹 만들기.
  5. 작업 그룹과 네임스페이스가 생성된 후 다음을 선택합니다. 네임스페이스 구성 탐색 창에서 네임스페이스 구성을 엽니다.
  6. 리소스 정책 탭에서 승인된 주체 추가.

승인된 주체는 데이터 웨어하우스에 대한 제로 ETL 통합을 생성할 수 있는 사용자 또는 역할을 식별합니다.

bdb-3883-image018

  1. 럭셔리 IAM 주체 ARN 또는 AWS 계정 ID, AWS 사용자 또는 역할의 ARN을 입력하거나 제로 ETL 통합을 생성하기 위해 액세스 권한을 부여하려는 AWS 계정의 ID를 입력할 수 있습니다. (계정 ID는 ARN으로 저장됩니다.)
  2. 왼쪽 메뉴에서 변경 사항을 저장.bdb-3883-image019

승인된 주체가 구성된 후에는 소스 데이터베이스가 Redshift 데이터 웨어하우스를 업데이트하도록 허용해야 합니다. 따라서 소스 데이터베이스를 인증된 통합 소스로 네임스페이스에 추가해야 합니다.

  1. 왼쪽 메뉴에서 승인된 통합 소스 추가.bdb-3883-image020
  2. 럭셔리 승인된 소스 ARN, Zero-ETL 통합의 소스이기 때문에 Aurora PostgreSQL 클러스터의 ARN을 입력합니다.

Amazon RDS 콘솔에서 Aurora PostgreSQL 클러스터의 ARN을 얻을 수 있습니다. 구성 아래 탭 Amazon 리소스 이름.

  1. 왼쪽 메뉴에서 변경 사항을 저장.bdb-3883-image021

대소문자를 구분하는 식별자를 활성화하도록 Redshift Serverless 작업 그룹을 업데이트합니다.

Amazon Aurora PostgreSQL은 기본적으로 대소문자를 구분하며, 프로비저닝된 모든 클러스터와 Redshift Serverless 작업 그룹에서는 대소문자 구분이 비활성화되어 있습니다. 통합이 성공하려면 대소문자 구분 매개변수 활성화_케이스_민감한_식별자 데이터 웨어하우스에 대해 활성화되어야 합니다.

수정하려면 enable_case_sensitive_identifier Redshift Serverless 작업 그룹의 매개변수를 사용하려면 AWS 명령 줄 인터페이스 (AWS CLI), Amazon Redshift 콘솔은 현재 Redshift Serverless 파라미터 값 수정을 지원하지 않기 때문입니다. 매개변수를 업데이트하려면 다음 명령을 실행하십시오.

aws redshift-serverless update-workgroup --workgroup-name zero-etl-target-rs-wg --config-parameters parameterKey=enable_case_sensitive_identifier,parameterValue=true --region us-east-2

AWS CLI에 연결하는 간단한 방법은 브라우저에서 직접 AWS 리소스 및 도구에 대한 명령줄 액세스를 제공하는 브라우저 기반 셸인 CloudShell을 사용하는 것입니다. 다음 스크린샷은 CloudShell에서 명령을 실행하는 방법을 보여줍니다.

bdb-3883-image022

필요한 권한 구성

제로 ETL 통합을 생성하려면 사용자 또는 역할에 연결되어 있어야 합니다. 자격 증명 기반 정책 해당로 AWS 자격 증명 및 액세스 관리 (IAM) 권한. AWS 계정 소유자는 다음을 수행할 수 있습니다. 필요한 권한 구성 제로 ETL 통합을 생성할 수 있는 사용자 또는 역할을 위한 것입니다. 샘플 정책을 사용하면 연결된 보안 주체가 다음 작업을 수행할 수 있습니다.

  • 소스 Aurora DB 클러스터에 대해 제로 ETL 통합을 생성합니다.
  • 모든 제로 ETL 통합을 보고 삭제합니다.
  • 대상 데이터 웨어하우스에 인바운드 통합을 생성합니다. Amazon Redshift는 프로비저닝된 ARN과 서버리스용 ARN 형식이 다릅니다.
  • 프로비저닝된 클러스터 - arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid
  • 서버리스 - arn:aws:redshift-serverless:{region}:{account-id}:namespace/namespace-uuid

동일한 계정이 Redshift 데이터 웨어하우스를 소유하고 이 계정이 해당 데이터 웨어하우스의 승인된 주체인 경우에는 이 권한이 필요하지 않습니다.

권한을 구성하려면 다음 단계를 완료하십시오.

  1. IAM 콘솔에서 정책 탐색 창에서
  2. 왼쪽 메뉴에서 정책 만들기.
  3. 다음 JSON을 사용하여 rds-integrations라는 새 정책을 생성합니다. Amazon Aurora PostgreSQL 미리 보기의 경우, Amazon RDS 데이터베이스 미리 보기 환경 서비스 네임스페이스에 -preview가 추가되었습니다. 따라서 다음 정책에서는 rds 대신 rds-preview. 예를 들어, rds-preview:CreateIntegration.
{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "rds:CreateIntegration"
        ],
        "Resource": [
            "arn:aws:rds:{region}:{account-id}:cluster:source-cluster",
            "arn:aws:rds:{region}:{account-id}:integration:*"
        ]
    },
    {
        "Effect": "Allow",
        "Action": [
            "rds:DescribeIntegration"
        ],
        "Resource": ["*"]
    },
    {
        "Effect": "Allow",
        "Action": [
            "rds:DeleteIntegration"
        ],
        "Resource": [
            "arn:aws:rds:{region}:{account-id}:integration:*"
        ]
    },
    {
        "Effect": "Allow",
        "Action": [
            "redshift:CreateInboundIntegration"
        ],
        "Resource": [
            "arn:aws:redshift:{region}:{account-id}:cluster:namespace-uuid"
        ]
    }]
}

  1. 생성한 정책을 IAM 사용자 또는 역할 권한에 연결합니다.

제로 ETL 통합 생성

제로 ETL 통합을 생성하려면 다음 단계를 완료하십시오.

  1. Amazon RDS 콘솔에서 다음을 선택합니다. 제로 ETL 통합 탐색 창에서
  2. 왼쪽 메뉴에서 제로 ETL 통합 생성.bdb-3883-image023
  3. 럭셔리 통합 식별자, 예를 들어 이름을 입력하십시오. zero-etl-demo.
  4. 왼쪽 메뉴에서 다음 보기.bdb-3883-image025
  5. 럭셔리 소스 데이터베이스선택한다. RDS 데이터베이스 찾아보기.bdb-3883-image026
  6. 소스 데이터베이스 선택 zero-etl-source-pg 선택하고 왼쪽 메뉴에서.
  7. 럭셔리 명명된 데이터베이스, Amazon Aurora PostgreSQL에서 생성된 새 데이터베이스의 이름(zeroetl-db).
  8. 왼쪽 메뉴에서 다음 보기.bdb-3883-image028
  9. . 대상 구간에 대한 AWS 계정, 고르다 현재 계정을 사용하세요.
  10. 럭셔리 Amazon Redshift 데이터 웨어하우스선택한다. Redshift 데이터 웨어하우스를 찾아보세요.bdb-3883-image029

우리는 토론 다른 계정 지정 이 섹션 뒷부분의 옵션입니다.

  1. Redshift 서버리스 대상 네임스페이스(zero-etl-target-rs-ns)를 선택하고 왼쪽 메뉴에서.bdb-3883-image031
  2. 해당하는 경우 태그와 암호화를 추가하고 선택합니다. 다음.bdb-3883-image032
  3. 통합 이름, 소스, 대상 및 기타 설정을 확인하고 선택합니다. 제로 ETL 통합 생성.

Amazon RDS 콘솔에서 통합을 선택하여 세부 정보를 보고 진행 상황을 모니터링할 수 있습니다. 상태를 변경하는 데 약 30분 정도 소요됩니다. 만들기최근활동, 소스에서 이미 사용 가능한 데이터세트의 크기에 따라 달라집니다.

bdb-3883-image033

bdb-3883-image034

다른 AWS 계정에 있는 대상 Redshift 데이터 웨어하우스를 지정하려면 현재 계정의 사용자가 대상 계정의 리소스에 액세스할 수 있도록 허용하는 역할을 생성해야 합니다. 자세한 내용은 다음을 참조하세요. 소유하고 있는 다른 AWS 계정의 IAM 사용자에게 액세스 권한 제공.

다음 권한이 있는 대상 계정에 역할을 생성합니다.

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "redshift:DescribeClusters",
            "redshift-serverless:ListNamespaces"
         ],
         "Resource":[
            "*"
         ]
      }
   ]
}

역할에는 대상 계정 ID를 지정하는 다음과 같은 신뢰 정책이 있어야 합니다. 신뢰할 수 있는 엔터티가 있는 역할을 다른 계정의 AWS 계정 ID로 생성하여 이를 수행할 수 있습니다.

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Principal":{
            "AWS": "arn:aws:iam::{external-account-id}:root"
         },
         "Action":"sts:AssumeRole"
      }
   ]
}

다음 스크린샷은 IAM 콘솔에서 생성하는 방법을 보여줍니다.

bdb-3883-image035

그런 다음 제로 ETL 통합을 생성하는 동안 다른 계정 지정에서 대상 계정 ID와 생성한 역할의 이름을 선택합니다.

Amazon Redshift의 통합에서 데이터베이스 생성

데이터베이스를 생성하려면 다음 단계를 완료하십시오.

  1. Redshift Serverless 대시보드에서 zero-etl-target-rs-ns 네임 스페이스.
  2. 왼쪽 메뉴에서 쿼리 데이터 쿼리 편집기 v2를 엽니다.
    bdb-3883-image036
  3. 다음을 선택하여 Redshift Serverless 데이터 웨어하우스에 연결합니다. 연결 만들기.
    bdb-3883-image037
  4. 획득 integration_id 인사말 svv_integration 시스템 테이블:
    SELECT integration_id FROM svv_integration; -- copy this result, use in the next sql

  5. 사용 integration_id 이전 단계의 통합에서 새 데이터베이스를 생성합니다. 또한 통합을 생성할 때 지정한 클러스터 내에 명명된 데이터베이스에 대한 참조를 포함해야 합니다.
    CREATE DATABASE aurora_pg_zetl FROM INTEGRATION '<result from above>' DATABASE zeroetl_db;

bdb-3883-image038

이제 통합이 완료되었으며 소스의 전체 스냅샷이 대상에 그대로 반영됩니다. 진행 중인 변경사항은 거의 실시간으로 동기화됩니다.

실시간에 가까운 거래 데이터 분석

이제 Amazon Aurora PostgreSQL 소스에서 Amazon Redshift 대상까지 거의 실시간에 가까운 데이터 분석을 시작할 수 있습니다.

  1. 소스 Aurora PostgreSQL 데이터베이스에 연결합니다. 이 데모에서는 psql Amazon Aurora PostgreSQL에 연결하려면:
    psql -h <amazon_aurora_postgres_writer_endpoint> -p 5432 -d zeroetl_db -U postgres

bdb-3883-image039

  1. 기본 키를 사용하여 샘플 테이블을 만듭니다. 원본에서 대상으로 복제할 모든 테이블에 기본 키가 있는지 확인하세요. 기본 키가 없는 테이블은 대상에 복제할 수 없습니다.
CREATE TABLE NATION  ( 
N_NATIONKEY  INTEGER NOT NULL PRIMARY KEY, 
N_NAME       CHAR(25) NOT NULL,
N_REGIONKEY  INTEGER NOT NULL,
N_COMMENT    VARCHAR(152));

  1. 국가 테이블에 더미 데이터를 삽입하고 데이터가 제대로 로드되었는지 확인합니다.
INSERT INTO nation VALUES (1, 'USA', 1 , 'united states of america');
SELECT * FROM nation;

bdb-3883-image040

이제 이 샘플 데이터가 Amazon Redshift에 복제되어야 합니다.

대상의 소스 데이터 분석

Redshift Serverless 대시보드에서 쿼리 편집기 v2를 열고 데이터베이스에 연결합니다. aurora_pg_zetl 이전에 생성했습니다.

다음 쿼리를 실행하여 소스 데이터가 Amazon Redshift로 성공적으로 복제되었는지 확인합니다.

SELECT * FROM aurora_pg_etl.public.nation;

bdb-3883-image041

다음 쿼리를 사용하여 초기 스냅샷 또는 진행 중인 변경 데이터 캡처(CDC) 활동을 검증할 수도 있습니다.

SELECT * FROM sys_integration_activity ORDER BY last_commit_timestamp desc;

bdb-3883-image042

모니터링

Amazon Redshift와 Aurora PostgreSQL zero-ETL 통합의 성능 및 상태에 대한 지표를 얻을 수 있는 몇 가지 옵션이 있습니다.

Amazon Redshift 콘솔로 이동하면 다음을 선택할 수 있습니다. 제로 ETL 통합 탐색 창에서. 원하는 제로 ETL 통합을 선택하고 표시할 수 있습니다. 아마존 클라우드 워치 통합과 관련된 측정항목입니다. 이러한 지표는 CloudWatch에서도 직접 사용할 수 있습니다.

bdb-3883-image043

각 통합에는 사용 가능한 정보가 포함된 두 개의 탭이 있습니다.

  • 통합 지표 – 성공적으로 복제된 테이블 수, 지연 세부 정보 등의 지표를 표시합니다.
    bdb-3883-image044
  • 테이블 통계 – Amazon Aurora PostgreSQL에서 Amazon Redshift로 복제된 각 테이블에 대한 세부 정보를 표시합니다.
    bdb-3883-image045

CloudWatch 지표 외에도 다음을 쿼리할 수 있습니다. 시스템 보기, 통합에 대한 정보를 제공합니다.

정리

ETL이 없는 통합을 삭제하면 트랜잭션 데이터가 Aurora 또는 Amazon Redshift에서 삭제되지 않지만 Aurora는 Amazon Redshift로 새 데이터를 보내지 않습니다.

제로 ETL 통합을 삭제하려면 다음 단계를 완료하십시오.

  1. Amazon RDS 콘솔에서 다음을 선택합니다. 제로 ETL 통합 탐색 창에서
  2. 삭제할 제로 ETL 통합을 선택하고 다음을 선택합니다. ..
    bdb-3883-image046
  3. 삭제를 확인하려면 확인을 입력하고 선택하세요. ..
    bdb-3883-image048

결론

이 게시물에서는 데이터 파이프라인 유지 관리 노력을 줄이고 트랜잭션 및 운영 데이터에 대한 거의 실시간 분석을 가능하게 하는 기능인 Amazon Aurora PostgreSQL에서 Amazon Redshift로의 제로 ETL 통합을 설정하는 방법을 설명했습니다.

제로 ETL 통합에 대해 자세히 알아보려면 다음을 참조하세요. Amazon Redshift와 Aurora zero-ETL 통합 작업 제한 사항.


저자에 관하여

락스 카레락스 카레 펜실베니아에 기반을 둔 AWS의 분석 전문가 솔루션 아키텍트입니다. 그는 고객이 AWS 플랫폼에서 대규모로 데이터 분석 솔루션을 설계하도록 돕습니다.

후안 루이스 폴로 가르존 분석 워크로드를 전문으로 하는 AWS의 Associate Specialist Solutions Architect입니다. 그는 고객이 클라우드 기반 분석 솔루션을 설계, 구축 및 현대화하도록 돕는 경험을 갖고 있습니다. 업무 외에는 여행, 야외 활동, 하이킹, 라이브 음악 행사 참석을 즐깁니다.

수시미타 바르타쿠르 Amazon Web Services의 수석 솔루션 아키텍트로서 기업 고객이 AWS에서 워크로드를 설계하도록 지원합니다. 데이터 분석 및 데이터 관리에 대한 풍부한 배경 지식을 바탕으로 고객이 온프레미스 및 클라우드 모두에서 비즈니스 인텔리전스 및 분석 솔루션을 설계하고 구축하도록 돕는 광범위한 경험을 보유하고 있습니다. Sushmita는 플로리다 주 탬파에 거주하며 여행, 독서, 테니스를 즐깁니다.

spot_img

VC 카페

VC 카페

최신 인텔리전스

spot_img