Compartir a través de


series_periods_validate()

Se aplica a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Comprueba si una serie temporal contiene patrones periódicos de longitudes concretas.

A menudo, una métrica que mide el tráfico de una aplicación se caracteriza por un período semanal o diario. Este período se puede confirmar ejecutando series_periods_validate() que comprueba si hay un período semanal y diario.

Sintaxis

series_periods_validate(series, period1 [ , period2 , . . . ] )

Obtenga más información sobre las convenciones de sintaxis.

Parámetros

Nombre Type Obligatorio Descripción
serie dynamic ✔️ Matriz de valores numéricos, normalmente la salida resultante de los operadores make-series o make_list .
period1, period2, etc. real ✔️ Períodos que se van a validar en unidades del tamaño de cubo. Por ejemplo, si la serie está en intervalos de 1h, un período semanal es de 168 intervalos. Se requiere al menos un período.

Importante

  • El valor mínimo para cada uno de los parámetros de período es 4 y el máximo es la mitad de la longitud de la serie de entrada. Para un argumento de período fuera de estos límites, la puntuación de salida será 0.
  • La serie temporal de entrada debe ser normal, es decir, agregada en intervalos de constantes y siempre es el caso si se ha creado mediante la serie make. En caso contrario, el resultado no tendrá sentido.
  • La función acepta hasta 16 períodos para validar.

Devoluciones

La función genera una tabla con dos columnas:

  • puntos: matriz dinámica que contiene los períodos que se van a validar como se proporciona en la entrada.
  • score: matriz dinámica que contiene una puntuación entre 0 y 1. La puntuación muestra la importancia de un período en su posición respectiva en la matriz de períodos .

Ejemplo

La consulta siguiente inserta una instantánea de un mes del tráfico de una aplicación, agregada dos veces al día (el tamaño de la bandeja es de 12 horas).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| render linechart

Períodos de serie.

Si se ejecuta series_periods_validate() en esta serie para validar un período semanal (14 puntos de largo), da como resultado una puntuación alta y con una puntuación de 0 al validar un período de cinco días (10 puntos de largo).

print y=dynamic([80, 139, 87, 110, 68, 54, 50, 51, 53, 133, 86, 141, 97, 156, 94, 149, 95, 140, 77, 61, 50, 54, 47, 133, 72, 152, 94, 148, 105, 162, 101, 160, 87, 63, 53, 55, 54, 151, 103, 189, 108, 183, 113, 175, 113, 178, 90, 71, 62, 62, 65, 165, 109, 181, 115, 182, 121, 178, 114, 170])
| project x=range(1, array_length(y), 1), y  
| project series_periods_validate(y, 14.0, 10.0)

Salida

series_periods_validate_y_periods series_periods_validate_y_scores
[14.0, 10.0] [0.84, 0.0]