devmoa

점점 커지는 RDB Table, S3로 귀양 보내고 Athena로 불러오기 - feat. Optimization with Spark Bucketing

뱅크샐러드·2023년 6월 8일·00
RDBS3AthenaSparkBucketingDB 최적화

AI 요약

Beta

이 글은 뱅크샐러드 Core Infra 팀에서 MySQL에 쌓이는 대용량 이력성 데이터를 S3로 이전하고 Athena를 통해 효율적으로 조회하는 방법을 공유합니다. 서비스가 성장함에 따라 MySQL 테이블이 계속 커져 비용 및 성능 문제가 발생했고, 이를 해결하기 위해 Kafka와 Spark를 활용하여 데이터를 S3의 Parquet 형식으로 저장하는 방식으로 전환했습니다.

데이터는 `dt=YYYY-MM-DD`, `hour=HH` 파티션 구조로 저장되며, 조회 시에는 Athena를 사용합니다. 이 아키텍처 변경을 통해 데이터 저장 비용을 절감하고, Spark Bucketing 기법을 적용하여 필요한 데이터만 빠르게 읽어올 수 있도록 최적화했습니다.

이를 통해 대용량 데이터 처리 및 비용 효율성을 높이는 방안을 제시합니다.

이 글이 궁금하신가요?

원문 블로그에서 전체 내용을 확인해 보세요

원문 읽으러 가기

AI 추천 연관 게시글

이 글과 관련된 다른 기술 블로그 글을 AI가 추천합니다