Amazon Web Services 한국 블로그
Amazon Aurora PostgreSQL 및 Amazon Redshift와의 Amazon DynamoDB 제로 ETL 통합 정식 출시
Amazon Aurora PostgreSQL 호환 에디션, Amazon Redshift와의 Amazon DynamoDB 제로 ETL 통합이 정식 출시되었습니다.
제로 ETL 통합으로 Amazon Redshift에서 트랜잭션 또는 운영 데이터를 원활하게 사용할 수 있게 되어 추출, 전환, 적재(ETL) 작업을 수행하는 복잡한 데이터 파이프라인을 구축하고 관리할 필요가 없습니다. Amazon Redshift에 소스 데이터를 자동으로 복제하는 동시에 분석과 기계 학습(ML) 기능을 위해 Amazon Redshift에서 사용할 소스 데이터를 업데이트하므로 적시에 인사이트를 도출하고, 시간에 민감한 중요 이벤트에 효과적으로 대응할 수 있습니다.
이러한 새로운 제로 ETL 통합을 사용하면 여러 관계형 및 비관계형 데이터 소스의 데이터를 단일 데이터 웨어하우스에 쓰기 위해 서로 다른 데이터 파이프라인을 구축하고 관리할 필요 없이 다양한 애플리케이션의 데이터에 대한 통합 분석을 실행할 수 있습니다. 이 게시물에서는 Amazon Aurora PostgreSQL과 Amazon Redshift와의 Amazon DynamoDB 제로 ETL 통합을 시작하는 방법을 두 가지 단계별 연습으로 제공합니다.
제로 ETL 통합을 생성하려면 소스에 이어 Amazon Redshift를 대상으로 지정합니다. 통합은 소스의 데이터를 대상 데이터 웨어하우스로 복제하여 Amazon Redshift에서 원활하게 사용할 수 있게 하고, 파이프라인 상태를 모니터링합니다.
이러한 새로운 통합이 어떻게 이루어지는지 살펴보겠습니다. 이 게시물에서는 제로 ETL 통합을 생성하여 서로 다른 소스 데이터베이스(Aurora PostgreSQL과 DynamoDB)의 데이터를 동일한 Amazon Redshift 클러스터로 복제하는 방법을 알아봅니다. 또한 Aurora PostgreSQL 소스 데이터베이스에서 여러 테이블 또는 데이터베이스를 선택하여 동일한 Amazon Redshift 클러스터에 데이터를 복제하는 방법도 알아봅니다. 제로 ETL 통합이 어떻게 여러 ETL 파이프라인 구축과 관리의 운영 부담 없이 유연성을 제공하는지 살펴보겠습니다.
Amazon Redshift와의 Aurora PostgreSQL 제로 ETL 통합 시작하기
Amazon Redshift와 Aurora PostgreSQL 제로 ETL 통합을 위해서는 Aurora DB 클러스터 파라미터에 특정한 값이 필요하기 때문에 데이터베이스를 생성하기 전에 사용자 지정 클러스터 파라미터 그룹을 생성합니다. Amazon RDS 콘솔에서 탐색 창의 파라미터 그룹으로 이동합니다. 파라미터 그룹 생성을 선택합니다.
파라미터 그룹 이름 및 설명에 custom-pg-aurora-postgres-zero-etl
을 입력합니다. 엔진 유형으로 Aurora PostgreSQL을 선택하고 파라미터 그룹 제품군으로 aurora-postgresql16을 선택합니다(제로 ETL 통합은 PostgreSQL 16.4 이상 버전에서 작동). 마지막으로 유형에서 DB 클러스터 파라미터 그룹을 선택하고 생성을 선택합니다.
다음으로, 파라미터 그룹 페이지에서 새로 생성된 클러스터 파라미터 그룹을 선택하여 편집합니다. 작업을 선택한 다음 편집을 선택합니다. 다음과 같이 클러스터 파라미터 설정을 완료했습니다.
rds.logical_replication=1
aurora.enhanced_logical_replication=1
aurora.logical_replication_backup=0
aurora.logical_replication_globaldb=0
변경 사항 저장을 선택합니다.
다음으로 Aurora PostgreSQL 데이터베이스를 생성합니다. 데이터베이스를 생성할 때 필요에 따라 구성을 설정할 수 있습니다. 사용 가능한 버전에서 Aurora PostgreSQL(PostgreSQL 16.4 이상과 호환)을 선택하고 추가 구성 섹션에서 DB 클러스터 파라미터 그룹으로 사용자 지정 클러스터 파라미터 그룹(이 경우 custom-pg-aurora-postgres-zero-etl
)을 선택해야 합니다.
데이터베이스를 사용할 수 있게 되면 Aurora PostgreSQL 클러스터에 연결하여 books라는 데이터베이스를 만들고, 이 데이터베이스의 기본 스키마에 book_catalog라는 테이블을 만들어 제로 ETL 통합에 사용할 샘플 데이터를 삽입합니다.
제로 ETL 통합을 시작하기 위해 기존 Amazon Redshift 데이터 웨어하우스를 사용합니다. Amazon Redshift 리소스를 생성하고 관리하려면 Amazon Redshift 시작 안내서를 참조하세요.
Amazon RDS 콘솔에서 탐색 창의 제로 ETL 통합 탭으로 이동하여 제로 ETL 통합 생성을 선택합니다. 통합 식별자 로 postgres-redshift-zero-etl
을 입력하고 통합 설명에 Amazon Aurora zero-ETL integration with Amazon Redshift
를 입력합니다. 다음을 선택합니다.
다음 페이지에서 RDS 데이터베이스 찾아보기를 선택하여 원본 데이터베이스를 선택합니다. 데이터 필터링 옵션에는 database.schema.table
을 사용합니다. 저는 Aurora PostgreSQL books 데이터베이스에 book_catalog라는 테이블을 포함합니다. 필터의 *
는 books 데이터베이스 내의 모든 스키마에 있는 모든 book_catalog 테이블을 복제합니다. 필터 유형으로 포함을 선택하고 필터 표현식 필드에 books.*.book_catalog
를 입력합니다. 다음을 선택합니다.
다음 페이지에서 Redshift 데이터 웨어하우스 찾아보기를 선택하고 기존 Amazon Redshift 데이터 웨어하우스를 대상으로 선택합니다. Amazon Aurora가 데이터 웨어하우스로 복제하고 대소문자를 구분할 수 있도록 대상에 승인된 보안 주체 및 통합 소스를 지정해야 합니다. Amazon RDS가 설정 중에 이 단계를 대신 완료하거나 제가 Amazon Redshift에서 수동으로 구성할 수 있습니다. 이 데모에서는 Fix it Fix for me를 선택하고 다음을 선택합니다.
데이터 웨어하우스의 대소문자 구분 파라미터와 리소스 정책을 수정한 후 다음, 태그 및 암호화 추가 페이지에서 다음을 선택합니다. 구성을 검토한 후 제로 ETL 통합 생성을 선택합니다.
통합이 성공하면 통합 이름을 선택하여 세부 정보를 확인합니다.
이제 통합에서 데이터베이스를 생성하여 설정을 완료해야 합니다. Amazon Redshift 콘솔로 이동하여 탐색 창에서 제로 ETL 통합을 선택하고 방금 생성한 Aurora PostgreSQL 통합을 선택합니다. 통합에서 데이터베이스 생성을 선택합니다.
books를 소스 이름 데이터베이스로 선택하고 zeroetl_aurorapg
를 대상 데이터베이스 이름으로 입력합니다. 데이터베이스 생성을 선택합니다.
데이터베이스가 생성되면 Aurora PostgreSQL 통합 페이지로 돌아갑니다. 이 페이지에서 쿼리 데이터를 선택하여 Amazon Redshift 데이터 웨어하우스에 연결하여 데이터가 복제되는지 확인합니다. zeroetl_aurorapg 데이터베이스에서 선택 쿼리를 실행하면 book_catalog 테이블의 데이터가 Amazon Redshift에 성공적으로 복제되는 것을 볼 수 있습니다.
처음에 말했듯이 Aurora PostgreSQL 소스 데이터베이스에서 여러 테이블 또는 데이터베이스를 선택하여 데이터를 동일한 Amazon Redshift 클러스터에 복제할 수 있습니다. 동일한 제로 ETL 통합에 다른 데이터베이스를 추가하려면 database.schema.table
형식의 데이터 필터링 옵션에 다른 필터를 추가하고 데이터베이스 부분을 복제하려는 데이터베이스 이름으로 바꾸기만 하면 됩니다. 이 데모에서는 동일한 데이터 웨어하우스에 복제할 여러 테이블을 선택하겠습니다. Aurora PostgreSQL 클러스터에 게시자라는 또 다른 테이블을 만들고 여기에 샘플 데이터를 삽입합니다.
복제를 위한 게시자 테이블을 포함하도록 데이터 필터링 옵션을 편집합니다. 이렇게 하려면 postgres-redshift-zero-etl 세부 정보 페이지로 이동하여 수정을 선택합니다. 필터 표현식 필드에 쉼표를 사용하여 books.*.publisher
를 추가합니다. 계속을 선택합니다. 변경 내용을 검토하고 변경 사항 저장을 선택합니다. 통합 세부 정보 페이지의 필터링된 데이터 테이블 섹션에 이제 복제를 위한 테이블이 2개 포함되어 있는 것을 확인했습니다.
Amazon Redshift Query Editor로 전환하여 테이블을 새로 고치면 새 게시자 테이블과 해당 레코드가 데이터 웨어하우스에 복제된 것을 볼 수 있습니다.
Amazon Redshift와의 Aurora PostgreSQL 제로 ETL 통합을 완료했으니, 이제 동일한 데이터 웨어하우스와의 DynamoDB 제로 ETL 통합을 생성해 보겠습니다.
Amazon Redshift와의 DynamoDB 제로 ETL 통합 시작하기
이 부분에서는 Book_Catalog라는 기존 Amazon DynamoDB 테이블을 사용하여 Amazon DynamoDB 제로 ETL 통합을 생성해 보겠습니다. 테이블에는 다음 2개의 항목이 있습니다.
Amazon Redshift 콘솔로 이동하여 탐색 창에서 제로 ETL 통합을 선택합니다. 그런 다음 제로 ETL 통합 생성 옆에 있는 화살표를 선택하고 DynamoDB 통합 생성을 선택합니다. 통합 이름으로 dynamodb-redshift-zero-etl
을 입력하고 설명에 Amazon DynamoDB zero-ETL integration with Amazon Redshift
를 입력합니다. 다음을 선택합니다.
다음 페이지에서 DynamoDB 테이블 찾아보기를 선택하고 Book_Catalog 테이블을 선택합니다. 통합을 생성하기 전에 승인된 보안 주체 및 통합 소스를 포함하는 리소스 정책을 지정하고 소스 테이블에서 시점 복구(PITR)를 활성화해야 합니다. Amazon DynamoDB에서 자동으로 이 작업을 수행하거나 제가 수동으로 구성을 변경할 수 있습니다. Fix it for me를 선택하여 통합에 필요한 리소스 정책을 자동으로 적용하고 DynamoDB 테이블에서 PITR을 활성화합니다. 다음을 선택합니다.
그런 다음 기존 Amazon Redshift Serverless 데이터 웨어하우스를 대상으로 선택하고 다음을 선택합니다.
태그 및 암호화 추가 페이지에서 다시 다음을 선택하고 검토 및 생성 페이지에서 DynamoDB 통합 생성을 선택합니다.
이제 Aurora PostgreSQL 제로 ETL 통합에서 했던 것처럼 통합에서 데이터베이스를 생성하여 설정을 완료해야 합니다. Amazon Redshift 콘솔에서 DynamoDB 통합을 선택하고 통합에서 데이터베이스 생성을 선택합니다. 팝업 화면에서 대상 데이터베이스 이름으로 zeroetl_dynamodb
를 입력하고 데이터베이스 생성을 선택합니다.
데이터베이스를 생성한 후 Amazon Redshift 제로 ETL 통합 페이지로 이동하여 생성한 DynamoDB 통합을 선택합니다. 이 페이지에서는 쿼리 데이터를 선택하여 Amazon Redshift 데이터 웨어하우스에 연결하여 DynamoDB Book_Catalog 테이블의 데이터가 복제되었는지 확인합니다. zeroetl_dynamodb 데이터베이스에서 선택 쿼리를 실행하면 데이터가 Amazon Redshift에 성공적으로 복제된 것을 확인할 수 있습니다. 참고로 DynamoDB의 데이터는 SUPER 데이터 유형 열에 복제되며 PartiQL sql을 사용하여 액세스할 수 있습니다.
DynamoDB Book_Catalog 테이블에 다른 항목을 삽입합니다.
Amazon Redshift Query Editor로 전환하고 선택 쿼리를 새로 고치면 새 레코드가 데이터 웨어하우스에 복제된 것을 볼 수 있습니다.
Amazon Redshift를 통한 Aurora PostgreSQL과 DynamoDB의 제로 ETL 통합으로 여러 데이터베이스 클러스터의 데이터를 통합하고 데이터 웨어하우스에서 통찰을 얻을 수 있습니다. Amazon Redshift를 사용하면 여러 테이블을 기반으로 데이터베이스 간 쿼리와 구체화된 뷰를 사용할 수 있으므로 분석 자산을 통합 및 간소화하고, 운영 효율성을 개선하고, 비용을 최적화할 수 있습니다. 더 이상 복잡한 ETL 파이프라인을 설정하고 관리하는 것에 대해 걱정할 필요가 없습니다.
정식 출시
Amazon Redshift와의 Aurora PostgreSQL 제로 ETL 통합은 현재 미국 동부(버지니아 북부), 미국 동부(오하이오), 미국 서부(오리건), 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(도쿄), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(스톡홀름) AWS 리전에서 정식 출시되었습니다.
Amazon Redshift와의 Amazon DynamoDB 제로 ETL 통합은 이제 모든 상용, 중국 및 GovCloud AWS 리전에서 사용할 수 있습니다.
요금 정보는 Amazon Aurora, Amazon DynamoDB 요금 페이지를 참조하세요.
이 기능을 시작하려면 Amazon Redshift와의 Aurora 제로 ETL 통합 작업 및 Amazon Redshift 제로 ETL 통합 설명서를 참조하세요.