Pular para o conteúdo principal

quantilesTimingWeighted

Introduzido em: v1.1.0 Calcula vários quantis de uma sequência de dados numéricos em diferentes níveis simultaneamente, com precisão definida, levando em conta o peso de cada elemento da sequência. Esta função é equivalente a quantileTimingWeighted, mas permite calcular vários níveis de quantil em uma única passagem, o que é mais eficiente do que chamar funções de quantil individualmente. O resultado é determinístico (não depende da ordem de processamento da consulta). A função é otimizada para trabalhar com sequências que descrevem distribuições, como tempos de carregamento de páginas da web ou tempos de resposta do backend. Precisão O cálculo é preciso se:
  • O número total de valores não excede 5670.
  • O número total de valores excede 5670, mas o tempo de carregamento da página é inferior a 1024 ms.
Caso contrário, o resultado do cálculo é arredondado para o múltiplo de 16 ms mais próximo.
Para calcular quantis de tempo de carregamento de página, esta função é mais eficiente e precisa do que quantiles.
Sintaxe
quantilesTimingWeighted(level1, level2, ...)(expr, weight)
Parâmetros
  • level — Níveis dos quantis. Um ou mais números de ponto flutuante constantes de 0 a 1. Recomendamos usar valores de level no intervalo [0.01, 0.99]. Float*
Argumentos
  • expr — Expressão sobre os valores de uma coluna que retorna um número do tipo Float*. Se valores negativos forem passados para a função, o comportamento será indefinido. Se o valor for maior que 30.000 (um tempo de carregamento de página superior a 30 segundos), será considerado 30.000. Float*
  • weight — Coluna com os pesos dos elementos da sequência. O peso é o número de ocorrências do valor. UInt*
Valor retornado Array de quantis dos níveis especificados, na mesma ordem em que os níveis foram especificados. Array(Float32) Exemplos Calculando vários quantis ponderados de tempo
Query
SELECT quantilesTimingWeighted(0.5, 0.99)(response_time, weight) FROM t;
Response
┌─quantilesTimingWeighted(0.5, 0.99)(response_time, weight)─┐
│ [112, 162]                                                │
└───────────────────────────────────────────────────────────┘
Veja também
Última modificação em 10 de junho de 2026