프로젝트 자리 결 → 언어 선택 결 → 성과 결 → 교훈 결
Python과 JVM 기반 언어를 함께 활용한 경험은 학과 빅데이터 수업에서 Spark를 이용한 대용량 로그 분석 프로젝트에서 왔습니다. 프로젝트 자리에서는 수백만 건의 웹 로그를 처리해 페이지별 이용 패턴을 분석하는 과제였습니다. 언어 선택 자리에서는 Spark의 PySpark API를 주로 사용했지만, 분산 처리 최적화가 필요한 자리에서는 Scala 예제를 참고해 코드를 개선했습니다. PySpark가 편리하지만 성능이 중요한 자리에서는 JVM 레이어에서 실행되는 방식이 더 효율적입니다. 성과 자리에서는 단일 머신 Python으로는 처리하기 어려운 규모의 데이터를 Spark 클러스터로 30분 안에 처리했습니다. 교훈 자리에서는 분산 처리를 쓸 때는 파티셔닝 전략이 성능을 결정한다는 것을 배웠습니다. 파티션 수가 맞지 않으면 일부 워커에 부하가 집중되는 쏠림이 발생했습니다.