Skip to main content

timeSeriesTopKMasks

Introduzido em: v26.8.0 Seleciona as séries temporais com os k maiores valores em cada passo de uma grade temporal. Cada linha de entrada é uma série temporal: key identifica a série e values contém seus valores alinhados a uma grade temporal comum, portanto os arrays values de todas as linhas devem ter o mesmo tamanho. Em cada passo, são selecionadas as séries com os k maiores valores não NULL naquele passo (NaN é considerado menor que qualquer outro valor). Empates de valor são resolvidos dando preferência à série com o menor valor de key. Esta função implementa o operador de agregação topk() do PromQL e mantém apenas um heap limitado de tamanho k por passo, de modo que o tamanho do seu estado não depende do número de séries agregadas.
Esta função está em prévia privada; para habilitá-la, defina enable_time_series_aggregate_functions = 1.
Sintaxe
Argumentos Valor retornado Retorna as séries selecionadas em ordem crescente de key, cada uma acompanhada de sua máscara por passo: steps_mask[t] = 1 se a série for selecionada no passo de tempo t. Séries que não forem selecionadas em nenhum passo de tempo não são retornadas. Array(Tuple(key UInt64, steps_mask Array(UInt8))) Exemplos Selecionando as 2 maiores séries por passo de tempo
Query
Response
Última modificação em 14 de outubro de 2026