뱅
뱅크샐러드
June 8, 20231회
점점 커지는 RDB Table, S3로 귀양 보내고 Athena로 불러오기 - feat. Optimization with Spark Bucketing

간단 소개
뱅크샐러드는 MySQL 테이블을 S3로 이전하고 Athena와 Spark Bucketing을 통해 데이터 처리 비용을 최적화했습니다.
AI Summary
- MySQL에서 S3로 데이터 이전 및 Athena 활용
- 뱅크샐러드는 증가하는 MySQL 테이블 크기 문제 해결을 위해 S3로 데이터를 이전하고 Athena를 사용하여 데이터를 호출하는 방식으로 변경.
- 초기에는 Athena 사용 후 예상보다 높은 비용 발생. Athena 비용은 스캔 데이터 양과 S3 API 호출 횟수에 비례.
- Bucketing을 통한 성능 최적화
- Bucketing 적용으로 특정 user id 데이터 조회 시 필요한 파일만 읽도록 개선. 파티션 구조를 시간별에서 일별로 변경하여 Object 호출 수를 줄임.
- Spark Bucketing 방식이 Athena와 호환되지 않는 문제 발생, CTAS 방식으로 해결. Spark는 Hive와 달리 Executor가 Bucket마다 파일을 생성하므로 repartition을 통해 파일 수를 줄임.
- 비용 절감 효과 및 추가 개선 사항
- MySQL 데이터 저장 비용 절감 효과. Athena를 통한 데이터 호출 비용은 버켓팅 및 파티션 구조 변경 전에 비해 크게 감소.
- 버켓팅 테이블을 다룰 때 다른 엔지니어나 분석가가 효율적으로 처리할 수 있도록 작업 필요.
Next Feeds

GitHub Actions를 활용한 개발 효율화
GitHub Actions를 활용한 개발 효율화 방안을 소개하고, Workflow 구문, GitHub Contexts, Marketplace 활용법을 설명합니다.
GitHub ActionsCI/CDWorkflowGitHub ContextsMarketplace
2023. 6. 7.
네이버플레이스

클라우드 스트리밍 - VCS 기술
SK플래닛의 RB Cloud 기반 VCS 기술은 클라우드 스트리밍을 통해 고품질 서비스와 혁신적인 사용자 경험을 제공하며, 지속적인 기술 발전을 추구합니다.
클라우드 스트리밍VCSRB Cloud서버 가상화저 지연 기술
2023. 6. 7.
skplanet

분석 데이터를 프로덕션에서 쉽게 사용할 수 없을까?
뱅크샐러드는 분석 데이터를 API로 제공하는 데이터 서빙 플랫폼을 구축하여 데이터 제품 개발 효율성을 높이고, 다양한 서비스를 출시했습니다.
데이터 서빙데이터 파이프라인데이터 플랫폼DocumentDBProtobuf
2023. 6. 7.
뱅크샐러드

데이터 분석가가 직접 정의, 배포, 관리하는 뱅크샐러드 데이터 파이프라인
뱅크샐러드는 데이터 분석가가 직접 정의, 배포, 관리하는 데이터 파이프라인 datapipe를 구축하여 데이터 활용도를 높였습니다.
데이터 파이프라인뱅크샐러드datapipe데이터 분석Airflow
2023. 6. 5.
뱅크샐러드
Spring Bean Injection 이야기(feat. 모두가 다 알고 있는 스프링빈, 정말 다 알고 있는가?)
Spring Bean Injection 시 @Qualifier와 @Primary 어노테이션의 동작 방식과 우선순위를 분석하고, 테스트를 통해 검증합니다.
SpringBean InjectionAutowiredQualifierPrimary
2023. 5. 31.
카카오페이

API 문서화, TS 타입만 있으면 해결! – Tspec
Tspec은 TypeScript 기반 API 문서 자동화 라이브러리로, 쉬운 사용법, 높은 관리 효율성, 간편한 도입이 특징입니다.
TspecAPI 문서화TypeScriptOpenAPISwagger
2023. 5. 31.
리디