Interrogez des données dans Amazon Athena ou Amazon Redshift - Amazon DataZone

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.

Interrogez des données dans Amazon Athena ou Amazon Redshift

Dans Amazon DataZone, une fois qu'un abonné a accès à un actif du catalogue, il peut l'utiliser (interroger et analyser) à l'aide d'Amazon Athena ou de l'éditeur de requêtes Amazon Redshift v2. Vous devez être propriétaire du projet ou contributeur pour effectuer cette tâche. En fonction des plans activés dans le projet, Amazon DataZone fournit des liens vers Amazon Athena et/ou l'éditeur de requêtes Amazon Redshift v2 dans le volet droit de la page du projet dans le portail de données.

  1. Accédez au portail de DataZone données Amazon URL et connectez-vous à l'aide de l'authentification unique (SSO) ou de votre AWS informations d'identification. Si vous êtes DataZone administrateur Amazon, vous pouvez accéder à la DataZone console Amazon à l'adresse https://console.aws.amazon.com/datazone et vous connecter à l'aide du Compte AWS où le domaine a été créé, puis choisissez Open data portal.

  2. Sur le portail de DataZone données Amazon, choisissez Parcourir la liste des projets, puis recherchez et choisissez le projet pour lequel vous avez les données que vous souhaitez analyser.

  3. Si le plan Data Lake est activé sur ce projet, un lien vers Amazon Athena s'affiche dans le panneau de droite de la page d'accueil du projet.

    Si le plan de l'entrepôt de données est activé sur ce projet, un lien vers l'éditeur de requêtes s'affiche dans le panneau de droite de la page d'accueil du projet.

    Note

    Les plans sont définis dans le profil d'environnement avec lequel un projet est créé.

Cliquez sur le lien Amazon Athena pour ouvrir l'éditeur de requêtes Amazon Athena dans un nouvel onglet du navigateur en utilisant les informations d'identification du projet pour l'authentification. Le DataZone projet Amazon sur lequel vous travaillez est automatiquement sélectionné comme groupe de travail actuel dans l'éditeur de requêtes.

Dans l'éditeur de requêtes Amazon Athena, rédigez et exécutez vos requêtes. Voici quelques tâches courantes :

Interrogez et analysez vos actifs souscrits

Si l'accès aux actifs auxquels votre projet est abonné n'est pas automatiquement accordé par Amazon DataZone, vous devez être autorisé à accéder aux données sous-jacentes. Pour plus d'informations sur la manière d'accorder l'accès à ces actifs, consultezAccorder l'accès aux actifs non gérés pour les abonnements approuvés.

Si l'accès aux ressources auxquelles votre projet est abonné est automatiquement accordé par Amazon DataZone, vous pouvez exécuter des SQL requêtes sur les tables et consulter les résultats dans Amazon Athena. Pour plus d'informations sur l'utilisation SQL dans Amazon Athena, consultez la SQLréférence relative à Athena.

Lorsque vous accédez à l'éditeur de requêtes Amazon Athena après avoir choisi le lien Amazon Athena dans le panneau de droite de la page d'accueil du projet, une liste déroulante de projets s'affiche dans le coin supérieur droit de l'éditeur de requêtes Amazon Athena et le contexte de votre projet est automatiquement sélectionné.

Vous pouvez voir les bases de données suivantes dans le menu déroulant Base de données :

  • Une base de données de publication ({environmentname}_pub_db). L'objectif de cette base de données est de vous fournir un environnement dans lequel vous pouvez produire de nouvelles données dans le contexte de votre projet, puis publier ces données dans le DataZone catalogue Amazon. Les propriétaires de projets et les contributeurs ont un accès en lecture et en écriture à cette base de données. Les spectateurs du projet n'ont qu'un accès en lecture à cette base de données.

  • Une base de données d'abonnement ({environmentname}_sub_db). Le but de cette base de données est de partager avec vous les données auxquelles vous vous êtes abonné en tant que membre du projet dans le DataZone catalogue Amazon, et de vous permettre d'interroger ces données.

Création de nouvelles tables

Si vous êtes connecté à un compartiment S3 externe, vous pouvez utiliser Amazon Athena pour interroger et analyser les actifs d'un compartiment Amazon S3 externe. Dans ce scénario, Amazon DataZone n'est pas autorisé à accorder l'accès directement aux données sous-jacentes dans le compartiment externe Amazon S3, et les données Amazon S3 externes créées en dehors du projet ne sont pas automatiquement gérées dans Lake Formation et ne peuvent pas être gérées par Amazon DataZone. Une autre solution consiste à copier les données du compartiment Amazon S3 externe vers une nouvelle table à l'intérieur du compartiment Amazon S3 du projet à l'aide d'une CREATE TABLE instruction dans Amazon Athena. Lorsque vous exécutez une CREATE TABLE requête dans Amazon Athena, vous enregistrez votre table auprès du AWS Glue Data Catalog.

Pour spécifier le chemin d'accès à vos données dans Simple Storage Service (Amazon S3), utilisez la propriété LOCATION, comme illustré dans l'exemple suivant :

CREATE EXTERNAL TABLE 'test_table'( ... ) ROW FORMAT ... STORED AS INPUTFORMAT ... OUTPUTFORMAT ... LOCATION 's3://bucketname/folder/'

