Descripción
State
puede aplicarse a la función avg
para generar un estado intermedio de tipo AggregateFunction(avg, T), donde
T es el tipo especificado para el promedio.
Ejemplo de uso
AggregateFunction,
junto con la función avgState para agregar datos de tráfico de sitios web.
Primero, cree la tabla de origen para los datos de tráfico del sitio web:
avg no puede usar el tipo SimpleAggregateFunction, ya que requiere un estado complejo
(una suma y un recuento). Por ello, se utiliza el tipo AggregateFunction:
page_performance:
avg_response_time es de tipo AggregateFunction(avg, UInt32)
y almacena información de estado intermedio. Observe también que los datos de la fila para
avg_response_time no son de utilidad y que aparecen caracteres extraños como
�, n, F, }. Esto se debe a que el terminal intenta mostrar datos binarios como texto.
El motivo es que los tipos AggregateFunction almacenan su estado en un
formato binario optimizado para un almacenamiento y procesamiento eficientes, no para
ser legible por humanos. Este estado binario contiene toda la información necesaria para
calcular el promedio.
Para utilizarlo, use el combinador Merge: