Amazon Web Services 한국 블로그

Amazon Redshift와 Amazon RDS for MySQL의 제로 ETL 통합 기능 출시

제로 ETL 통합(Zero ETL Integration)은 다양한 애플리케이션과 데이터 소스의 데이터를 통합하여 전체적인 인사이트를 얻고 데이터 사일로를 해소하는 데 도움이 됩니다. 또한 Amazon Relational Database Service(Amazon RDS) for MySQL에 데이터가 기록된 후 몇 초 내에 Amazon Redshift에서 페타바이트 규모의 트랜잭션 데이터를 사용할 수 있도록 완전관리형, 노코드, 실시간에 가까운 솔루션을 제공합니다.

자체 ETL 작업을 생성할 필요가 없으므로 데이터 수집이 간소화되고 운영 오버헤드가 줄어들며 전체 데이터 처리 비용도 절감할 수 있습니다. 작년에는 Amazon Redshift와 Amazon Aurora MySQL 호환 버전의 제로 ETL 통합이 정식 출시되었고, Aurora PostgreSQL 호환 버전, Amazon DynamoDB 및 RDS for MySQL의 제로 ETL 통합이 평가판으로 출시되었습니다.

이제 Amazon Redshift와 Amazon RDS for MySQL의 제로 ETL 통합이 정식 출시됩니다. 이 릴리스에는 데이터 필터링, 다중 통합 지원, AWS CloudFormation 템플릿에서 제로 ETL 통합 구성 등의 새로운 기능도 포함됩니다.

이 게시물에서는 여러 데이터베이스와 데이터 웨어하우스에서 데이터 필터링과 데이터 통합을 시작하는 방법을 알려드리겠습니다. 제로 ETL 통합을 설정하는 방법에 대한 단계별 안내는 이 블로그 게시물에서 매우 유사한 경험을 제공하는 Aurora MySQL 호환 버전과의 통합 설정 방법을 참조하세요.

데이터 필터링
규모에 관계없이 대부분의 회사는 ETL 작업에 필터링을 추가하면 이점을 얻을 수 있습니다. 일반적인 사용 사례는 프로덕션 데이터베이스에서 복제에 필요한 데이터의 하위 세트만 선택하여 데이터 처리 및 스토리지 비용을 줄이는 것입니다. 또 다른 사용 사례는 보고서의 데이터세트에서 개인 식별 정보(PII)를 제외하는 것입니다. 예를 들어, 의료 분야의 기업에서는 최근 환자 사례를 분석하는 종합 보고서를 작성하기 위해 데이터를 복제할 때 민감한 환자 정보를 제외하려고 할 수 있습니다. 마찬가지로 전자 상거래 상점에서는 마케팅 부서에 고객 지출 패턴을 제공하되, 개인 식별 정보는 제외하려고 할 수 있습니다. 반대로 추론을 위해 거의 실시간으로 모든 데이터가 필요한 사기 탐지 팀에 데이터를 제공하는 경우와 같이 필터링을 사용하지 않으려는 사례도 있습니다. 이는 몇 가지 예시에 불과하므로 자신의 조직에 적용할 수 있는 다양한 사용 사례를 실험해보고 찾아보시기 바랍니다.

제로 ETL 통합에서 필터링을 활성화하는 방법은 두 가지가 있습니다. 통합을 처음 생성할 때 또는 기존 통합을 수정하여 활성화합니다. 어느 쪽이든 제로 ETL 생성 마법사의 ‘소스’ 단계에서 이 옵션을 찾을 수 있습니다.

데이터베이스 또는 테이블을 포함하거나 제외하기 위해 데이터 필터링 표현식을 추가하는 인터페이스

데이터세트에서 데이터베이스 또는 테이블을 포함하거나 제외하는 데 사용할 수 있는 database*.table* 형식의 필터 표현식을 입력하여 필터를 적용합니다. 표현식을 여러 개 추가할 수 있으며, 표현식은 왼쪽에서 오른쪽 순서로 평가됩니다.

기존 통합을 수정하는 경우 변경 사항을 확인한 후 해당 시점부터 새 필터링 규칙이 적용되며 Amazon Redshift는 더 이상 필터에 포함되지 않는 테이블을 삭제합니다.

더 자세히 알아보려면 단계와 개념이 매우 유사한 Amazon Aurora 제로 ETL 통합을 위한 데이터 필터 설정 방법을 자세히 설명하는 이 블로그 게시물을 읽어보시기 바랍니다.

단일 데이터베이스에서 여러 제로 ETL 통합 생성
이제 단일 RDS for MySQL 데이터베이스에서 최대 5개의 Amazon Redshift 데이터 웨어하우스로 통합을 구성할 수 있습니다. 유일한 요구 사항은 다른 통합을 추가하기 전에 첫 번째 통합이 성공적으로 완료될 때까지 기다려야 한다는 것입니다.

이를 통해 여러 팀과 트랜잭션 데이터를 공유하는 동시에 특정 사용 사례에 맞게 자체 데이터 웨어하우스에 대한 소유권을 팀에 제공할 수 있습니다. 예를 들어, 이를 데이터 필터링과 함께 사용하여 동일한 Amazon RDS 프로덕션 데이터베이스에서 개발, 스테이징 및 프로덕션 Amazon Redshift 클러스터로 다양한 데이터세트를 분산시킬 수도 있습니다.

이것이 실제로 유용할 수 있는 또 다른 흥미로운 시나리오는 다른 웨어하우스로 복제할 Amazon Redshift 클러스터를 제로 ETL을 사용하여 통합하는 것입니다. 또한 Amazon Redshift 구체화된 뷰를 사용하여 데이터를 탐색하고, Amazon Quicksight 대시보드를 제공하고, 데이터를 공유하고, Amazon SageMaker에서 작업을 훈련하는 등의 작업을 수행할 수 있습니다.

결론
Amazon Redshift와 RDS for MySQL의 제로 ETL 통합으로 복잡한 데이터 파이프라인을 구축하고 관리할 필요 없이 실시간에 가까운 분석을 위해 데이터를 복제할 수 있습니다. 이 제로 ETL 통합은 복제된 데이터세트에서 데이터베이스와 테이블을 포함하거나 제외하는 필터 표현식을 추가하는 기능과 함께 오늘 정식 출시되었습니다. 이제 동일한 소스 RDS for MySQL 데이터베이스에서 서로 다른 Amazon Redshift 웨어하우스로 여러 통합을 설정하거나, 여러 소스에서 통합을 생성하여 하나의 데이터 웨어하우스로 데이터를 통합할 수 있습니다.

이 제로 ETL 통합은 지원되는 AWS 리전의 RDS for MySQL 버전 8.0.32 이상, Amazon Redshift Serverless 및 Amazon Redshift RA3 인스턴스 유형에 사용할 수 있습니다.

AWS Management Console 외에도 AWS Command Line Interface(AWS CLI) 또는 공식 AWS SDK for Python인 boto3와 같은 AWS SDK를 사용하여 제로 ETL 통합을 설정할 수도 있습니다.

제로 ETL 통합 작업에 대한 자세한 내용은 설명서를 참조하세요.

Matheus Guimaraes