Pour plus d'informations, consultez Emplacement des tables dans Amazon S3.

Création d'une table à partir des résultats de requête (CTAS) d'un compartiment S3 externe

Lorsque vous souscrivez à un actif, l'accès aux données sous-jacentes est en lecture seule. Vous pouvez utiliser Amazon Athena pour créer une copie du tableau. Dans Amazon Athena, A CREATE TABLE AS SELECT (CTAS) query crée une nouvelle table dans Amazon Athena à partir des résultats d'SELECTune instruction issue d'une autre requête. Pour plus d'informations sur la CTAS syntaxe, consultez CREATETABLEAS.

L'exemple suivant crée une table en copiant toutes les colonnes d'une table :

CREATE TABLE new_table AS SELECT * FROM old_table;

Dans la variation suivante du même exemple, votre instruction SELECT inclut également une clause WHERE. Dans ce cas, la requête sélectionne uniquement les lignes du tableau qui respectent la clause WHERE :

CREATE TABLE new_table AS SELECT * FROM old_table WHERE condition;

L'exemple suivant crée une nouvelle requête qui s'exécute sur un ensemble de colonnes à partir d'une autre table :

CREATE TABLE new_table AS SELECT column_1, column_2, ... column_n FROM old_table;

Cette variante du même exemple crée une nouvelle table à partir de colonnes spécifiques provenant de plusieurs tables :

CREATE TABLE new_table AS SELECT column_1, column_2, ... column_n FROM old_table_1, old_table_2, ... old_table_n;

Ces tables nouvellement créées font désormais partie de vos projets. » AWS Glue base de données, et peut être rendue détectable par d'autres et partagée avec d'autres DataZone projets Amazon en publiant les données en tant que ressource dans le DataZone catalogue Amazon.

Dans le portail de DataZone données Amazon, ouvrez un environnement qui utilise le plan de l'entrepôt de données. Choisissez le lien Amazon Redshift dans le panneau de droite de la page d'environnement. Cela ouvre une boîte de dialogue de confirmation contenant les informations nécessaires pour vous aider à établir une connexion au cluster Amazon Redshift ou au groupe de travail Amazon Redshift Serverless de votre environnement dans l'éditeur de requêtes Amazon Redshift v2.0. Une fois que vous avez identifié les informations nécessaires pour établir la connexion, cliquez sur le bouton Ouvrir Amazon Redshift. Cela ouvre l'éditeur de requêtes Amazon Redshift v2.0 dans un nouvel onglet du navigateur à l'aide des informations d'identification temporaires de l'environnement Amazon. DataZone

Dans l'éditeur de requêtes, suivez les étapes ci-dessous selon que votre environnement utilise un groupe de travail Amazon Redshift Serverless ou un cluster Amazon Redshift.

Pour un groupe de travail Amazon Redshift Serverless

  1. Dans l'éditeur de requêtes, identifiez le groupe de travail Amazon Redshift Serverless de votre DataZone environnement Amazon, cliquez dessus avec le bouton droit de la souris et choisissez Create a connection.

  2. Choisissez Federated User pour l'authentification.

  3. Indiquez le nom de la base de données de DataZone l'environnement Amazon.

  4. Choisissez Créer une connexion.

Pour un cluster Amazon Redshift :

  1. Dans l'éditeur de requêtes, identifiez le cluster Amazon Redshift de votre DataZone environnement Amazon, cliquez dessus avec le bouton droit de la souris et choisissez Create a connection.

  2. Sélectionnez Informations d'identification temporaires utilisant votre IAM identité pour l'authentification.

  3. Si la méthode d'authentification ci-dessus n'est pas disponible, ouvrez les paramètres du compte en cliquant sur le bouton en forme de roue dentée dans le coin inférieur gauche, choisissez Authentifier avec des IAM informations d'identification et enregistrez. Il s'agit d'un one-time-only réglage.

  4. Indiquez le nom de la base de données de DataZone l'environnement Amazon pour créer la connexion.

  5. Choisissez Créer une connexion.

Vous pouvez maintenant commencer à interroger les tables et les vues du cluster Amazon Redshift ou du groupe de travail Amazon Redshift Serverless configuré pour votre environnement Amazon. DataZone

Toutes les tables ou vues Amazon Redshift auxquelles vous êtes abonné sont liées au cluster Amazon Redshift ou au groupe de travail Amazon Redshift Serverless configuré pour l'environnement. Vous pouvez vous abonner aux tables et aux vues ainsi que publier les nouvelles tables et vues que vous créez dans le cluster ou la base de données de votre environnement.

Prenons par exemple un scénario dans lequel un environnement est lié à un cluster Amazon Redshift appelé redshift-cluster-1 et une base de données appelée dev dans ce cluster. À l'aide du portail de DataZone données Amazon, vous pouvez interroger les tables et les vues ajoutées à votre environnement. Dans la Analytics tools section du volet droit du portail de données, vous pouvez choisir le lien Amazon Redshift pour cet environnement, qui ouvre l'éditeur de requêtes. Vous pouvez ensuite cliquer avec le bouton droit sur le redshift-cluster-1 cluster et créer une connexion à l'aide d'informations d'identification temporaires utilisant votre IAM identité. Une fois la connexion établie, vous pouvez voir toutes les tables et vues auxquelles votre environnement a accès dans la base de données de développement.