Interrogation de données externes avec Data Catalog
Oracle Cloud Infrastructure Data Catalog est le service de gestion des métadonnées d'Oracle Cloud qui vous aide à repérer les données et à prendre en charge la gouvernance des données. Il fournit un inventaire des ressources, un glossaire métier et un metastore commun pour les lacs de données.
Autonomous Database peut exploiter ces métadonnées pour simplifier considérablement la gestion de l'accès à la banque d'objets de votre lac de données. Au lieu de définir manuellement des tables externes pour accéder à votre lac de données, utilisez les tables externes qui sont définies et gérées automatiquement. Ces tables se trouvent dans les schémas protégés par Autonomous Database qui sont mis à jour avec les modifications apportées à Data Catalog.
Pour plus d'informations sur Data Catalog, reportez-vous à la documentation Data Catalog.
- A propos de l'interrogation avec Data Catalog
En effectuant une synchronisation avec les métadonnées Data Catalog, Autonomous Database crée automatiquement des tables externes pour chaque entité logique collectée par Data Catalog. Ces tables externes sont définies dans des schémas de base de données entièrement gérés par le processus de synchronisation des métadonnées. Les utilisateurs peuvent immédiatement interroger les données sans avoir à dériver manuellement le schéma (colonnes et types de données) pour les sources de données externes et à créer manuellement des tables externes. - Concepts liés à l'interrogation avec Data Catalog
Une compréhension des concepts suivants est nécessaire pour l'interrogation avec Data Catalog. - Mise en correspondance de la synchronisation
Le processus de synchronisation crée et met à jour les schémas et les tables externes Autonomous Database en fonction des ressources de données Data Catalog, des dossiers, des entités logiques, des attributs et des remplacements personnalisés pertinents. - Workflow standard avec Data Catalog
Il existe un workflow standard d'actions effectuées par les utilisateurs qui souhaitent effectuer des requêtes avec Data Catalog. - Exemple : scénario MovieStream
Dans ce scénario, Moviestream capture des données dans une zone de renvoi sur le stockage d'objets. Une grande partie de ces données, mais pas nécessairement toutes, est ensuite utilisée pour alimenter une instance Autonomous Database. Avant d'alimenter Autonomous Database, les données sont transformées, nettoyées et ensuite stockées dans la zone "or". - Exemple : scénario de données partitionnées
Ce scénario montre comment créer des tables externes dans Autonomous Database basées sur des entités logiques Data Catalog collectées à partir de données partitionnées dans la banque d'objets.
Rubrique parent : Interrogation des données externes avec Autonomous Database
A propos de l'interrogation avec Data Catalog
En effectuant une synchronisation avec les métadonnées Data Catalog, Autonomous Database crée automatiquement des tables externes pour chaque entité logique collectée par Data Catalog. Ces tables externes sont définies dans des schémas de base de données entièrement gérés par le processus de synchronisation des métadonnées. Les utilisateurs peuvent immédiatement interroger les données sans avoir à dériver manuellement le schéma (colonnes et types de données) pour les sources de données externes et à créer manuellement des tables externes.
La synchronisation est dynamique, ce qui permet de tenir à jour Autonomous Database 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. Elle permet également à plusieurs instances Autonomous Database de partager le même catalogue de données, ce qui permet de réduire les coûts de gestion et de fournir un ensemble commun de définitions métier.
Les dossiers/buckets Data Catalog sont des conteneurs qui sont synchronisés avec les schémas Autonomous Database. Les entités logiques au sein de ces dossiers/buckets sont mappées avec des tables externes Autonomous Database. Les schémas et tables externes suivants sont générés et gérés automatiquement via le processus de synchronisation :
- Les dossiers/buckets sont mis en correspondance avec des schémas de base de données à des fins d'organisation uniquement.
- L'entreprise doit être cohérente avec le lac de données et minimiser la confusion lors de l'accès aux données via différents chemins.
- Data Catalog est la source de vérité pour les tables contenues dans les schémas. Les modifications apportées dans le catalogue de données mettent à jour les tables du schéma lors d'une synchronisation ultérieure.
Pour utiliser cette fonctionnalité, un administrateur de catalogue de données de base de données lance une connexion à une instance Data Catalog, sélectionne les ressources de données et les entités logiques à synchroniser et exécute la synchronisation. Le processus de synchronisation crée des schémas et des tables externes en fonction des ressources de données et des entités logiques collectées par Data Catalog sélectionnées. Dès que les tables externes sont créées, les analystes de données peuvent commencer à interroger leurs données sans avoir à dériver manuellement le schéma pour les sources de données externes et à créer des tables externes.
Le package
DBMS_DCAT
est disponible pour effectuer les tâches requises pour interroger les ressources de données de banque d'objets Data Catalog. Voir Package DBMS_DCAT.
Rubrique parent : Interrogation de données externes avec Data Catalog
Concepts liés à l'interrogation avec Data Catalog
Vous devez comprendre les concepts suivants pour effectuer des requêtes avec Data Catalog.
- Catalogue de données
-
Data Catalog collecte les ressources de données qui pointent vers les sources de données de banque d'objets à interroger avec Autonomous Database. Dans Data Catalog, vous pouvez indiquer comment les données sont organisées lors de la collecte, en prenant en charge différents modèles d'organisation des fichiers. Dans le cadre du processus de collecte Data Catalog, vous pouvez sélectionner les buckets et les fichiers à gérer au sein de la ressource. Pour plus d'informations, reportez-vous à Présentation de Data Catalog.
- Banques d'objets
-
Les banques d'objets ont des buckets contenant une variété d'objets. Certains types d'objet courants trouvés dans ces buckets incluent les fichiers CSV, parquet, avro, json et ORC. Les buckets ont généralement une structure ou un modèle de conception pour les objets qu'ils contiennent. Il existe de nombreuses façons de structurer les données et de nombreuses façons d'interpréter ces modèles.
Par exemple, un modèle de conception standard utilise des dossiers de niveau supérieur qui représentent des tables. Les fichiers d'un dossier donné partagent le même schéma et contiennent des données pour cette table. Les sous-dossiers sont souvent utilisés pour représenter les partitions de table (par exemple, un sous-dossier pour chaque jour). Data Catalog fait référence à chaque dossier de niveau supérieur en tant qu'entité logique et cette entité logique est mise en correspondance avec une table externe Autonomous Database.
- Connexion
-
Une connexion est une connexion Autonomous Database à une instance Data Catalog. Pour chaque instance Autonomous Database, il peut y avoir des connexions à plusieurs instances Data Catalog. Les informations d'identification Autonomous Database doivent disposer des droits d'accès aux ressources Data Catalog collectées à partir du stockage d'objets.
- Collecte
-
Processus Data Catalog qui analyse le stockage d'objets et génère les entités logiques à partir de vos ensembles de données.
- Ressources de données
-
Une ressource de données dans Data Catalog représente une source de données, qui inclut des bases de données, Oracle Object Storage, Kafka, etc. Autonomous Database tire parti des ressources Oracle Object Storage pour la synchronisation des métadonnées.
- Entité de données
-
Dans Data Catalog, une entité est un ensemble de données tel qu'une vue ou une table de base de données, ou un fichier unique, et possède généralement de nombreux attributs qui décrivent ses données.
- Entité logique
-
Dans les lacs de données, de nombreux fichiers comprennent généralement une seule entité logique. Par exemple, vous pouvez avoir des fichiers de parcours de navigation quotidiens, et ces fichiers partagent le même schéma et le même type de fichier.
Une entité logique Data Catalog est un groupe de fichiers Object Storage dérivés lors de la collecte en appliquant des modèles de nom de fichier créés et affectés à une ressource de données.
- Objet de données
-
Un objet de données Data Catalog fait référence aux ressources de données et aux entités de données.
- Modèle de nom de fichier
-
Dans un lac de données, les données peuvent être organisées de différentes manières. En général, les dossiers capturent des fichiers du même schéma et du même type. Vous devez vous inscrire à Data Catalog pour savoir comment vos données sont organisées. Les modèles de nom de fichier permettent d'identifier la façon dont vos données sont organisées. Dans Data Catalog, vous pouvez définir des modèles de nom de fichier à l'aide d'expressions régulières. Lorsque Data Catalog collecte une ressource de données avec un modèle de nom de fichier affecté, des entités logiques sont créées en fonction du modèle de nom de fichier. En définissant et en affectant ces modèles aux ressources de données, plusieurs fichiers peuvent être regroupés en tant qu'entités logiques en fonction du modèle de nom de fichier.
- Synchroniser (synchroniser)
-
Autonomous Database effectue des synchronisations avec Data Catalog pour maintenir automatiquement sa base de données à jour en ce qui concerne les modifications apportées aux données sous-jacentes. La synchronisation peut être effectuée manuellement ou selon une planification.
Le processus de synchronisation crée des schémas et des tables externes en fonction des ressources de données et des entités logiques Data Catalog. Ces schémas sont protégés, ce qui signifie que leurs métadonnées sont gérées par Data Catalog. Si vous souhaitez modifier les métadonnées, vous devez effectuer les modifications dans Data Catalog. Les schémas Autonomous Database refléteront toutes les modifications après l'exécution de la prochaine synchronisation. Pour plus d'informations, reportez-vous à Mise en correspondance de la synchronisation.
Rubrique parent : Interrogation de données externes avec Data Catalog
Mappage de synchronisation
Le processus de synchronisation crée et met à jour les schémas et les tables externes Autonomous Database en fonction des ressources de données Data Catalog, des dossiers, des entités logiques, des attributs et des remplacements personnalisés pertinents.
Catalogue de données | Autonomous Database | Description du mappage |
---|---|---|
Ressource de données et dossier (bucket de stockage d'objets) |
Nom de schéma |
Valeurs par défaut : Par défaut, le nom de schéma généré dans Autonomous Database a le format suivant :
Personnalisations : Les valeurs par défautdata-asset-name et folder-name peuvent être personnalisées en définissant des propriétés personnalisées, des noms commerciaux et des noms d'affichage pour remplacer ces noms par défaut.
Exemples :
|
Entité logique | Table externe |
Les entités logiques sont mises en correspondance avec des tables externes. Si l'entité logique a un attribut partitionné, elle est mise en correspondance avec une table externe partitionnée. Le nom de la table externe est dérivé du nom d'affichage ou du nom fonctionnel de l'entité logique correspondante. Si Par exemple, si |
Attributs d'entité logique | Colonnes de la table externe |
Noms de colonne : les noms de colonne de table externe sont dérivés des noms d'affichage d'attribut ou des noms fonctionnels de l'entité logique correspondante. Pour les entités logiques dérivées des fichiers Parquet, Avro et ORC, le nom de colonne est toujours le nom d'affichage de l'attribut car il représente le nom de champ dérivé des fichiers source. Pour les attributs correspondant à une entité logique dérivée de fichiers CSV, les champs d'attribut suivants sont utilisés par ordre de priorité pour générer le nom de colonne :
Type de colonne : la propriété personnalisée Pour les attributs correspondant à une entité logique dérivée de fichiers Avro avec les types de données Longueur de colonne : la propriété personnalisée Précision de colonne : la propriété personnalisée Pour les attributs correspondant à une entité logique dérivée de fichiers Avro avec les types de données Echelle de colonne : la propriété personnalisée |
Rubrique parent : Interrogation de données externes avec Data Catalog
Workflow standard avec Data Catalog
Il existe un workflow standard d'actions effectuées par les utilisateurs qui souhaitent effectuer une requête avec Data Catalog.
L'administrateur des requêtes de catalogue de données ou l'administrateur de base de données 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 les tables externes.
Le tableau ci-dessous décrit chaque action en détail. Pour obtenir une description des différents types d'utilisateur inclus dans ce tableau, reportez-vous à Utilisateurs et rôles Data Catalog.
Le package
DBMS_DCAT
est disponible pour effectuer les tâches requises pour interroger les ressources de données de banque d'objets 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 ou de principal de ressource Autonomous Database doivent disposer des droits d'accès appropriés pour gérer Data Catalog et lire à partir du stockage d'objets. 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 à Data Catalog et interroger la banque d'objets. L'utilisateur appelle Plus d'informations : procédure DBMS_CLOUD CREATE_CREDENTIAL utilisation du principal de ressource avec DBMS_CLOUD. |
Créer des connexions à Data Catalog |
Administrateur Database Data Catalog |
Pour lancer une connexion entre une instance Autonomous Database et une instance Data Catalog, l'utilisateur appelle La connexion à l'instance Data Catalog doit utiliser un objet d'informations d'identification de base de données disposant de privilèges Oracle Cloud Infrastructure (OCI) suffisants. Par exemple, le jeton de service de principal de ressource pour l'instance Autonomous Database ou un utilisateur OCI disposant de privilèges suffisants peut être utilisé. Une fois la connexion établie, l'instance Data Catalog est mise à jour avec l'espace de noms
DBMS_DCAT et les propriétés personnalisées (si elles n'existent pas déjà). L'utilisateur peut exécuter une requête pour afficher la nouvelle connexion, y compris toutes les connexions en cours :
Informations supplémentaires : procédure SET_DATA_CATALOG_CONN, procédure UNSET_DATA_CATALOG_CONN. |
Créer une synchronisation sélective |
Administrateur Database Data Catalog |
Créez un travail de synchronisation en sélectionnant les objets Data Catalog à synchroniser. L'utilisateur peut :
Plus d'informations : reportez-vous à Procédure CREATE_SYNC_JOB, Procédure DROP_SYNC_JOB, Mappage de synchronisation. |
Synchroniser avec Data Catalog |
Administrateur Database Data Catalog |
L'utilisateur lance une opération de synchronisation. La synchronisation est lancée manuellement via l'appel de procédure L'opération de synchronisation crée, modifie et supprime les tables et schémas externes en fonction du contenu du catalogue de données et des sélections de synchronisation. La configuration manuelle est appliquée à l'aide des propriétés personnalisées du catalogue de données. Plus d'informations : reportez-vous à Procédure RUN_SYNC, Procédure CREATE_SYNC_JOB, Mappage de synchronisation. |
Surveiller les journaux de synchronisation et d'affichage |
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 mappings d'entités logiques 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 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. |
Parcourir et interroger des tables externes |
Analyste de données |
Les analystes de données peuvent interroger les tables externes via n'importe quel outil ou application prenant en charge Oracle SQL. Les analystes de données peuvent examiner les schémas et les tables synchronisés dans les schémas DCAT$* et interroger les tables à l'aide d'Oracle SQL. Plus d'informations : Mappage de synchronisation |
Mettre fin aux connexions à Data Catalog |
Administrateur Database Data Catalog |
Pour enlever une association Data Catalog existante, l'utilisateur appelle la procédure UNSET_DATA_CATALOG_CONN. Cette action n'est effectuée que si vous ne prévoyez plus d'utiliser le catalogue de données et les tables externes dérivées du catalogue. Cette action supprime les métadonnées Data Catalog et supprime les tables externes synchronisées de l'instance Autonomous Database. Les propriétés personnalisées des stratégies Data Catalog et OCI ne sont pas affectées. Informations supplémentaires : procédure UNSET_DATA_CATALOG_CONN |
Rubrique parent : Interrogation de données externes avec Data Catalog
Exemple : scénario MovieStream
Dans ce scénario, Moviestream capture des données dans une zone de renvoi sur le stockage d'objets. Une grande partie de ces données, mais pas nécessairement toutes, est ensuite utilisée pour alimenter une instance Autonomous Database. Avant d'alimenter Autonomous Database, les données sont transformées, nettoyées et ensuite stockées dans la zone "or".
Data Catalog est utilisé pour collecter ces sources, puis fournir un contexte métier aux données. Les métadonnées du catalogue de données sont partagées avec Autonomous Database, ce qui permet aux utilisateurs Autonomous Database d'interroger ces sources de données à l'aide d'Oracle SQL. Ces données peuvent être chargées dans Autonomous Database ou interrogées dynamiquement à l'aide de tables externes.
Pour plus d'informations sur l'utilisation de Data Catalog, reportez-vous à la documentation Data Catalog.
Rubrique parent : Interrogation de données externes avec Data Catalog
Exemple : Scénario de données partitionnées
Ce scénario montre comment créer des tables externes dans Autonomous Database basées sur des entités logiques Data Catalog collectées à partir de données partitionnées dans la banque d'objets.
L'exemple suivant est basé sur l'exemple : MovieStream Scenario et a été adapté pour illustrer l'intégration aux données partitionnées. Data Catalog est utilisé pour collecter ces sources, puis fournir un contexte métier aux données. Pour plus d'informations sur cet exemple, reportez-vous à Exemple : MovieStream Scenario.
Pour plus d'informations sur l'utilisation de Data Catalog, reportez-vous à la documentation Data Catalog.
Rubrique parent : Interrogation de données externes avec Data Catalog