인턴 중 Presto로 대규모 로그 데이터 분석 쿼리 작성 경험 서술
인턴 때 Presto를 사용해 수억 건 수준의 앱 사용자 행동 로그를 분석하는 작업을 맡았습니다. 주로 작성한 쿼리는 세션별 페이지 방문 순서를 추적하는 퍼널 분석 쿼리였습니다. 사용자 ID와 타임스탬프를 기준으로 세션을 구분하고, 각 세션 내에서 특정 이벤트 시퀀스가 몇 번 나타나는지를 집계하는 방식이었습니다. Presto에서 어려웠던 건 윈도우 함수를 제대로 활용하는 것이었습니다. LAG, LEAD 함수로 이전·다음 이벤트를 참조하는 방식에 처음에는 익숙하지 않았고, 파티션과 ORDER BY 조건을 잘못 설정해서 결과가 틀리는 경우가 있었습니다. 멘토님 리뷰를 받으며 수정하면서 윈도우 함수의 실행 순서를 이해하게 됐습니다. 또 대규모 데이터 특성상 조인 순서와 파티션 프루닝을 신경 쓰지 않으면 쿼리 실행 시간이 수십 배 차이났는데, 실행 계획을 보고 개선하는 과정이 흥미로웠습니다.