Comece agoraComece grátis

Fazendo profiling de uma consulta lazy

Antes de adicionar uma nova consulta ao fluxo diário, a equipe quer ver onde o tempo está sendo gasto. O profiling executa a consulta lazy como .collect(), mas também retorna um DataFrame de tempos com uma linha por estágio.

Este exercicio faz parte do curso

Dimensionamento e Otimização de Pipelines de Dados com Polars

Ver curso

Instruções do exercicio

  • Filtre library para os empréstimos em que use é "Physical".
  • Mantenha os 10 títulos mais longos por title_len usando .top_k().
  • Execute a consulta com profiling para também obter um DataFrame de tempos.

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

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)
Editar e Executar Código