Interrogation des tables de métadonnées à l’aide des services d’analytique AWS
Vous pouvez interroger vos tables de métadonnées gérées par S3 avec des services d’analytique AWS tels qu’Amazon Athena, Amazon Redshift et Amazon EMR.
Avant de pouvoir exécuter des requêtes, vous devez intégrer les compartiments de table S3 gérés par AWS de votre région et de votre Compte AWS aux services d’analytique AWS.
Interrogation des tables de métadonnées avec Amazon Athena
Après avoir intégré vos compartiments de table S3 gérés par AWS aux services d’analytique AWS, vous pouvez commencer à interroger vos tables de métadonnées dans Athena. Dans vos requêtes, procédez comme suit :
-
Spécifiez le catalogue
s3tablescatalog/aws-s3et la base de donnéesb_(qui est l’espace de noms de vos tables de métadonnées).general_purpose_bucket_name
-
Placez le nom de l’espaces de nom de vos tables de métadonnées entre guillemets (
") ou accents graves (`), sinon la requête risque de ne pas fonctionner.
Pour plus d’informations, consultez Interrogation des tables Amazon S3 avec Athena.
Vous pouvez également exécuter des requêtes dans Athena à partir de la console Amazon S3.
La procédure suivante utilise la console Amazon S3 pour accéder à l’éditeur de requêtes Athena afin que vous puissiez interroger une table avec Amazon Athena.
Pour interroger une table de métadonnées
Connectez-vous à la AWS Management Console et ouvrez la console Amazon S3 à l’adresse https://console.aws.amazon.com/s3/
. -
Dans le volet de navigation de gauche, choisissez Compartiments à usage général.
-
Dans l’onglet Compartiments à usage général, choisissez le compartiment contenant la configuration de métadonnées de la table de métadonnées que vous souhaitez interroger.
-
Sur la page de détails du compartiment, sélectionnez l’onglet Métadonnées.
-
Choisissez Interroger une table avec Athena, puis choisissez l’un des exemples de requête pour tables de journal ou d’inventaire.
-
La console Amazon Athena s’ouvre et l’éditeur de requête Athena apparaît avec un exemple de requête chargé pour vous. Modifiez cette requête en fonction de votre cas d’utilisation.
Dans l’éditeur de requête, le champ Catalogue doit spécifier s3tablescatalog/aws-s3. Le champ Base de données doit indiquer l’espace de noms dans lequel votre table est stockée (par exemple, b_
nom-compartiment-usage-général).Note
Si vous ne voyez pas ces valeurs dans les champs Catalogue et Base de données, assurez-vous d’avoir intégré votre compartiment de table géré par AWS aux services d’analytique AWS de cette région. Pour plus d’informations, consultez Intégration d’Amazon S3 Tables aux services d’analytique AWS.
-
Pour exécuter la requête, choisissez ensuite Run (Exécuter).
Note
-
Si vous recevez le message d’erreur
« Autorisations insuffisantes pour exécuter la requête. Le principal ne dispose d’aucun privilège sur la ressource spécifiée. »lorsque vous essayez d’exécuter une requête dans Athena, vous devez disposer des autorisations Lake Formation nécessaires sur la table. Pour plus d’informations, consultez Octroi de l’autorisation Lake Formation sur une table ou une base de données.Veillez également à disposer des autorisations Gestion des identités et des accès AWS (IAM) appropriées pour interroger des tables de métadonnées. Pour plus d’informations, consultez Autorisations d’interrogation des tables de métadonnées.
-
Si le message d’erreur
« Iceberg ne peut pas accéder à la ressource demandée »s’affiche lorsque vous essayez d’exécuter la requête, accédez à la console AWS Lake Formation et assurez-vous que vous vous êtes accordé les autorisations nécessaires sur le catalogue de compartiments de table et la base de données (espace de noms) que vous avez créés. Ne spécifiez pas de table lorsque vous accordez ces autorisations. Pour plus d’informations, consultez Octroi de l’autorisation Lake Formation sur une table ou une base de données.
-
Interrogation des tables de métadonnées avec Amazon Redshift
Après avoir intégré vos compartiments de table S3 gérés par AWS aux services d’analytique AWS, procédez comme suit :
-
Créez un lien de ressource vers l’espace de noms de vos tables de métadonnées (généralement
b_).general_purpose_bucket_name -
Placez le nom de l’espaces de nom de vos tables de métadonnées entre guillemets (
") ou accents graves (`), sinon la requête risque de ne pas fonctionner.
Vous pouvez ensuite commencer à interroger vos tables de métadonnées dans la console Amazon Redshift. Pour plus d’informations, consultez Accès aux tables Amazon S3 avec Amazon Redshift.
Interrogation des tables de métadonnées avec Amazon EMR
Pour interroger vos tables de métadonnées à l’aide d’Amazon EMR, vous devez créer un cluster Amazon EMR configuré pour Apache Iceberg et vous connecter à vos tables de métadonnées à l’aide d’Apache Spark. Pour ce faire, intégrez vos compartiments de table S3 gérés par AWS aux services d’analytique AWS ou utilisez le catalogue open source Amazon S3 Tables pour le catalogue client Iceberg.
Note
Lorsque vous utilisez Apache Spark sur Amazon EMR ou d’autres moteurs tiers pour interroger vos tables de métadonnées, nous vous recommandons d’utiliser le point de terminaison REST Iceberg d’Amazon S3 Tables. Votre requête risque de ne pas s’exécuter correctement si vous n’utilisez pas ce point de terminaison. Pour plus d’informations, consultez Accès aux tables à l’aide du point de terminaison Iceberg REST d’Amazon S3 Tables.
Pour plus d’informations, consultez Accès aux tables Amazon S3 avec Amazon EMR.