Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Configuration de la projection de partitions

Mode de mise au point

Sur cette page

Configuration de la projection de partitions - Amazon Athena

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

La configuration de la projection de partition dans les propriétés d'une table s'effectue en deux étapes :

  1. Spécifiez les plages de données et les modèles pertinents pour chaque colonne de partition, ou utilisez un modèle personnalisé.

  2. Activez la projection de partition pour la table.

Note

Avant d'ajouter des propriétés de projection de partition à une table existante, la colonne de partition pour laquelle vous configurez les propriétés de projection de partition doit déjà exister dans le schéma de la table. Si la colonne de partition n'existe pas encore, vous devez ajouter manuellement une colonne de partition à la table existante. AWS Glue n'exécute pas cette étape automatiquement pour vous.

Cette section explique comment définir les propriétés de la table pour AWS Glue. Pour les définir, vous pouvez utiliser la AWS Glue console, les CREATE TABLE requêtes Athena ou AWS Glue APIles opérations. La procédure suivante indique comment définir les propriétés dans la AWS Glue console.

Pour configurer et activer la projection de partitions à l'aide de la AWS Glue console
  1. Connectez-vous à la AWS Glue console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/glue/.

  2. Choisissez l'onglet Tables.

    Sous l'onglet Tables, vous pouvez modifier des tables existantes ou choisir Add tables (Ajouter des tables) pour en créer de nouvelles. Pour plus d'informations sur l'ajout de tables manuellement ou à l'aide d'un Crawler, consultez la rubrique Travail avec des tables dans la console AWS Glue du Guide du développeur AWS Glue .

  3. Dans la liste des tables, choisissez le lien correspondant à la table que vous souhaitez modifier.

    Dans la AWS Glue console, choisissez le tableau à modifier.
  4. Sélectionnez Actions, puis Edit table (Modifier la table).

  5. Sur la page Edit table (Modifier la table), dans la section Table properties (Propriétés de la table), ajoutez la paire clé-valeur suivante pour chaque colonne partitionnée :

    1. Pour Key (Clé), ajoutez projection.columnName.type.

    2. Pour Value (Valeur), ajoutez l'un des types pris en charge : enum, integer, date, ou injected. Pour de plus amples informations, veuillez consulter Types pris en charge pour la projection de partition.

  6. En suivant les instructions indiquées dans Types pris en charge pour la projection de partition, ajoutez des paires clé-valeur supplémentaires en fonction de vos exigences de configuration.

    L'exemple de configuration de table suivant configure la colonne year pour la projection de partition, limitant les valeurs susceptibles d'être renvoyées à une plage comprise entre 2010 et 2016.

    Configuration de la projection de partition pour une colonne de partition dans les propriétés de la table de la console AWS Glue .
  7. Ajoutez une paire clé-valeur pour activer la projection de partition. Pour Key (Clé), saisissez projection.enabled et pour Value (Valeur), saisissez true.

    Note

    Vous pouvez désactiver la projection de partition sur cette table à tout moment en définissant la valeur projection.enabled sur false.

  8. Lorsque vous avez terminé, choisissez Save.

  9. Dans l'éditeur de requête Athena, testez les colonnes que vous avez configurées pour la table.

    L'exemple de requête suivant utilise SELECT DISTINCT pour renvoyer les valeurs uniques de la colonne year. La base de données contient des données comprises entre la plage de dates 1987 et 2016, mais la propriété projection.year.range limite les valeurs renvoyées aux années 2010 à 2016.

    Interrogation d'une colonne qui utilise la projection de partition.
    Note

    Si vous définissez projection.enabled sur true, mais ne parvenez pas à configurer une ou plusieurs colonnes de partition, un message d'erreur du type suivant s'affiche :

    HIVE_METASTORE_ERROR: Table database_name.table_name is configured for partition projection, but the following partition columns are missing projection configuration: [column_name] (table database_name.table_name).

Comment spécifier des emplacements de stockage S3 personnalisés

Lorsque vous modifiez les propriétés d'une table dans AWS Glue, vous pouvez également spécifier un modèle de chemin Amazon S3 personnalisé pour les partitions projetées. Un modèle personnalisé permet à Athena de mapper correctement les valeurs de partition à des emplacements de fichiers Simple Storage Service (Amazon S3) personnalisés qui ne suivent pas un modèle .../column=value/... typique.

L'utilisation d'un modèle personnalisé est facultative. Toutefois, si vous utilisez un modèle personnalisé, celui-ci doit contenir un espace réservé pour chaque colonne de partition. Les emplacements modélisés doivent se terminer par une barre oblique afin que les fichiers de données partitionnés se trouvent dans un « dossier » par partition.

Pour spécifier un modèle d'emplacement de partition personnalisé
  1. En suivant les étapes pour configurer et activer la projection de partition à l'aide de la AWS Glue console, ajoutez une paire clé-valeur supplémentaire qui spécifie un modèle personnalisé comme suit :

    1. Pour Key (Clé), saisissez storage.location.template.

    2. Pour Value (Valeur), spécifiez un emplacement qui inclut un espace réservé pour chaque colonne de partition. Assurez-vous que chaque espace réservé (et le chemin S3 lui-même) se termine par une barre oblique unique.

      Les exemples de valeurs de modèle suivants reposent sur une table avec les colonnes de partition a, b et c.

      s3://amzn-s3-demo-bucket/table_root/a=${a}/${b}/some_static_subdirectory/${c}/
      s3://amzn-s3-demo-bucket/table_root/c=${c}/${b}/some_static_subdirectory/${a}/${b}/${c}/${c}/

      Pour la même table, l'exemple de valeur de modèle suivant n'est pas valide, car il ne contient aucun espace réservé pour la colonne c.

      s3://amzn-s3-demo-bucket/table_root/a=${a}/${b}/some_static_subdirectory/
  2. Choisissez Appliquer.

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.