[reinvent 2025] Apache Spark를 위한 엔터프라이즈 규모 ETL 최적화

Summary

AWS Glue, EMR, SageMaker에서 Apache Spark 최적화 기법을 마스터하여 ETL 워크플로우의 잠재력을 극대화하세요. Spark 구성 튜닝, 파티션 관리, 메모리 최적화 등 데이터 처리를 가속화하는 고급 전략을 다룹니다. 병렬 처리, 캐싱 전략, 효율적인 데이터 셔플링 기법을 배우고, 성능 메트릭 모니터링 및 병목 현상 식별 방법을 익혀 실무에 적용할 수 있습니다.

리인벤트 2025 테크 블로그의 더 많은 글이 보고 싶다면?

AWS re:Invent 2025 Tech Blog written by MegazoneCloud

Overview

  • Title: Scaling Amazon Redshift with a multi-warehouse architecture
  • Date: 2025년 12월 1일 (월)
  • Venue: MGM | Level 3 | Chairman’s 366
  • Speaker:
  • Naresh Chainani(Director of Engineering, Amazon Web Services)
  • Giovanni Matteo Fumarola(Director of Engineering, Amazon Web Services)
  • Anusha Challa(Sr Analytics Solution Architect, Amazon Web Services)
  • Alex Rabinovich(Director of Data Engineering, Vanguard)
  • Industry: Software and Internet

엔터프라이즈 스케일 ETL 최적화를 위한 Apache Spark on AWS

세션 개요

이번 re:Invent에서 참석한 “Scaling with Redshift’s Multilayer Health Architecture” 세션은 데이터가 폭발적으로 증가하면서 발생하는 워크로드 간 간섭과 확장성 문제를 어떻게 해결할 수 있는지 보여주는 세션이었습니다. 핵심은 모놀리식 아키텍처에서 다중 웨어하우스 아키텍처로의 전환이며, Hub-and-Spoke와 Data Mesh라는 두 가지 디자인 패턴과 Redshift의 신기술들이 주요 내용이었습니다.

보안 및 거버넌스

기존 문제점

기존 Spark 환경은 보안 정책이 흩어져 있고 거버넌스가 일관되지 않아 데이터 유출 위험이 있었습니다. 사용자들은 데이터 접근 요청을 반복해야 했고, 데이터 엔지니어들은 EMR, Glue, Athena 각각에 대해 따로 정책을 관리해야 했습니다.

Lake Formation 통합 진화

AWS는 이를 단계적으로 개선했습니다. 2022년 테이블 수준 권한 관리로 시작해서, 2023년 행과 열 수준 제어를 추가했고, 2024년에는 권한 적용이 프록시 없이 Spark 자체 내에서 직접 이루어지도록 발전했습니다.
접근 제어 방식은 두 가지가 있습니다. FGAC는 행과 열 수준에서 세밀하게 제어할 수 있어서 다중 사용자 분석 환경에 적합하지만 최적화에 제약이 있습니다. FTAC는 완전한 가시성으로 성능이 우수하고 DML 작업이 가능해서 ETL 파이프라인에 더 적합합니다.

Data Catalog Views

이전에는 여러 분석 엔진에서 동일한 비즈니스 로직을 각각 작성해야 했습니다. Data Catalog Views는 하나의 중앙 집중식 정의로 여러 SQL 방언과 엔진에서 작동하며, Lake Formation이 권한을 일관되게 적용합니다. 데이터 복제 없이 대상별 공유가 가능하고, 통합된 CloudTrail 감사로 규제 보고도 용이해집니다.

통합된 Spark 런타임

사일로 문제 해결

EMR, Glue, Athena에 걸쳐 서로 다른 Spark 버전과 라이브러리가 존재하면서 환경마다 기능이 다르게 작동하거나 설정을 각각 관리해야 하는 문제가 있었습니다.

지난주 출시된 EMR 7.12와 Glue 5.1, Athena가 동일한 Spark 런타임을 공유하게 되었습니다. Spark 3.5.6, Iceberg 1.1.0, Hudi 1.0.2 버전으로 통일되었고, 이제 고객은 일관된 성능과 기능을 바탕으로 파이프라인을 어디서 실행할지만 결정하면 됩니다.

S3A 기본 커넥터 채택

EMR 7.10부터 S3A를 기본 스토리지 레이어로 지정했습니다. 오픈 소스 정렬, 구성 표준화, 통합된 인증을 제공하며, AWS SDK V2 기반으로 Glacier를 포함한 모든 스토리지 클래스에 접근 가능합니다. 장기 보관 데이터 쿼리 시 복원만 하면 되고 데이터 이동이 필요 없어졌습니다.

성능도 뛰어납니다. TPC-DS 벤치마크에서 가장 빠르고 비용 효율적이었고, 동적 쓰기는 EMRFS보다 최대 15.8배 빠르며, 정적 삽입은 약 10% 빠릅니다.

성능 최적화

Spark Materialized View

캐시처럼 작동하여 쿼리 실행을 최적화합니다. ETL의 추출, 변환, 로드 모든 단계에서 오버헤드를 줄이며, AWS 인프라가 완전히 관리하고 설정된 주기에 따라 자동 갱신됩니다.

AWS Spark는 제출된 쿼리가 기존 MV의 이점을 얻을 수 있는지 파악하고 쿼리를 재작성하여 성능을 최대 8배 향상시킵니다. MV는 Parquet 형식으로 구축되어 다른 엔진에서도 Iceberg 테이블로 사용 가능합니다.

ETL 패턴 성능 개선

Iceberg 성능이 대폭 개선되었습니다. EMR 7.12는 읽기 성능을 오픈 소스보다 4.5배 빠르게, 병합과 업데이트, 삭제는 2배 이상 빠르게 만들었습니다.


JSON 처리는 유사 기술 대비 20% 향상되었고, 암호화 오버헤드를 85% 감소시켜 전체 벤치마킹 속도를 20% 향상시켰습니다. 문자열 조작 함수는 정말 인상적인데, upper와 lower가 10배에서 12배, trim이 3배에서 4.5배, length는 최대 96배, reverse는 최대 56배 향상되었습니다.

결론 및 소감

AWS의 Apache Spark 투자는 취약했던 파이프라인을 미래 지향적 플랫폼으로 변화시키고 있습니다. Lake Formation 통합으로 보안이 내장된 기능이 되었고, 모든 AWS Spark 서비스에 단일화된 런타임을 제공하여 사일로를 제거했으며, MV와 S3A 최적화, Iceberg 및 문자열 함수의 획기적인 향상으로 확장 가능한 성능을 제공합니다.

개인적으로 가장 인상 깊었던 점은 Spark 런타임 자체의 최적화와 거버넌스 통합을 통해 사용자가 코드를 변경하지 않고도 성능과 보안 혜택을 즉시 누릴 수 있게 되었다는 점입니다. EMR 7.12로 업그레이드만 하면 Iceberg가 4.5배 빨라지고 문자열 함수가 수십 배 빠릅니다.

이는 AI와 데이터 과학의 고속 처리 요구사항이 증가하는 지금, AWS가 인프라뿐만 아니라 핵심 데이터 처리 엔진의 기본에 충실하며 시장 요구사항 이상을 맞추려는 노력을 보여줍니다. ETL 파이프라인의 안정성과 속도 개선이 필요한 모든 기업, 특히 대규모 데이터 처리와 엄격한 규정 준수가 필요한 금융, 통신, 공공 부문에 큰 도움이 될 것입니다.

글 │메가존클라우드, AIR Ops, 박창훈 DBA
게시물 주소가 복사되었습니다.