단계별 타임스탬프 찍어 브로드캐스트 조인 병목 발견
파이프라인 병목을 찾을 때 가장 먼저 하는 것은 단계별 처리 시간 측정입니다. 전체가 느리다고 처음부터 다 바꾸면 효과가 없습니다. 졸업 프로젝트에서 배치 파이프라인이 예상보다 3배 오래 걸렸을 때, 로깅 타임스탬프를 각 단계에 찍어보니 데이터 조인 단계가 전체의 80%를 차지하고 있었습니다. 원인은 브로드캐스트 조인 미적용이었습니다. 작은 테이블을 큰 테이블에 조인할 때 브로드캐스트를 쓰지 않아 셔플이 과도하게 발생했습니다.
브로드캐스트 힌트 한 줄로 처리 시간이 1/3로 줄었습니다. 진단 과정에서 배운 것은 병목은 느린 코드가 아니라 잘못된 데이터 이동에서 오는 경우가 많다는 점입니다. 한계는 실시간 스트리밍 환경에서의 병목 진단은 아직 경험이 없습니다.