Partage via


Estimer la taille de la table

S’applique à : ✅Microsoft FabricAzure Data Explorer

Comprendre la taille d’une table peut être utile pour une gestion efficace des ressources et des performances de requête optimisées. Dans cet article, vous allez apprendre différentes méthodes pour estimer les tailles de table et comment les utiliser efficacement.

Taille d’origine des données ingérées

Utilisez les détails de la table .show pour estimer la taille de données d’origine d’une table. Pour obtenir un exemple, consultez Utiliser les détails de la table .show.

Cette commande fournit une estimation de la taille non compressée des données ingérées dans votre table en fonction de l’hypothèse que les données ont été transférées au format CSV. L’estimation est basée sur des longueurs approximatives de valeurs numériques, telles que des entiers, des longs, des datetimes et des guid, en tenant compte de leurs représentations sous forme de chaînes.

Exemple de cas d’usage : Suivre la taille des données entrantes au fil du temps pour prendre des décisions éclairées sur la planification de la capacité.

Taille de table en termes d’octets d’accès

Utilisez le estimate_data_size() ainsi que la fonction d’agrégation somme() pour estimer la taille de table en fonction des types de données et de leurs tailles d’octets respectives. Pour obtenir un exemple, consultez Utiliser estimate_data_size().

Cette méthode fournit une estimation plus précise en tenant compte des tailles d’octets des valeurs numériques sans les mettre en forme en tant que chaînes. Par exemple, les valeurs entières nécessitent 4 octets, tandis que les valeurs long et datetime nécessitent 8 octets. À l’aide de cette approche, vous pouvez estimer avec précision la taille des données qui correspondrait à la mémoire.

Exemple de cas d’usage : Déterminer le coût d’une requête en termes d’octets à analyser.

Taille combinée de plusieurs tables

Vous pouvez utiliser l’opérateur de d’union ainsi que les fonctions estimate_data_size et sum() pour estimer la taille combinée de plusieurs tables en termes d’octets d’accès. Pour obtenir un exemple, consultez Utiliser l’union avec estimate_data_size().

Exemple de cas d’usage : Évaluer les exigences en mémoire pour consolider les données de plusieurs tables dans un jeu de données unique.

Note

Cette approche peut augmenter la taille estimée des données en raison de colonnes vides, car union combine toutes les colonnes des tables spécifiées et estimate_data_size() prend en compte les colonnes vides lors du calcul de la taille des données.

Exemples

Utiliser les détails de la table .show

La requête suivante estime la taille des données d’origine de la table StormEvents.

Exécuter le de requête

.show table StormEvents details
| project TotalOriginalSize

de sortie

TotalOriginalSize
60192011

Pourboire

Pour mettre en forme le résultat des octets en MB, GBou une autre unité, utilisez format_bytes().

Utiliser estimate_data_size()

La requête suivante estime la taille des données d’origine de la table StormEvents en octets.

Exécuter le de requête

StormEvents
| extend sizeEstimateOfColumn = estimate_data_size(*)
| summarize totalSize=sum(sizeEstimateOfColumn)

de sortie

totalSize
58608932

Note

La sortie est plus petite même si le calcul est effectué sur la même table. Cela est dû au fait que cette méthode fournit une estimation plus précise en tenant compte des tailles d’octets des valeurs numériques sans les mettre en forme en tant que chaînes.

Utiliser l’union avec estimate_data_size()

La requête suivante estime la taille des données basée sur toutes les tables de la base de données Samples.

Exécuter le de requête

union withsource=_TableName *
| extend sizeEstimateOfColumn = estimate_data_size(*)
| summarize totalSize=sum(sizeEstimateOfColumn)
| extend sizeGB = format_bytes(totalSize,2,"GB")
totalSize sizeGB
1761782453926 1640,79 Go