Interroger des données externes à l'aide du catalogue de données AWS Glue
Autonomous AI Database prend en charge un système de synchronisation avec une instance Amazon AWS Glue Data Catalog.
- À propos de l'interrogation avec AWS Glue Data Catalog
Autonomous AI Database vous permet de synchroniser avec les métadonnées du catalogue de données de colle Amazon Web Service (AWS). Une table externe de base de données est automatiquement créée par Autonomous AI Database pour chaque table collectée par AWS Glue sur les données stockées dans Amazon Simple Storage Service (S3). Les utilisateurs peuvent interroger les données stockées dans S3 à partir de la base de données Autonomous AI Database sans avoir à dériver manuellement le schéma pour les sources de données externes et à créer des tables externes. - Concepts liés à l'interrogation à l'aide du catalogue de données AWS Glue
Vous devez comprendre les concepts suivants pour effectuer des interrogations à l'aide des catalogues de données Amazon Web Service (AWS) Glue. - Mappage entre Autonomous AI Database et AWS Glue
Au cours du processus de synchronisation, des tables externes sont créées dans Autonomous AI Database dérivées des bases de données et des tables du catalogue de données AWS Glue sur Amazon S3. - Flux de travail d'utilisateur pour l'interrogation avec le catalogue de données AWS Glue
Le flux de travail d'utilisateur de base pour l'interrogation des données AWS S3 avec le catalogue de données AWS Glue implique la connexion au catalogue de données AWS Glue, la synchronisation avec la base de données Autonomous AI Database pour créer automatiquement des tables externes, puis l'interrogation des données S3. - Exemple : Interrogation avec le catalogue de données AWS Glue
Cet exemple montre comment exécuter des interrogations sur des jeux de données stockés dans Amazon Simple Storage Service (Amazon S3) à l'aide d'un catalogue de données AWS Glue.
À propos de l'interrogation avec AWS Glue Data Catalog
Autonomous AI Database vous permet de synchroniser avec les métadonnées du catalogue de données de colle Amazon Web Service (AWS). Une table externe de base de données est automatiquement créée par Autonomous AI Database pour chaque table collectée par AWS Glue sur les données stockées dans Amazon Simple Storage Service (S3). Les utilisateurs peuvent interroger les données stockées dans S3 à partir de la base de données Autonomous AI Database sans avoir à dériver manuellement le schéma pour les sources de données externes et à créer des tables externes.
Amazon AWS Glue Data Catalog est un service centralisé de gestion des métadonnées qui aide les professionnels des données à découvrir des données et prend en charge la gouvernance des données dans le cloud AWS. Une instance de base de données d'IA autonome a la possibilité de synchroniser automatiquement les métadonnées du catalogue de données avec AWS Glue Data Catalog, ce qui permet aux utilisateurs de base de données d'utiliser immédiatement une base de données d'IA autonome pour interroger les données stockées dans le nuage AWS.
La synchronisation avec AWS Glue Data Catalog a les mêmes propriétés que la synchronisation avec OCI Data Catalog. La synchronisation est dynamique, ce qui permet de tenir la base de données à jour en ce qui concerne les modifications apportées aux données sous-jacentes, ce qui réduit les coûts d'administration car elle gère automatiquement des centaines à des milliers de tables.
Concepts liés à l'interrogation avec AWS Glue Data Catalog
Une compréhension des concepts suivants est nécessaire pour effectuer des interrogations avec les catalogues de données Amazon Web Service (AWS) Glue.
- Catalogue de données de la colle AWS : Base de données
-
Une base de données AWS Glue représente un ensemble de définitions de table relationnelle, organisées en un groupe logique. Chaque instance de catalogue de données AWS Glue gère plusieurs bases de données.
- Catalogue de données de colle AWS : Table
-
Une table AWS Glue représente une table relationnelle sur les données stockées dans le cloud AWS. Une table AWS Glue définit le schéma des données sous-jacentes et se compose d'informations de colonne, d'informations de partition, d'informations de sérialisation, d'informations de stockage, de statistiques, de métadonnées définies par l'utilisateur et d'autres métadonnées. Les tables du catalogue de données AWS Glue peuvent être créées manuellement ou automatiquement à l'aide d'un robot d'indexation AWS Glue.
- Glue Data Catalog : Robot d'indexation
-
Vous pouvez utiliser un robot d'indexation pour alimenter le catalogue de données AWS Glue avec des tables. Il s'agit de la méthode principale utilisée par la plupart des utilisateurs d'AWS Glue. Un robot d'indexation peut analyser plusieurs magasins de données en une seule exécution. Une fois terminé, le robot d'indexation crée ou met à jour une ou plusieurs tables dans votre catalogue de données. Les tâches d'extraction, de transformation et de chargement (ETL) que vous définissez dans AWS Glue utilisent ces tables de catalogue de données comme sources et cibles. La tâche d'ETC lit et écrit dans les magasins de données indiqués dans les tables du catalogue de données source et cible.
Les tables AWS Glue peuvent être créées manuellement par l'utilisateur ou automatiquement à l'aide d'un robot d'indexation prédéfini ou personnalisé. Les robots d'indexation se connectent aux magasins de données sous-jacents (par exemple, Amazon S3), appellent des classificateurs pour dériver le schéma des données et créent des tables AWS Glue pour stocker les métadonnées déduites. AWS Glue fournit des classificateurs pour les types de fichier courants, tels que CSV, JSON, Parquet et AVRO.
Mappage entre la base de données IA autonome et la colle AWS
Au cours du processus de synchronisation, des tables externes sont créées dans la base de données Autonomous AI Database dérivée des bases de données AWS Glue Data Catalog et des tables sur Amazon S3.
AWS Glue organise les métadonnées collectées dans les bases de données et les tables. Une base de données AWS Glue est un ensemble de définitions de table relationnelle. Tables AWS Glue qui décrivent le schéma commun et les propriétés des fichiers associés à la table.
AWS Glue suit le modèle relationnel de représentation des attributs. Pour le mappage de schémas hiérarchiques à des schémas relationnels, AWS Glue infère le schéma des données semi-structurées et affleure les données à un schéma relationnel à l'aide d'un processus ETL.
Le tableau suivant représente le mappage entre les concepts du catalogue de données OCI et les concepts du catalogue de données AWS Glue.
Tableau 3-5 Mappage du catalogue de données OCI au catalogue de données de colle AWS
| Catalogue de données OCI | Catalogue de données AWS Glue | Oracle Database |
|---|---|---|
| Ressource de données | Database | Schéma |
| Dossier | (Seau) | Schéma |
| Entité logique | Table | Table |
Flux de travail d'utilisateur pour l'interrogation avec AWS Glue Data Catalog
Le flux de travail utilisateur de base pour l'interrogation des données AWS S3 avec AWS Glue Data Catalog implique la connexion à AWS Glue Data Catalog, la synchronisation avec Autonomous AI Database pour créer automatiquement des tables externes, puis l'interrogation des données S3.
L'administrateur d'interrogation du catalogue de données de base de données ou l'administrateur de base de données accorde l'accès en lecture aux tables externes générées afin que les analystes de données et les autres utilisateurs de base de données puissent parcourir et interroger la base de données IA autonome sans avoir à dériver manuellement le schéma pour les sources de données externes et créer des tables externes.
Utilisateurs
Le tableau ci-dessous décrit les différents types d'utilisateur qui effectuent les actions de flux de travail des utilisateurs.
| Utilisateur | Description |
|---|---|
| Administrateur du catalogue de données de base de données | Utilisateur de base de données doté du rôle DCAT_SYNC.
|
| Administrateur d'interrogation du catalogue de données de base de données | L'utilisateur de base de données peut accorder l'accès aux tables externes créées automatiquement à d'autres utilisateurs. |
| Analyste des données | Utilisateur de base de données sur Autonomous AI Database interrogeant des données dans AWS S3 soit en interrogeant des tables externes créées automatiquement, soit en interagissant directement avec AWS Glue Data Catalog. |
|
Utilisateur du catalogue de données AWS Glue |
Utilisateur AWS ayant accès à un catalogue de données AWS Glue. |
|
Utilisateur du stockage d'objets AWS S3 |
Utilisateur AWS ayant accès aux données stockées dans AWS S3 |
Flux de travail d'utilisateur
Le tableau ci-dessous décrit chaque action incluse dans le flux de travail et le type d'utilisateur pouvant effectuer l'action.
L'ensemble
DBMS_DCAT est disponible pour effectuer les tâches requises pour interroger le stockage d'objets AWS S3 à l'aide du catalogue de données AWS Glue. Voir Ensemble DBMS_DCAT.
| Action | Qui est l'utilisateur | Description |
|---|---|---|
| Créer des politiques | Administrateur du catalogue de données de base de données |
Les données d'identification d'utilisateur de la base de données d'intelligence artificielle autonome doivent disposer des autorisations appropriées pour accéder au catalogue de données AWS Glue et pour effectuer des lectures à partir du stockage d'objets S3. Informations supplémentaires : Données d'identification requises et politiques IAM. |
| Créer des données d'identification | Administrateur du catalogue de données de base de données |
Assurez-vous que les données d'identification de base de données sont en place pour accéder au catalogue de données AWS Glue et interroger le stockage d'objets S3. L'utilisateur appelle
DBMS_CLOUD.CREATE_CREDENTIAL pour créer les données d'identification de l'utilisateur.
Note
Seules les données d'identification Amazon Web Services (AWS) sont prises en charge. Les données d'identification AWS Amazon Resource Names (ARN) ne sont pas prises en charge. Informations supplémentaires : DBMS_CLOUD CREATE_CREDENTIAL Procédure |
|
Connexion |
Administrateur du catalogue de données de base de données |
Établissez une connexion entre une instance de base de données d'IA autonome et une instance de catalogue de données AWS Glue. La connexion utilise les privilèges de l'utilisateur du catalogue de données AWS Glue. Les connexions d'une instance Autonomous AI Database à plusieurs instances AWS Glue Data Catalog sont prises en charge. Pour lancer une connexion entre une instance Autonomous AI Database et une instance AWS Glue Data Catalog, l'utilisateur :
Une fois la connexion établie, Autonomous AI Database stocke les métadonnées associées, telles que l'ID catalogue AWS Glue, la région, le point d'extrémité et les objets de données d'identification. Informations supplémentaires : Procédure SET_DATA_CATALOG_CONN, Procédure UNSET_DATA_CATALOG_CONN, SET_DATA_CATALOG_CREDENTIALProcédure, Procédure SET_OBJECT_STORE_CREDENTIAL. |
|
Synchroniser |
Administrateur du catalogue de données de base de données |
L'utilisateur peut démarrer manuellement une synchronisation avec les catalogues de données AWS Glue connectés à l'aide de La synchronisation effectue les opérations suivantes :
Informations supplémentaires : Voir Procédure RUN_SYNC, CREATE_SYNC_JOB Procédure, DROP_SYNC_JOB Procédure, Mappage de synchronisation
|
|
Surveiller la synchronisation |
Administrateur du catalogue de données de base de données |
L'utilisateur peut voir le statut de synchronisation en interrogeant la vue USER_LOAD_OPERATIONS. Une fois le processus de synchronisation terminé, l'utilisateur peut consulter un journal des résultats de la synchronisation, y compris des détails sur les mappings avec des tables externes.
Informations supplémentaires : Surveillance et dépannage des chargements |
|
accorder des privilèges |
Administrateur d'interrogation du catalogue de données de base de données, administrateur de base de données |
L'administrateur d'interrogation du catalogue de données de la base de données ou l'administrateur de base de données doit accorder aux utilisateurs analystes de données les privilèges READ sur les tables externes générées. Cela permet aux analystes de données d'interroger les tables externes générées. |
|
Interroger |
Analyste des données |
Les analystes de données peuvent examiner les schémas et les tables synchronisés dans les schémas GLUE$* et interroger les tables externes au moyen de tout outil ou application prenant en charge Oracle SQL. Les données dans S3 sont accessibles à l'aide des privilèges de l'utilisateur du stockage d'objets AWS S3. Informations supplémentaires : Exemple : Interrogation avec le catalogue de données AWS Glue |
|
Mettre fin aux connexions |
Administrateur du catalogue de données de base de données |
Pour supprimer une association de catalogue de données existante, l'utilisateur appelle la procédure Cette action n'est effectuée que lorsque vous ne prévoyez plus d'utiliser le catalogue de données AWS Glue connecté et les tables externes dérivées du catalogue. Cette action supprime les métadonnées du catalogue de données AWS Glue et supprime les tables externes synchronisées de l'instance de base de données IA autonome. Informations supplémentaires : Procédure UNSET_DATA_CATALOG_CONN |
Exemple : Interrogation avec AWS Glue Data Catalog
Cet exemple montre comment exécuter des requêtes sur des jeux de données stockés dans Amazon Simple Storage Service (Amazon S3) à l'aide d'un catalogue de données AWS Glue.
Dans cet exemple, les métadonnées d'un catalogue de données AWS Glue sont inspectées pour voir quels objets Amazon S3 ont déjà été balayés et existent dans le catalogue de données. Autonomous AI Database est ensuite associé au catalogue de données AWS Glue et à Amazon S3. Le catalogue de données est synchronisé avec Autonomous AI Database pour créer des tables externes sur les jeux de données stockés dans Amazon S3. Les tables externes sont utilisées pour interroger les jeux de données dans Amazon S3.
- Examinez les métadonnées dans AWS Glue Data Catalog.
- Lancez la console AWS Glue.

