Pular para o conteúdo
Lucas Lessa
Voltar para as notícias
DatabricksGAImpacto: Médio

Nova função SQL counter_diff para análise de séries temporais

A função de janela counter_diff calcula diferenças entre valores de contadores cumulativos consecutivos e lida com reinicializações.

O que mudou

A função de janela counter_diff converte contadores cumulativos em formato de delta, calculando a diferença entre valores consecutivos de uma série temporal. ### Para que serve Imagine que você monitora o volume de requisições de um sistema e precisa transformar leituras acumuladas em valores incrementais por intervalo. Ela serve para: - Converter contadores cumulativos em deltas. - Tratar quedas no valor do contador quando o equipamento ou serviço é reiniciado. - Usar um carimbo de tempo opcional para sinalizar resets de forma independente. ### Como usar ```sql SELECT m, t, counter_diff(c) OVER (PARTITION BY m ORDER BY t) FROM VALUES ('http_requests', TIMESTAMP '2026-01-01T00:00:00', 100), ('http_requests', TIMESTAMP '2026-01-01T00:01:00', 200), ('http_requests', TIMESTAMP '2026-01-01T00:02:00', 400) AS tab(m, t, c);

O que acontece nesse código:
1. A cláusula PARTITION BY separa os dados pelo nome da métrica.
2. A cláusula ORDER BY ordena as linhas pelo timestamp.
3. A função calcula a diferença entre o valor atual e o anterior do contador. ### Limitações e requisitos Disponível no Databricks SQL e no Databricks Runtime 19.0 e superior. A função exige obrigatoriamente uma cláusula ORDER BY na janela. Valores negativos geram erro.
Ver nota oficial do Databricks

The counter_diff SQL window function is now available

Resumo e explicação gerados por IA a partir da release note oficial. Em caso de dúvida, a documentação oficial da plataforma prevalece.

Relacionadas