Cette rubrique explique comment effectuer des opérations d'agrégation pour l'analyse des données. Les opérations d'agrégation permettent de calculer les valeurs minimales, maximales, la somme, la moyenne, le nombre total, le nombre distinct et les percentiles. Vous pouvez regrouper les résultats par valeur de champ, plage, emplacement géographique, filtres, histogrammes ou dates, et exécuter des requêtes imbriquées pour analyser les lignes de chaque groupe. Il est également possible de combiner plusieurs opérations d'agrégation pour des requêtes plus complexes.
Procédure
La figure suivante illustre la procédure complète d'agrégation.

Le serveur interroge les données qui répondent aux conditions de la requête et effectue une agrégation sur ces données en fonction de la demande. Par conséquent, une requête nécessitant une agrégation est plus complexe à traiter qu'une requête n'en nécessitant pas.
Fonctionnalités
L'agrégation prend en charge plusieurs fonctionnalités similaires aux fonctions SQL, telles que la fonction MIN() pour obtenir la valeur minimale, la fonction MAX() pour obtenir la valeur maximale, la fonction SUM() pour obtenir la somme, la fonction AVG() pour obtenir la valeur moyenne, la fonction COUNT() pour obtenir le nombre de lignes, la fonction COUNT(DISTINCT) pour obtenir le nombre de lignes distinctes, la fonction ANY_VALUE() pour interroger les lignes obtenues à partir des résultats d'une opération d'agrégation dans chaque groupe, et la clause GROUP BY pour grouper les résultats de la requête. Vous pouvez également effectuer des opérations d'agrégation pour obtenir des statistiques de percentile, grouper les résultats par valeur de champ, plage, emplacement géographique, filtre, histogramme ou histogramme de date, grouper les résultats selon plusieurs champs et effectuer des requêtes imbriquées. Le tableau suivant décrit ces fonctionnalités.
|
Fonctionnalité |
Description |
|
Valeur minimale |
Méthode d'agrégation permettant de renvoyer la valeur minimale d'un champ. Cette méthode s'utilise de manière similaire à la fonction SQL MIN. |
|
Valeur maximale |
Méthode d'agrégation permettant de renvoyer la valeur maximale d'un champ. Cette méthode s'utilise de manière similaire à la fonction SQL MAX. |
|
Somme |
Méthode d'agrégation permettant de renvoyer la somme de toutes les valeurs d'un champ numérique. Cette méthode s'utilise de manière similaire à la fonction SQL SUM. |
|
Valeur moyenne |
Méthode d'agrégation permettant de renvoyer la moyenne de toutes les valeurs d'un champ numérique. Cette méthode s'utilise de manière similaire à la fonction SQL AVG. |
|
Nombre total |
Méthode d'agrégation permettant de renvoyer le nombre total de valeurs pour un champ ou le nombre total de lignes dans un index de recherche. Cette méthode s'utilise de manière similaire à la fonction SQL COUNT. |
|
Nombre distinct |
Méthode d'agrégation permettant de renvoyer le nombre de valeurs distinctes pour un champ. Cette méthode s'utilise de manière similaire à la fonction SQL COUNT(DISTINCT). |
|
Statistiques de percentile |
Une valeur de percentile indique la position relative d'une valeur dans un ensemble de données. Par exemple, lors de la collecte de statistiques sur le temps de réponse de chaque requête pendant les opérations de maintenance courantes de votre système, vous devez analyser la distribution du temps de réponse à l'aide de percentiles tels que p25, p50, p90 et p99. |
|
Grouper par valeur de champ |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction des valeurs de champ. Les valeurs identiques sont regroupées. La valeur identique pour chaque groupe et le nombre de valeurs identiques dans chaque groupe sont renvoyés. |
|
Imbrication dans GroupBy |
GroupBy prend en charge l'imbrication. Vous pouvez effectuer des sous-opérations d'agrégation à l'aide de GroupBy. |
|
Grouper par plusieurs champs |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction de plusieurs champs. Vous pouvez utiliser des jetons pour effectuer la pagination. |
|
Grouper par plage |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction des plages de valeurs d'un champ. Les valeurs de champ situées dans une plage spécifique sont regroupées. Le nombre de valeurs dans chaque plage est renvoyé. |
|
Grouper par emplacement géographique |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction des distances entre les emplacements géographiques et un point central. Les résultats de la requête dont les distances se situent dans une plage spécifique sont regroupés. Le nombre de valeurs dans chaque plage est renvoyé. |
|
Grouper par filtre |
Méthode d'agrégation permettant de filtrer les résultats de la requête et de les regrouper afin d'obtenir le nombre de résultats correspondant à chaque filtre. Les résultats sont renvoyés dans l'ordre de spécification des filtres. |
|
Requête par histogramme |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction d'intervalles de données spécifiques. Les valeurs de champ situées dans la même plage sont regroupées. La plage de valeurs de chaque groupe et le nombre de valeurs dans chaque groupe sont renvoyés. |
|
Requête par histogramme de date |
Méthode d'agrégation permettant de grouper les résultats de la requête en fonction d'intervalles de date spécifiques. Les valeurs de champ situées dans la même plage sont regroupées. La plage de valeurs de chaque groupe et le nombre de valeurs dans chaque groupe sont renvoyés. |
|
Interroger les lignes obtenues à partir des résultats d'une opération d'agrégation dans chaque groupe |
Après avoir groupé les résultats de la requête, vous pouvez interroger les lignes de chaque groupe. Cette méthode s'utilise de manière similaire à la fonction ANY_VALUE(champ) dans MySQL. |
|
Agrégations multiples |
Vous pouvez effectuer plusieurs opérations d'agrégation. Remarque
Si vous effectuez simultanément plusieurs opérations d'agrégation complexes, le traitement peut prendre beaucoup de temps. |
Prérequis
Une instance OTSClient est initialisée. Pour plus d'informations, consultez Initialiser une instance OTSClient.
Un tableau de données est créé et des données y sont écrites. Pour plus d'informations, consultez Créer des tableaux de données et Écrire des données.
Un index de recherche est créé pour le tableau de données. Pour plus d'informations, consultez Créer des index de recherche.