
백엔드
Spark 3편 – Optimize Partition
두줄요약
Spark에서 파티션이 병렬성, 메모리, 파일 수에 미치는 영향을 설명했습니다.\n입력·출력·셔플 파티션 설정을 조정해 성능을 최적화하는 방법을 소개했습니다.
핵심 내용
- Spark에서 파티션이 병렬 처리 단위이자 메모리 단위가 되는 구조
- 입력 파티션, 출력 파티션, 셔플 파티션의 역할과 설정값 차이
- repartition, coalesce, spark.sql.files.maxPartitionBytes, spark.sql.shuffle.partitions 활용 포인트
적용해볼 점
- 데이터 크기와 core 수에 맞춘 파티션 수 조정
- write 시 파일 수와 크기 최적화를 위한 repartition, coalesce 선택
- join, groupBy 시 shuffle spill 최소화를 위한 shuffle partitions 점검
