시작하기무료로 시작하기

지연 쿼리 프로파일링하기

팀에서는 새 쿼리를 일일 워크플로에 추가하기 전에, 실제로 어느 단계에서 시간이 소요되는지 파악하고자 합니다. 프로파일링은 .collect()처럼 지연 쿼리를 실행하되, 각 단계별 소요 시간이 담긴 타이밍 DataFrame도 함께 반환합니다.

이 연습은 강의의 일부입니다

Polars로 데이터 파이프라인 확장 및 최적화하기

강의 보기

연습 안내

  • use"Physical"인 대출 기록만 남도록 library를 필터링하세요.
  • .top_k()를 사용해 title_len 기준으로 가장 긴 제목 10개를 선택하세요.
  • 타이밍 DataFrame도 함께 얻을 수 있도록 프로파일링을 적용하여 쿼리를 실행하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

result, timings = (
    library
    # Filter to physical checkouts
    .filter(pl.col("use") == "____")
    .with_columns(pl.col("title").str.len_chars().alias("title_len"))
    # Keep the 10 longest titles
    .top_k(10, by="____")
    # Run with profiling to capture per-stage timings
    .____()
)
print(timings)
코드 편집 및 실행