Interrogation d’objets Amazon Glacier restaurés - Amazon Athena

Interrogation d’objets Amazon Glacier restaurés

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

Considérations et restrictions

  • L’interrogation d’objets Amazon 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 l’utilisation d’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 console AWS Glue. 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ête 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 console AWS Glue, procédez comme suit pour ajouter la propriété de table read_restored_glacier_objects.

Pour configurer les propriétés de table dans la console AWS Glue
  1. Connectez-vous à la AWS Management Console et ouvrez la console AWS Glue à 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.

Utilisez AWS CLI

Dans l’AWS CLI, vous pouvez utiliser la commande AWS Glue update-table et son argument --table-input pour redéfinir la table et 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 commande AWS Glue update-table fonctionne en mode remplacement, ce qui signifie qu’elle remplace la définition de table existante par la nouvelle définition spécifiée par le paramètre table-input. Lorsque vous ajoutez la propriété read_restored_glacier_objects, veillez à spécifier dans le paramètre table-input tous les champs qui doivent figurer dans votre table.