Génération de statistiques de colonne à la demande - AWS Glue

Génération de statistiques de colonne à la demande

Vous pouvez exécuter la tâche de statistiques de colonne pour la tâche de tables AWS Glue Data Catalog à la demande sans calendrier défini. Cette option est utile pour les analyses ad hoc ou lorsque les statistiques doivent être calculées immédiatement.

Procédez comme suit pour gérer les statistiques de colonne à la demande pour les tables du catalogue de données à l’aide de la console AWS Glue ou de l’AWS CLI.

AWS Management Console
Pour générer des statistiques de colonne à l'aide de la console
  1. Connectez-vous à la console AWS Glue à l’adresse https://console.aws.amazon.com/glue/.

  2. Choisissez des tables du catalogue de donnée.

  3. Choisissez une table dans la liste.

  4. Choisissez Générer des statistiques dans le menu Actions.

    Vous pouvez également choisir l’option Générer, Générer à la demande sous l’onglet Statistiques de colonne dans la section inférieure de la page Table.

  5. Suivez les étapes 7 à 11 dans Génération de statistiques de colonne selon un calendrier pour générer des statistiques de colonne pour la table.

  6. Sur la page Générer des statistiques, spécifiez les options suivantes :

    La capture d’écran montre les options disponibles pour générer des statistiques de colonne.
    • Toutes les colonnes : choisissez cette option pour générer des statistiques pour toutes les colonnes de la table.

    • Colonnes sélectionnées : choisissez cette option pour générer des statistiques pour des colonnes spécifiques. Vous pouvez sélectionner les colonnes dans la liste déroulante.

    • Rôle IAM : choisissez Créer un rôle IAM doté des politiques d’autorisation requises pour exécuter la tâche de génération de statistiques de colonne. Choisissez Afficher les détails des autorisations pour examiner la déclaration de politique. Vous pouvez également sélectionner un rôle IAM dans la liste. Pour plus d'informations sur les autorisations requises, consultez Conditions préalables à la génération de statistiques de colonne.

      AWS Glue dispose des autorisations du rôle que vous spécifiez pour générer des statistiques.

      Pour plus d’informations sur la fourniture de rôles pour AWS Glue, consultez Identity-based policies for AWS Glue..

    • (Facultatif) Choisissez ensuite une configuration de sécurité pour activer le chiffrement au repos des journaux.

    • Exemples de lignes : choisissez uniquement un pourcentage spécifique de lignes dans la table pour générer des statistiques. La valeur par défaut est toutes les lignes. Utilisez les flèches haut et bas pour augmenter ou diminuer la valeur en pourcentage.

      Note

      Nous vous recommandons d'inclure toutes les lignes de la table pour calculer des statistiques précises. Utilisez des exemples de lignes pour générer des statistiques de colonne uniquement lorsque des valeurs approximatives sont acceptables.

    Choisissez Générer des statistiques pour exécuter la tâche.

AWS CLI

Cette commande déclenchera l’exécution d’une tâche de statistiques de colonne pour la table spécifiée. Vous devez indiquer le nom de la base de données, le nom de la table, un rôle IAM autorisé à générer des statistiques, et éventuellement fournir des noms de colonnes et un pourcentage de taille d’échantillon pour le calcul des statistiques.

aws glue start-column-statistics-task-run \ --database-name 'database_name \ --table-name 'table_name' \ --role 'arn:aws:iam::123456789012:role/stats-role' \ --column-name 'col1','col2' \ --sample-size 10.0

Cette commande lancera une tâche visant à générer des statistiques de colonne pour la table spécifiée.

Mise à jour des statistiques de colonne sur demande

La mise à jour des statistiques de colonne est essentielle pour que l’optimiseur de requêtes génère des plans d’exécution efficaces, en garantissant des performances de requête améliorées, une consommation de ressources réduite et de meilleures performances globales du système. Ce processus est particulièrement important après des modifications importantes des données, telles que des chargements groupés ou des modifications majeurs, qui peuvent rendre les statistiques existantes obsolètes.

Vous devez exécuter explicitement la tâche Générer des statistiques depuis la console AWS Glue pour actualiser les statistiques de colonne. Le catalogue de données n'actualise pas automatiquement les statistiques.

Si vous n'utilisez pas la fonctionnalité de génération de statistiques de AWS Glue dans la console, vous pouvez mettre à jour manuellement les statistiques de colonne à l'aide de l'opération d'API UpdateColumnStatisticsForTable ou AWS CLI. L’exemple suivant montre comment mettre à jour les statistiques de colonne à l’aide de l’AWS CLI.

aws glue update-column-statistics-for-table --cli-input-json: { "CatalogId": "111122223333", "DatabaseName": "database_name", "TableName": "table_name", "ColumnStatisticsList": [ { "ColumnName": "col1", "ColumnType": "Boolean", "AnalyzedTime": "1970-01-01T00:00:00", "StatisticsData": { "Type": "BOOLEAN", "BooleanColumnStatisticsData": { "NumberOfTrues": 5, "NumberOfFalses": 5, "NumberOfNulls": 0 } } } ] }