Funciones de ventana (Azure Stream Analytics)
En las aplicaciones que procesan eventos en tiempo real, es habitual realizar algunos cálculos basados en conjuntos (agregación) u otras operaciones en subconjuntos de eventos que se encuentran en algún período de tiempo. Dado que el concepto de tiempo es una necesidad fundamental para sistemas de procesamiento de eventos complejos, es importante disponer de una manera sencilla de trabajar con el componente de tiempo de la lógica de la consulta en el sistema. En Análisis de transmisiones de Azure, estos subconjuntos de eventos se definen a través de ventanas que representan agrupaciones por tiempo. En este artículo se describen las ventanas y cómo se definen, se identifican los tipos de ventanas que se admiten y se explica cómo se pueden usar ventanas con varios operadores.
Descripción de las ventanas
Una ventana contiene datos de evento a lo largo de una escala de tiempo y le permite realizar varias operaciones contra los eventos dentro de esa ventana. Por ejemplo, es posible que desee sumar los valores de los campos de carga en una ventana determinada, tal como se muestra en la siguiente ilustración.
Cada operación de ventana genera un evento al final de la ventana. Las ventanas de Azure Stream Analytics se abren en la hora de inicio de la ventana y se cierran en la hora de finalización de la ventana. Por ejemplo, si tiene una ventana de 5 minutos de 12:00 a. m. a 12:05 a. m., todos los eventos con marca de tiempo mayor que las 12:00 a. m. y hasta la marca de tiempo 12:05, ambos incluidos, se incluirán en esta ventana. La salida de la ventana será un evento único basado en la función de agregado usada con una marca de tiempo igual que la hora de finalización de la ventana. La marca de tiempo del evento de salida de la ventana se puede proyectar en la instrucción SELECT mediante la propiedad System.Timestamp() mediante un alias. Cada ventana se alinea automáticamente con la hora cero. Por ejemplo, una ventana de saltos de tamaño constante de 5 minutos se alineará a sí misma (12:00-12:05] , (12:05-12:10], ..., etc.
Después de una operación de ventana, la marca de tiempo de un evento diferirá del atributo de hora del evento original (ya sea la hora de llegada o la columna usada con TIMESTAMP BY). Siempre se puede tener acceso a la marca de tiempo actual y actualizada de un evento con system.timestamp()..
Nota
Todas las ventanas se deben usar en una cláusula GROUP BY.
Hay cinco tipos de ventanas:
El tamaño máximo de la ventana en todos los casos es 7 días.
Puede agregar varias ventanas de tiempo en la misma instrucción GROUP BY mediante la función Windows (Azure Stream Analytics).
Consulte también
Funciones integradas (Análisis de transmisiones de Azure)
Funciones de agregado (Azure Stream Analytics)
Funciones analíticas (Azure Stream Analytics)
Funciones de matriz (Stream Analytics)
Funciones de conversión (Azure Stream Analytics)
Funciones de fecha y hora (Azure Stream Analytics)
Funciones de registro (Azure Stream Analytics)