Todos os produtos
Search
Central de documentação

:Funções de estimativa de múltiplos períodos

Última atualização: Jul 03, 2026

As funções de estimativa de múltiplos períodos identificam ciclos em dados de séries temporais em diferentes intervalos. Elas extraem padrões periódicos por meio de operações como a transformada de Fourier.

Lista de funções

Função

Descrição

ts_period_detect

Estima o período dos dados de séries temporais em diversos intervalos de tempo.

ts_period_classify

Calcula a periodicidade de uma curva de série temporal usando a transformada de Fourier. Utilize esta função para determinar rapidamente se uma curva apresenta padrões periódicos.

ts_period_detect

Sintaxe:

select ts_period_detect(x,y,minPeriod,maxPeriod)

A tabela a seguir descreve os parâmetros.

Parâmetro

Descrição

Valor

x

Coluna de tempo, ordenada de forma crescente.

Timestamp Unix em segundos.

y

Coluna de valores para cada ponto no tempo.

Nenhum

minPeriod

Comprimento mínimo estimado do período, definido como uma proporção do comprimento total da série temporal.

Valor decimal no intervalo (0, 1].

maxPeriod

Comprimento máximo estimado do período, definido como uma proporção do comprimento total da série temporal.

Importante

O valor de maxPeriod deve ser maior que minPeriod e não pode exceder 0,5. Se você definir maxPeriod com um valor superior a 0,5, o sistema usará 0,5 por padrão.

Valor decimal no intervalo (0, 1].

Exemplo:

  • Consulta

    * | select ts_period_detect(stamp, value, 0.2, 0.5) from ( select __time__ - (__time__ % 120) as stamp, avg(v) as value from log GROUP BY stamp order by stamp )
  • Saída

    A função retorna um array contendo timestamps Unix, valores estatísticos (como tráfego médio) e códigos de status do período. Um código de status 1.0 corresponde a um círculo vermelho na figura a seguir. É possível visualizar a saída em um gráfico de série temporal, conforme mostrado abaixo.

    Na figura abaixo, a área sombreada entre dois círculos vermelhos representa um período. Os padrões da curva tendem a ser semelhantes em diferentes períodos.

    输出结果

ts_period_classify

Sintaxe:

select ts_period_classify(stamp,value,instanceName)

A tabela a seguir descreve os parâmetros.

Parâmetro

Descrição

Valor

stamp

Coluna de tempo, ordenada de forma crescente.

Timestamp Unix em segundos.

value

Coluna de valores para cada ponto no tempo.

Nenhum

instanceName

Nome da curva da série temporal.

Nenhum

Exemplo:

  • Consulta

    * and h : nu2h05202.nu8 | select ts_period_classify(stamp, value, name) from log
  • Saída: A consulta retorna uma tabela com três colunas: line_name (nome da linha temporal, que corresponde ao ID do grupo do Auto Scaling), prob (valor de probabilidade) e type (sinalizador de tipo, onde -1.0 indica anomalia e 0.0 indica normalidade). Por exemplo, o grupo do Auto Scaling asg-2zgicin6zf5ewg188pg5 apresenta prob de 1.0 e type de -1.0, o que indica que essa linha temporal foi identificada como uma anomalia.

A saída inclui as seguintes colunas:

Coluna

Descrição

line_name

Nome da curva da série temporal.

prob

Proporção do período principal dentro da curva da série temporal. O valor está no intervalo [0, 1]. Um valor de 0,15 é um limiar experimental típico.

type

Classificação da curva:

  • type = -1: A curva é muito curta (menos de 64 pontos).

  • type = -2: Indica que a curva possui uma taxa de dados ausentes muito alta (superior a 20%).

  • type = 0.0: A curva apresenta periodicidade clara.