AWS에서 데이터를 저장할 때 가장 먼저 사용하는 서비스가 S3입니다. Athena, Glue, Redshift Spectrum 등 거의 모든 분석 서비스가 S3 데이터를 기반으로 하기 때문에, S3 설계는 단순 저장이 아니라 분석 효율까지 고려해서 해야 합니다.
이 글에서는 Athena나 Glue를 쓸 때 도움이 되는 S3 설계 및 운영 팁을 정리해봤습니다.
✅ 1. 디렉터리 구조는 Hive 스타일로
Athena, Glue Crawler, Redshift Spectrum 모두 Hive 스타일 파티션(key=value) 구조를 선호합니다.
s3://your-bucket/logs/event_date=2024-01-01/region=kr/
- 파티션 기준이 되는 컬럼명 = 디렉터리명으로 구성
- 쿼리 조건을 파티션 필터로 활용 가능 → 비용 절감 & 성능 향상
✅ 2. 작은 파일 너무 많으면 느려진다
"작은 파일 수천 개" vs "압축된 큰 파일 몇 개" 중, 후자가 Athena에선 훨씬 효율적입니다.
- S3에는 수백만 개의 객체를 둘 수 있지만, Athena는 파일 단위로 병렬 처리
- INSERT, UNLOAD, CTAS 등을 통해 파일 병합 & 압축 권장
✅ 3. 포맷은 Parquet, 압축은 Snappy
텍스트(CSV, JSON)는 느리고 비쌉니다. Parquet + Snappy 조합은 가장 효율적입니다.
- 컬럼 기반 저장 → SELECT * 지양 시 데이터 스캔량 확 줄어듦
- Snappy는 빠른 압축/해제를 지원해 Athena와 잘 맞음
✅ 4. 버전 관리와 데이터 정합성
데이터가 자주 바뀌는 경우, 다음 중 하나로 관리하는 게 좋습니다:
- s3://bucket/data/dt=2024-01-01/ 처럼 날짜별 폴더 구조로 구분
- 기존 폴더를 덮어쓰기 전, backup/이나 _archive/에 이동
- 중요한 변경은 CloudTrail로 기록 추적 가능
✅ 5. 권한은 최소 권한 원칙으로
데이터 분석용 S3 버킷은 다양한 서비스(Athena, Glue, Lambda)에서 접근하기 때문에, IAM 정책 설계가 핵심입니다.
- 서비스별 IAM 역할 구분: 분석용, 운영용, 테스트용
- s3:ListBucket, s3:GetObject 권한만 열어주는 것이 기본
📘 AWS 관련 추천 책
그림과 작동 원리로 쉽게 이해하는AWS 구조와 서비스:AWS의 전체 구조와 기술이 한눈에 들어오는
쿠팡에서 그림과 작동 원리로 쉽게 이해하는AWS 구조와 서비스:AWS의 전체 구조와 기술이 한눈에 들어오는 아마존 웹 서비스 핵심 가이드 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른
www.coupang.com
그림으로 이해하는 AWS 구조와 기술:AWS 쉽고 재미있게 시작하자! - 프로그래밍 언어 | 쿠팡
쿠팡에서 그림으로 이해하는 AWS 구조와 기술:AWS 쉽고 재미있게 시작하자! 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 프로그래밍 언어 제품도 바로 쿠팡에서 확인할 수 있습니다.
www.coupang.com
AWS 교과서 - 학습자료/교구 | 쿠팡
쿠팡에서 AWS 교과서 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 학습자료/교구 제품도 바로 쿠팡에서 확인할 수 있습니다.
www.coupang.com
비전공자를 위한 AWS:클라우드 입문부터 자격증 취득까지 쉽게 배우는 AWS - 웹/네트워크 | 쿠팡
쿠팡에서 비전공자를 위한 AWS:클라우드 입문부터 자격증 취득까지 쉽게 배우는 AWS 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 웹/네트워크 제품도 바로 쿠팡에서 확인할 수 있습니
www.coupang.com
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
'빅데이터 관련 자료' 카테고리의 다른 글
개발 용어를 모르는 초보자를 위한 정리 (3) | 2025.06.23 |
---|---|
IT 기술의 발전과 미래의 트렌드: 디지털 혁신의 흐름 (7) | 2025.06.23 |
Parquet vs CSV: Athena에서 어떤 포맷이 더 유리할까? (2) | 2025.05.30 |
Glue Crawler 제대로 쓰는 법: Athena 실무를 위한 테이블 자동 등록 가이드 (3) | 2025.05.29 |
Athena 쿼리 속도 10배 올리는 실전 최적화 전략 (2) | 2025.05.28 |