Interrogation des données externes avec AWS Glue Data Catalog
Autonomous Database prend en charge un système de synchronisation avec une instance Amazon AWS Glue Data Catalog.
- A propos de l'interrogation avec AWS Glue Data Catalog
Autonomous Database vous permet de synchroniser vos données avec les métadonnées Amazon Web Service (AWS) Glue Data Catalog. Une table externe de base de données est automatiquement créée par Autonomous 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 d'Autonomous 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 avec AWS Glue Data Catalog
Une compréhension des concepts suivants est nécessaire pour l'interrogation avec les catalogues de données Amazon Web Service (AWS) Glue. - Mise en correspondance entre Autonomous Database et AWS Glue
Au cours du processus de synchronisation, des tables externes sont créées dans Autonomous Database dérivées des bases de données AWS Glue Data Catalog et des tables sur Amazon S3. - Workflow utilisateur pour l'interrogation avec AWS Glue Data Catalog
Le workflow 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 Database pour créer automatiquement des tables externes, puis l'interrogation des données S3. - Exemple : requête avec AWS Glue Data Catalog
Cet exemple vous guide tout au long du processus d'exécution de requêtes sur des ensembles de données stockés dans Amazon Simple Storage Service (Amazon S3) à l'aide d'un catalogue de données AWS Glue.
Rubrique parent : Interrogation des données externes avec Autonomous Database
A propos de l'interrogation avec AWS Glue Data Catalog
Autonomous Database vous permet de synchroniser vos données avec les métadonnées d'Amazon Web Service (AWS) Glue Data Catalog. Une table externe de base de données est automatiquement créée par Autonomous 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 d'Autonomous 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 de gestion de métadonnées centralisé qui aide les professionnels des données à découvrir les données et prend en charge la gouvernance des données dans le cloud AWS. Une instance Autonomous Database peut 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 Autonomous Database pour interroger les données stockées dans le cloud AWS.
La synchronisation avec AWS Glue Data Catalog possède les mêmes propriétés que la synchronisation avec OCI Data Catalog. La synchronisation est dynamique, ce qui permet de maintenir 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.
Rubrique parent : Interrogation des données externes avec AWS Glue Data Catalog
Concepts liés à l'interrogation avec AWS Glue Data Catalog
Une compréhension des concepts suivants est nécessaire pour l'interrogation avec les catalogues de données Amazon Web Service (AWS) Glue.
- AWS Glue Data Catalog : 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.
- AWS Glue Data Catalog : 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, de partition, de sérialisation, 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 AWS Glue.
- Glue Data Catalog : analyseur de liens
-
Vous pouvez utiliser un robot pour remplir 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 AWS Glue. Un robot peut analyser plusieurs banques de données en une seule exécution. Une fois l'analyseur de liens terminé, il crée ou met à jour des tables dans votre catalogue de données. Les travaux 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. Le travail ETL lit et écrit dans les banques de données indiquées dans les tables de 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 prédéfini ou personnalisé. Les analyseurs de liens se connectent aux banques de données sous-jacentes (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 inférées. AWS Glue fournit des classificateurs pour les types de fichiers courants, tels que CSV, JSON, Parquet et AVRO.
Rubrique parent : Interrogation des données externes avec AWS Glue Data Catalog
Mappage entre Autonomous Database et AWS Glue
Au cours du processus de synchronisation, des tables externes sont créées dans Autonomous Database dérivées 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 mapper des schémas hiérarchiques avec des schémas relationnels, AWS Glue infère le schéma des données semi-structurées et met à plat les données en un schéma relationnel à l'aide d'un processus ETL.
Le tableau suivant représente le mappage entre les concepts OCI Data Catalog et AWS Glue Data Catalog.
Tableau 3-5 Correspondance entre OCI Data Catalog et AWS Glue Data Catalog
OCI Data Catalog | Catalogue de données AWS Glue | Oracle Database |
---|---|---|
Ressource de données | Base de données | Schéma |
Dossier | (Bucket) | Schéma |
Entité logique | Table | Table |
Rubrique parent : Interrogation des données externes avec AWS Glue Data Catalog
Workflow utilisateur pour les requêtes avec AWS Glue Data Catalog
Le workflow 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 Database pour créer automatiquement des tables externes, puis l'interrogation des données S3.
L'administrateur ou l'administrateur de base de données Database Data Catalog Query accorde l'accès READ 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 Autonomous Database 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 exécutent les actions de workflow utilisateur.
Utilisateur | Description |
---|---|
Administrateur Database Data Catalog | Utilisateur de base de données doté du rôle DCAT_SYNC .
|
Administrateur de requête de 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 de données | Utilisateur de base de données sur Autonomous Database qui interroge les 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 AWS S3 Object Storage |
Utilisateur AWS ayant accès aux données stockées dans AWS S3 |
Workflow d'utilisateur
Le tableau ci-dessous décrit chaque action incluse dans le workflow et le type d'utilisateur qui peut effectuer l'action.
Le package
DBMS_DCAT
est disponible pour effectuer les tâches requises pour interroger le stockage d'objets AWS S3 à l'aide d'AWS Glue Data Catalog. Voir Package DBMS_DCAT.
Action | Qui est l'utilisateur ? | Description |
---|---|---|
Créer des politiques | Administrateur Database Data Catalog |
Les informations d'identification utilisateur Autonomous Database doivent disposer des droits d'accès appropriés pour accéder à AWS Glue Data Catalog et lire à partir du stockage d'objets S3. Informations supplémentaires : informations d'identification requises et stratégies IAM. |
Créer des informations d'identification | Administrateur Database Data Catalog |
Assurez-vous que les informations d'identification de base de données sont en place pour accéder à AWS Glue Data Catalog et pour interroger le stockage d'objets S3. L'utilisateur appelle
DBMS_CLOUD.CREATE_CREDENTIAL pour créer des informations d'identification utilisateur.
Remarque
Seules les informations d'identification Amazon Web Services (AWS) sont prises en charge. Les informations d'identification AWS Amazon Resource Names (ARN) ne sont pas prises en charge. Informations supplémentaires : procédure DBMS_CLOUD CREATE_CREDENTIAL |
Connexion |
Administrateur Database Data Catalog |
Etablissez une connexion entre une instance Autonomous Database et une instance AWS Glue Data Catalog. La connexion utilise les privilèges de l'utilisateur AWS Glue Data Catalog. Les connexions d'une instance Autonomous Database à plusieurs instances AWS Glue Data Catalog sont prises en charge. Pour lancer une connexion entre une instance Autonomous Database et une instance AWS Glue Data Catalog, l'utilisateur doit :
Une fois la connexion établie, Autonomous Database stocke les métadonnées associées, telles que l'ID de catalogue, la région, l'adresse et les objets d'informations d'identification AWS Glue. Informations supplémentaires : procédure SET_DATA_CATALOG_CONN, procédure UNSET_DATA_CATALOG_CONN, procédure SET_DATA_CATALOG_CREDENTIAL, procédure SET_OBJECT_STORE_CREDENTIAL. |
Synchroniser |
Administrateur Database Data Catalog |
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 :
Plus d'informations : reportez-vous à Procédure RUN_SYNC, Procédure CREATE_SYNC_JOB, Procédure DROP_SYNC_JOB, Mappage de synchronisation.
|
Surveillance de la synchronisation |
Administrateur Database Data Catalog |
L'utilisateur peut visualiser 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 mappages avec des tables externes.
Informations supplémentaires : Surveillance et dépannage des chargements |
Accorder des privilèges |
Administrateur de requête de catalogue de données de base de données, administrateur de base de données |
L'administrateur de requête de catalogue de données de base de données ou l'administrateur de base de données doit accorder des privilèges READ sur les tables externes générées aux utilisateurs des analystes de données. Cela permet aux analystes de données d'interroger les tables externes générées. |
Requête |
Analyste de 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 via n'importe quel outil ou application prenant en charge Oracle SQL. Les données de S3 sont accessibles à l'aide des privilèges de l'utilisateur de stockage d'objets AWS S3. Plus d'informations : exemple : requête avec AWS Glue Data Catalog |
Interrompre les connexions |
Administrateur Database Data Catalog |
Pour enlever une association Data Catalog existante, l'utilisateur appelle la procédure Cette action est uniquement effectuée 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 AWS Glue Data Catalog et supprime les tables externes synchronisées de l'instance Autonomous Database. Informations supplémentaires : procédure UNSET_DATA_CATALOG_CONN |
Rubrique parent : Interrogation des données externes avec AWS Glue Data Catalog
Exemple : requête avec AWS Glue Data Catalog
Cet exemple vous guide tout au long du processus d'exécution de requêtes sur des ensembles 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 été précédemment analysés et existent dans le catalogue de données. Autonomous Database est ensuite associé à AWS Glue Data Catalog et à Amazon S3. Le catalogue de données est synchronisé avec Autonomous Database pour créer des tables externes sur les ensembles de données stockés dans Amazon S3. Les tables externes sont utilisées pour interroger les jeux de données dans Amazon S3.
- Inspectez les métadonnées dans AWS Glue Data Catalog.
- Lancez la console AWS Glue.
Description de l'illustration glue_console.png - Accédez au catalogue de données, aux bases de données et aux tables pour rechercher des objets existants.
Dans cet exemple, il existe des objets dans Amazon S3 pour lesquels AWS Glue a précédemment analysé et créé des tables, comme indiqué ci-dessous :
Description de l'illustration glue_tables.png
- Lancez la console AWS Glue.
- Associez AWS Glue à Autonomous Database.
- Créez des informations d'identification dans Autonomous Database.
L'appel de procédure suivant inclut l'ID d'accès et la clé secrète permettant à Autonomous Database d'accéder 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.
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 est exécuté.
exec dbms_dcat.set_data_catalog_conn(region => 'us-west-2', catalog_type=>'AWS_GLUE');
- Créez des informations d'identification dans Autonomous Database.
- Synchronisez les métadonnées pour créer des tables externes dans Autonomous Database dérivées des bases de données et des tables AWS Glue.
- Une fois l'association effectuée, utilisez la vue
all_glue_databases
pour 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_tables
pour obtenir la liste des tables disponibles pour la synchronisation.select * from all_glue_tables order by database_name, name;
- Synchronisez Autonomous Database avec deux tables,
store
etitem
, 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; /
- Une fois l'association effectuée, utilisez la vue
- Examinez les nouveaux objets dans Autonomous Database et exécutez une requête sur S3.
- Utilisez SQL Developer pour visualiser les nouveaux objets créés par l'opération de synchronisation précédente.
Le schéma
GLUE$PARQ_TPCDS_ORACLE_PARQ
a é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 requête SQL sur des banques de jeux de données dans Amazon S3.
SELECT * FROM glue$parq_tpcds_oracle_parq.store;
- Utilisez SQL Developer pour visualiser les nouveaux objets créés par l'opération de synchronisation précédente.
Rubrique parent : Interrogation des données externes avec AWS Glue Data Catalog