🏆30분
도전: 파티션 탐험
Day 1: pandas로 10GB 처리하다 포기했다
도전: 파티션 탐험
Apache Spark: 대용량 데이터 처리의 시작 > Day 1: pandas로 10GB 처리하다 포기했다
학습 목표
파티션 개념을 실습으로 이해한다 파티션 수에 따른 동작 차이를 확인한다
요구사항
100만 row DataFrame 생성
파티션 수 확인 및 출력
파티션별 데이터 분포 출력
repartition vs coalesce 차이 설명
Shuffle 발생 여부 확인
평가 기준
- • DataFrame 생성 정확성 (20%)
- • 파티션 분석 (25%)
- • repartition/coalesce 비교 (25%)
- • Shuffle 분석 (20%)
- • 코드 품질 (10%)
미션: 파티션의 세계 탐험하기
Spark의 핵심인 파티션을 직접 조작해보자.
요구사항
- 100만 개의 row를 가진 DataFrame 생성
- 기본 파티션 수 확인
- 파티션별 데이터 분포 확인
- repartition()과 coalesce() 비교
- 실행 계획에서 Exchange(Shuffle) 확인
힌트 보기
getNumPartitions()로 파티션 수 확인 spark_partition_id()로 각 row의 파티션 확인 repartition은 Full Shuffle, coalesce는 Shuffle 없음 explain()에서 Exchange가 보이면 Shuffle 발생