Este tópico descreve como usar funções de detecção de valor máximo para identificar o valor máximo local de dados de séries temporais em uma janela especificada.
ts_find_peaks
Formato da função:
* and h : nu2h05202.nu8 and m: NET | select ts_find_peaks(stamp, value, 30) from (select '("__time__" - ("__time__" % 10))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp)
A tabela a seguir lista os parâmetros do formato da função.
|
Parâmetro |
Descrição |
Valor |
|
x |
Sequência temporal. Os pontos no tempo estão ordenados em ordem crescente ao longo do eixo horizontal. |
Cada ponto no tempo é um timestamp Unix. Unidade: segundos. |
|
y |
Sequência de dados numéricos correspondente a cada ponto no tempo especificado. |
N/A. |
|
winSize |
Comprimento mínimo da janela de detecção. |
O valor do parâmetro é do tipo de dados long e varia de 1 até o comprimento dos dados da série temporal. Recomendamos definir este parâmetro como um décimo do comprimento real dos dados. |
Exemplo:
-
Instrução de consulta:
* and h : nu2h05202.nu8 and m: NET | select ts_find_peaks(stamp, value, 30) from (select __time__ - __time__ % 10 as stamp, avg(v) as value from log GROUP BY stamp order by stamp) A figura a seguir mostra o resultado da saída.

A tabela a seguir lista os itens de exibição.
Item de exibição | Descrição | |
Eixo horizontal | unixtime | Timestamp dos dados da série temporal. Unidade: segundos. Exemplo: 1537071480. |
Eixo vertical | src | Dados brutos. Exemplo: 1956092.7647745228. |
peak_flag | Indica se o valor numérico no ponto temporal corresponde ao valor máximo. Valores válidos:
| |