Description de l'illustration glue_console.png - Naviguez jusqu'au catalogue de données, aux bases de données et aux tables pour rechercher des objets existants.
Dans cet exemple, certains objets existent dans Amazon S3 pour lesquels AWS Glue a précédemment balayé et créé des tables, comme illustré ci-dessous :

Description de l'illustration glue_tables.png
- Lancez la console AWS Glue.
- Associer AWS Glue à Autonomous AI Database.
- Créez des données d'identification dans Autonomous AI Database.
L'appel de procédure suivant inclut l'ID d'accès et la clé secrète pour fournir à Autonomous AI Database l'accès aux données sous-jacentes dans Amazon S3.
exec dbms_cloud.create_credential('CRED_AWS','<access id>', '<access key>'); - Associez les informations d'identification au catalogue de données AWS Glue et au stockage d'objets Amazon S3.
Ces appels de procédure associent respectivement le catalogue de données et le stockage d'objets aux informations d'identification et de connexion.
exec dbms_dcat.set_data_catalog_credential('CRED_AWS'); exec dbms_dcat.set_object_store_credential('CRED_AWS'); - Configurez une région AWS dans laquelle Glue s'exécute.
exec dbms_dcat.set_data_catalog_conn(region => 'us-west-2', catalog_type=>'AWS_GLUE');
- Créez des données d'identification dans Autonomous AI Database.
- Synchronisez les métadonnées pour créer des tables externes dans la base de données IA autonome dérivée des bases de données et des tables AWS Glue.
- Maintenant que l'association est terminée, utilisez la vue
all_glue_databasespour rechercher les bases de données qui se trouvent dans un catalogue de données AWS Glue.select * from all_glue_databases order by name; - Utilisez la vue
all_glue_tablespour obtenir la liste des tables disponibles pour la synchronisation.select * from all_glue_tables order by database_name, name; - Synchronisez la base de données autonome avec deux tables,
storeetitem, trouvées dans la base de donnéesparq.begin dbms_dcat.run_sync( synced_objects => ' { "database_list": [ { "database": "parq", "table_list": ["store","item"] } ] }', error_semantics => 'STOP_ON_ERROR'); end; /
- Maintenant que l'association est terminée, utilisez la vue
- Inspectez de nouveaux objets dans Autonomous AI Database et exécutez une interrogation au-dessus de S3.
- Utilisez SQL Developer pour afficher les nouveaux objets créés par l'opération de synchronisation précédente.
Le schéma
GLUE$PARQ_TPCDS_ORACLE_PARQa été généré et nommé automatiquement par l'appel de procéduredbms_dcat.run_sync.
Description de l'illustration glue_sql_dev.png - Exécutez une interrogation SQL sur les magasins de jeux de données dans Amazon S3.
SELECT * FROM glue$parq_tpcds_oracle_parq.store;
- Utilisez SQL Developer pour afficher les nouveaux objets créés par l'opération de synchronisation précédente.
