Passer au contenu principal

Description

Le combinateur MergeState peut être appliqué à la fonction avg afin de fusionner des états d’agrégation partiels de type AverageFunction(avg, T) et de renvoyer un nouvel état d’agrégation intermédiaire.

Exemple d’utilisation

Le combinateur MergeState est particulièrement utile dans les scénarios d’agrégation à plusieurs niveaux, où l’on souhaite combiner des états préagrégés et les conserver sous forme d’états (plutôt que de les finaliser) pour un traitement ultérieur. Pour l’illustrer, nous allons examiner un exemple dans lequel nous transformons des métriques de performance de serveurs individuels en agrégations hiérarchiques à plusieurs niveaux : niveau serveur → niveau région → niveau datacenter. Nous créons d’abord une table pour stocker les données brutes :
Nous allons créer une table cible d’agrégation au niveau du serveur et définir une vue matérialisée Incremental qui servira de déclencheur d’insertion pour celle-ci :
Nous ferons de même aux niveaux régional et du datacenter :
Nous allons ensuite insérer des données brutes d’exemple dans la table source :
Nous écrirons trois requêtes pour chaque niveau :
Nous pouvons insérer plus de données :
Vérifions à nouveau les performances à l’échelle du datacenter. Remarquez comment toute la chaîne d’agrégation s’est mise à jour automatiquement :

Voir aussi

Dernière modification le 3 juillet 2026