Description
State
peut être appliqué à la fonction avg
pour produire un état intermédiaire de type AggregateFunction(avg, T), où
T est le type spécifié pour la moyenne.
Exemple d’utilisation
AggregateFunction,
ainsi que la fonction avgState pour agréger des données de trafic web.
Commencez par créer la table source pour les données de trafic du site web :
avg ne peut pas utiliser le type SimpleAggregateFunction, car il nécessite un
état complexe (une somme et un compteur). Nous utilisons donc le type AggregateFunction :
page_performance :
avg_response_time est de type AggregateFunction(avg, UInt32)
et stocke des informations d’état intermédiaires. Notez également que les données de la ligne pour
avg_response_time ne nous sont d’aucune utilité et que nous voyons des caractères étranges tels
que �, n, F, }. Il s’agit de la tentative du terminal d’afficher des données binaires sous forme de texte.
Cela s’explique par le fait que les types AggregateFunction stockent leur état dans un
format binaire optimisé pour l’efficacité du stockage et du calcul, et non pour
la lisibilité humaine. Cet état binaire contient toutes les informations nécessaires au
calcul de la moyenne.
Pour l’utiliser, utilisez le combinateur Merge :