Amazon Redshift, Apache Iceberg 구체화된 뷰 생성 및 새로 고침에 대한 지원을 추가
Amazon Redshift는 이제 Apache Iceberg 구체화된 뷰의 생성 및 새로 고침을 지원합니다. 구체화된 뷰는 비용이 많이 드는 조인 및 집계를 한 번 미리 계산하고 결과를 AWS Glue Data Catalog에 등록된 Amazon S3 또는 Amazon S3 테이블 버킷의 Apache Iceberg 테이블에 저장합니다. 구체화된 뷰는 익숙한 SQL ’CREATE MATERIALIZED VIEW ... USING ICEBERG’를 사용하여 생성되며, 결과는 Amazon Athena, Amazon EMR 및 AWS Glue 기반 Apache Spark, Trino 또는 Snowflake와 같은 서드 파티 엔진을 포함한 모든 Iceberg 호환 엔진에서 즉시 쿼리할 수 있습니다. Redshift는 수동 증분 새로 고침으로 변경 사항만 다시 계산하여 데이터를 최신 상태로 유지합니다. 결과가 Glue Data Catalog의 Iceberg 테이블이기 때문에 다른 카탈로그 테이블과 마찬가지로 관리 및 검색됩니다.
데이터 팀은 흔히 단계적으로 분석을 구축하며, 여러 엔진을 결합하여 데이터를 정제 및 변환한 후 원시 데이터를 제공합니다. 이로 인해 파이프라인 오케스트레이션 오버헤드가 추가되고 엔진 간에 시맨틱 차이가 발생할 수 있습니다. Iceberg의 구체화된 뷰는 두 가지 방식으로 가치를 제공합니다. 첫째, 수백 명의 사용자 및 팀이 비용이 많이 드는 동일한 조인 및 집계를 다시 실행하고 모든 쿼리에서 소스 테이블을 다시 스캔하는 대신 결과를 한 번만 계산하고 모든 사용자가 미리 계산된 테이블을 읽습니다. 둘째, Apache Spark 또는 최신 Amazon Redshift와 같은 단일 엔진을 사용하여 엔드 투 엔드 파이프라인을 실행할 수 있으며, 모든 다운스트림 소비자가 여러 엔진을 오케스트레이션하는 오버헤드 없이 동일한 공개 결과를 공유할 수 있습니다. 어느 쪽이든 출력은 복사 또는 변환 없이 모든 엔진이 읽을 수 있는 개방형 Iceberg 테이블입니다. 여전히 이러한 테이블을 Redshift Managed Storage(RMS) 에 가장 성능에 민감한 대시보드의 기본 RMS 구체화된 뷰로 로드할 수 있습니다.
Redshift Serverless 및 프로비저닝된 Graviton 인스턴스가 지원되는 모든 리전에서 Iceberg 구체화된 뷰를 생성할 수 있습니다. 자세한 내용은 Amazon Redshift 데이터베이스 개발자 안내서의 Apache Iceberg 테이블로 저장된 구체화된 뷰, CREATE MATERIALIZED VIEW 명령 참조, Materialize once, query anywhere 블로그 게시물을 참조하세요.