Interrogation d'objets Amazon S3 Glacier restaurés - 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.

Interrogation d'objets Amazon S3 Glacier restaurés

Vous pouvez utiliser Athena pour interroger des objets restaurés à partir des classes de stockage Amazon S3 S3 Glacier Flexible Retrieval (anciennement Glacier) et S3 Glacier Deep Archive. Vous devez activer cette fonctionnalité par table. Si vous ne souhaitez pas activer la fonctionnalité sur une table avant d'exécuter une requête, Athena ignore tous les objets S3 Glacier Flexible Retrieval et S3 Glacier Deep Archive de la table lors de l'exécution de la requête.

Considérations et restrictions

  • L'interrogation des objets Amazon S3 Glacier restaurés est prise en charge uniquement sur la version 3 du moteur Athena.

  • La fonctionnalité est prise en charge uniquement pour les tables Apache Hive.

  • Vous devez restaurer vos objets avant d'interroger vos données ; Athena ne les restaure pas à votre place.

Configuration d'une table pour utiliser les objets restaurés

Pour configurer votre table Athena afin d'inclure des objets restaurés dans vos requêtes, vous devez définir sa propriété de table read_restored_glacier_objects sur true. Pour ce faire, vous pouvez utiliser l'éditeur de requêtes Athena ou la AWS Glue console. Vous pouvez également utiliser l'interface de ligne de commande AWS Glue, l'API AWS Glue ou le kit SDK AWS Glue.

Utilisation de l'éditeur de requêtes Athena

Dans Athena, vous pouvez utiliser la commande ALTER TABLE SET TBLPROPERTIES pour définir la propriété de table, comme dans l'exemple suivant.

ALTER TABLE table_name SET TBLPROPERTIES ('read_restored_glacier_objects' = 'true')

Utilisation de la console AWS Glue

Dans la AWS Glue console, effectuez les étapes suivantes pour ajouter la propriété de read_restored_glacier_objects table.

Pour configurer les propriétés du tableau dans 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. Effectuez l’une des actions suivantes :

    • Choisissez Accéder au catalogue de données.

    • Dans le panneau de navigation, choisissez Tables du catalogue de données.

  3. Sur la page Tables, dans la liste des tables, choisissez le lien correspondant à la table que vous souhaitez modifier.

  4. Sélectionnez Actions, puis Modifier la table.

  5. Sur la page Modifier la table, dans la section Propriétés de la table, ajoutez la paire clé-valeur suivante.

    • Dans Clé, ajoutez read_restored_glacier_objects.

    • Pour le champ Value (Valeur), entrez true.

  6. Choisissez Enregistrer.

À l'aide du AWS CLI

Dans le AWS CLI, vous pouvez utiliser la commande AWS Glue update-table et son --table-input argument pour redéfinir la table et, ce faisant, ajouter la propriété. read_restored_glacier_objects Dans l'argument --table-input, utilisez la structure Parameters pour spécifier la propriété read_restored_glacier_objects et la valeur de true. Notez que l'argument pour --table-input ne doit pas comporter d'espaces et doit utiliser des barres obliques inverses pour éviter les guillemets doubles. Dans l'exemple suivant, remplacez my_database et my_table par les noms de votre base de données et de votre table.

aws glue update-table \ --database-name my_database \ --table-input={\"Name\":\"my_table\",\"Parameters\":{\"read_restored_glacier_objects\":\"true\"}}
Important

La AWS Glue update-table commande fonctionne en mode de remplacement, ce qui signifie qu'elle remplace la définition de table existante par la nouvelle définition spécifiée par le table-input paramètre. Pour cette raison, veillez également à spécifier tous les champs que vous souhaitez voir figurer dans votre table dans le table-input paramètre lorsque vous ajoutez la read_restored_glacier_objects propriété.