Externe Daten mit Data Catalog abfragen
Oracle Cloud Infrastructure Data Catalog ist der Metadatenverwaltungsservice für Oracle Cloud, mit dem Sie Daten ermitteln und Data Governance unterstützen können. Es bietet eine Bestandsaufnahme von Assets, ein Geschäftsglossar und einen gemeinsamen Metastore für Data Lakes.
Autonomous Database kann diese Metadaten nutzen, um die Verwaltung für den Zugriff auf den Objektspeicher Ihres Data Lakes erheblich zu vereinfachen. Anstatt externe Tabellen für den Zugriff auf den Data Lake manuell zu definieren, verwenden Sie die externen Tabellen, die automatisch definiert und verwaltet werden. Diese Tabellen werden in geschützten Autonomous Database-Schemas gefunden, die mit Änderungen im Data Catalog auf dem neuesten Stand gehalten werden.
Weitere Informationen zu Data Catalog finden Sie in der Data Catalog-Dokumentation.
- Info zum Abfragen mit Data Catalog
Durch die Synchronisierung mit Data Catalog-Metadaten erstellt Autonomous Database automatisch externe Tabellen für jede logische Entity, die von Data Catalog durch Harvesting erstellt wird. Diese externen Tabellen werden in Datenbankschemas definiert, die vollständig vom Metadatensynchronisierungsprozess verwaltet werden. Benutzer können Daten sofort abfragen, ohne das Schema (Spalten und Datentypen) für externe Datenquellen manuell ableiten und externe Tabellen manuell erstellen zu müssen. - Konzepte für die Abfrage mit Data Catalog
Die folgenden Konzepte sind für die Abfrage mit Data Catalog erforderlich. - Synchronisierungszuordnung
Der Synchronisierungsprozess erstellt und aktualisiert Autonomous Database-Schemas und externe Tabellen basierend auf Data Catalog-Datenassets, Ordnern, logischen Entitys, Attributen und relevanten benutzerdefinierten Überschreibungen. - Typischer Workflow mit Data Catalog
Es gibt einen typischen Workflow von Aktionen, die von Benutzern ausgeführt werden, die mit Data Catalog abfragen möchten. - Beispiel: Szenario MovieStream
In diesem Szenario erfasst Moviestream Daten in einer Landing Zone im Objektspeicher. Ein Großteil dieser Daten, aber nicht unbedingt alle, wird dann für die Bereitstellung einer Autonomous Database verwendet. Vor der Zuführung von Autonomous Database werden die Daten transformiert, bereinigt und anschließend im Bereich "Gold" gespeichert. - Beispiel: Partitioniertes Datenszenario
Dieses Szenario veranschaulicht, wie externe Tabellen in Autonomous Database erstellt werden, die auf logischen Data Catalog-Entitys basieren, die aus partitionierten Daten im Objektspeicher durch Harvesting erstellt wurden.
Übergeordnetes Thema: Externe Daten mit Autonomous Database abfragen
Informationen zum Abfragen mit Data Catalog
Durch die Synchronisierung mit Data Catalog-Metadaten erstellt Autonomous Database automatisch externe Tabellen für jede logische Entity, die von Data Catalog durch Harvesting erstellt wird. Diese externen Tabellen werden in Datenbankschemas definiert, die vollständig vom Metadatensynchronisierungsprozess verwaltet werden. Benutzer können Daten sofort abfragen, ohne das Schema (Spalten und Datentypen) für externe Datenquellen manuell ableiten und externe Tabellen manuell erstellen zu müssen.
Die Synchronisierung ist dynamisch und hält die Autonomous Database in Bezug auf Änderungen an den zugrunde liegenden Daten auf dem neuesten Stand. Dadurch werden die Administrationskosten gesenkt, da Hunderte bis Tausende von Tabellen automatisch verwaltet werden. Darüber hinaus können mehrere Autonomous Database-Instanzen denselben Datenkatalog verwenden, wodurch die Verwaltungskosten weiter gesenkt und ein gemeinsames Set von Geschäftsdefinitionen bereitgestellt werden.
Die Data Catalog-Ordner/-Buckets sind Container, die mit Autonomous Database-Schemas synchronisiert werden. Logische Entitys innerhalb dieser Ordner/Buckets werden externen Autonomous Database-Tabellen zugeordnet. Diese Schemas und externen Tabellen werden automatisch über den Synchronisierungsprozess generiert und verwaltet:
- Ordner/Buckets werden Datenbankschemas zugeordnet, die nur zu organisatorischen Zwecken dienen.
- Die Organisation soll mit dem Data Lake konsistent sein und Verwirrung beim Zugriff auf Daten über verschiedene Pfade minimieren.
- Data Catalog ist die Quelle der Wahrheit für die Tabellen, die in Schemas enthalten sind. Im Data Catalog vorgenommene Änderungen aktualisieren die Tabellen des Schemas bei einer nachfolgenden Synchronisierung.
Um diese Funktion zu verwenden, initiiert ein Database Data Catalog-Administrator eine Verbindung zu einer Data Catalog-Instanz, wählt aus, welche Datenassets und logischen Entitys synchronisiert werden sollen, und führt die Synchronisierung aus. Der Synchronisierungsprozess erstellt Schemas und externe Tabellen basierend auf den ausgewählten Datenassets und logischen Entitys für das Harvesting in Data Catalog. Sobald die externen Tabellen erstellt sind, können Data Analysts mit der Abfrage ihrer Daten beginnen, ohne das Schema für externe Datenquellen manuell ableiten und externe Tabellen erstellen zu müssen.
Das
DBMS_DCAT
-Package ist für die Ausführung der Aufgaben verfügbar, die zum Abfragen von Datenassets für den Data Catalog-Objektspeicher erforderlich sind. Siehe DBMS_DCAT Package.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Konzepte für die Abfrage mit Data Catalog
Die folgenden Konzepte sind für Abfragen mit Data Catalog erforderlich.
- Data Catalog
-
Data Catalog sammelt Datenassets, die auf die Objektspeicherdatenquellen verweisen, die Sie mit Autonomous Database abfragen möchten. In Data Catalog können Sie angeben, wie die Daten beim Harvesting organisiert werden, wobei verschiedene Dateiorganisationsmuster unterstützt werden. Im Rahmen des Data Catalog-Harvesting-Prozesses können Sie die Buckets und Dateien auswählen, die Sie im Asset verwalten möchten. Weitere Informationen finden Sie unter Data Catalog - Überblick.
- Objektspeicher
-
Objektspeicher haben Buckets, die eine Vielzahl von Objekten enthalten. Einige gängige Objekttypen in diesen Buckets sind: CSV-, Parkett-, Avro-, Json- und ORC-Dateien. Buckets haben in der Regel eine Struktur oder ein Entwurfsmuster für die darin enthaltenen Objekte. Es gibt viele verschiedene Möglichkeiten, Daten zu strukturieren, und viele verschiedene Möglichkeiten, diese Muster zu interpretieren.
Beispiel: Ein typisches Entwurfsmuster verwendet Ordner der obersten Ebene, die Tabellen darstellen. Dateien in einem bestimmten Ordner verwenden dasselbe Schema und enthalten Daten für diese Tabelle. Unterordner werden häufig zur Darstellung von Tabellenpartitionen verwendet (z.B. ein Unterordner für jeden Tag). Data Catalog bezieht sich auf jeden Ordner der obersten Ebene als logische Entity, und diese logische Entity wird einer externen Autonomous Database-Tabelle zugeordnet.
- Verbindung
-
Eine Verbindung ist eine Autonomous Database-Verbindung zu einer Data Catalog-Instanz. Für jede Autonomous Database-Instanz können Verbindungen zu mehreren Data Catalog-Instanzen vorhanden sein. Die Autonomous Database-Zugangsdaten müssen über Berechtigungen für den Zugriff auf Data Catalog-Assets verfügen, für die ein Harvesting aus dem Objektspeicher ausgeführt wurde.
- Harvesting
-
Ein Data Catalog-Prozess, der den Objektspeicher scannt und die logischen Entitys aus den Datasets generiert.
- Datenasset
-
Ein Datenasset in Data Catalog stellt eine Datenquelle dar, die Datenbanken, Oracle Object Storage, Kafka und mehr umfasst. Autonomous Database nutzt Oracle Object Storage-Assets für die Metadatensynchronisierung.
- Datenentity
-
Eine Datenentity in Data Catalog ist eine Sammlung von Daten, wie eine Datenbanktabellen oder -View oder eine einzelne Datei. Im Allgemeinen enthält sie viele Attribute, die ihre Daten beschreiben.
- Logische Entity
-
In Data Lakes umfassen zahlreiche Dateien in der Regel eine einzelne logische Entity. Beispiel: Sie haben tägliche Clickstream-Dateien, und diese Dateien verwenden dasselbe Schema und denselben Dateityp.
Eine logische Data Catalog-Entity ist eine Gruppe von Object Storage-Dateien, die beim Harvesting abgeleitet werden, indem Dateinamensmuster angewendet werden, die erstellt und einem Datenasset zugewiesen wurden.
- Datenobjekt
-
Ein Datenobjekt in Data Catalog bezieht sich auf Datenassets und Datenentitys.
- Dateinamensmuster
-
In einem Data Lake können Daten auf unterschiedliche Weise organisiert werden. Normalerweise erfassen Ordner Dateien mit demselben Schema und Typ. Sie müssen sich beim Data Catalog registrieren, wie Ihre Daten organisiert sind. Dateinamensmuster werden verwendet, um zu identifizieren, wie Ihre Daten organisiert sind. In Data Catalog können Sie Dateinamensmuster mit regulären Ausdrücken definieren. Wenn Data Catalog ein Datenasset mit einem zugewiesenen Dateinamensmuster erstellt, werden logische Entitys basierend auf dem Dateinamensmuster erstellt. Durch das Definieren und Zuweisen dieser Muster zu Datenassets können mehrere Dateien als logische Entitys basierend auf dem Dateinamensmuster gruppiert werden.
- Synchronisieren (synchronisieren)
-
Autonomous Database führt Synchronisierungen mit Data Catalog durch, um die Datenbank automatisch hinsichtlich Änderungen an den zugrunde liegenden Daten auf dem neuesten Stand zu halten. Die Synchronisierung kann manuell oder nach einem Zeitplan ausgeführt werden.
Der Synchronisierungsprozess erstellt Schemas und externe Tabellen basierend auf den Data Catalog-Datenassets und logischen Entitys. Diese Schemas sind geschützt, d.h. ihre Metadaten werden von Data Catalog verwaltet. Wenn Sie die Metadaten ändern möchten, müssen Sie die Änderungen in Data Catalog vornehmen. Die Autonomous Database-Schemas spiegeln alle Änderungen nach der nächsten Synchronisierung wider. Weitere Informationen finden Sie unter Synchronisierungszuordnung.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Synchronisierungszuordnung
Der Synchronisierungsprozess erstellt und aktualisiert Autonomous Database-Schemas und externe Tabellen auf Basis von Data Catalog-Datenassets, Ordnern, logischen Entitys, Attributen und relevanten benutzerdefinierten Overrides.
Datenkatalog | Autonomous Database | Mappingbeschreibung |
---|---|---|
Datenasset und Ordner (Objektspeicher-Bucket) |
Schemaname |
Standardwerte: Der generierte Schemaname in Autonomous Database hat standardmäßig das folgende Format:
Anpassungen: Die Standardnamendata-asset-name und folder-name können angepasst werden, indem benutzerdefinierte Eigenschaften, Geschäftsnamen und Anzeigenamen definiert werden, um diese Standardnamen außer Kraft zu setzen.
Beispiele:
|
Logische Entity | Externe Tabelle |
Logische Entitys werden externen Tabellen zugeordnet. Wenn die logische Entity über ein partitioniertes Attribut verfügt, wird sie einer partitionierten externen Tabelle zugeordnet. Der Name der externen Tabelle wird vom Anzeigenamen oder Geschäftsnamen der entsprechenden logischen Entity abgeleitet. Wenn Beispiel: Wenn |
Attribute der logischen Entity | Spalten für externe Tabelle |
Spaltennamen: Die Spaltennamen der externen Tabelle werden von den Attributanzeigenamen oder Geschäftsnamen der entsprechenden logischen Entity abgeleitet. Bei logischen Entitys, die aus Parquet-, Avro- und ORC-Dateien abgeleitet werden, ist der Spaltenname immer der Anzeigename des Attributs, da er den aus den Quelldateien abgeleiteten Feldnamen darstellt. Bei Attributen, die einer logischen Entity entsprechen, die aus CSV-Dateien abgeleitet wird, werden die folgenden Attributfelder in der Prioritätsreihenfolge zum Generieren des Spaltennamens verwendet:
Spaltentyp: Die benutzerdefinierte Eigenschaft Für Attribute, die einer logischen Entity entsprechen, die aus Avro-Dateien mit den Datentypen Spaltenlänge: Die benutzerdefinierte Eigenschaft Spaltengenauigkeit: Die benutzerdefinierte Eigenschaft Für Attribute, die einer logischen Entity entsprechen, die aus Avro-Dateien mit den Datentypen Spaltenmaßstab: Die benutzerdefinierte Eigenschaft |
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Typischer Workflow mit Data Catalog
Es gibt einen typischen Workflow von Aktionen, die von Benutzern ausgeführt werden, die mit Data Catalog abfragen möchten.
Der Administrator der Datenbankdatenkatalogabfrage oder der Datenbankadministrator erteilt READ-Zugriff auf die generierten externen Tabellen, sodass Datenanalysten und andere Datenbankbenutzer die externen Tabellen durchsuchen und abfragen können.
In der folgenden Tabelle werden die einzelnen Aktionen ausführlich beschrieben. Eine Beschreibung der verschiedenen Benutzertypen in dieser Tabelle finden Sie unter Data Catalog-Benutzer und -Rollen.
Das
DBMS_DCAT
-Package ist für die Ausführung der Aufgaben verfügbar, die zum Abfragen von Datenassets für den Data Catalog-Objektspeicher erforderlich sind. Siehe DBMS_DCAT Package.
Aktion | Wer ist der Benutzer | Beschreibung |
---|---|---|
Policys erstellen |
Datenbank-Data Catalog-Administrator |
Der Autonomous Database-Resource Principal oder die Zugangsdaten des Autonomous Database-Benutzers müssen über die entsprechenden Berechtigungen zum Verwalten von Data Catalog und zum Lesen aus dem Objektspeicher verfügen. Weitere Informationen: Erforderliche Zugangsdaten und IAM-Policys. |
Zugangsdaten erstellen |
Datenbank-Data Catalog-Administrator |
Stellen Sie sicher, dass Datenbankzugangsdaten für den Zugriff auf Data Catalog und für die Abfrage des Objektspeichers vorhanden sind. Der Benutzer ruft Weitere Informationen: Prozedur DBMS_CLOUD CREATE_CREDENTIAL, Resource Principal mit DBMS_CLOUD verwenden. |
Verbindungen zu Data Catalog erstellen |
Datenbank-Data Catalog-Administrator |
Um eine Verbindung zwischen einer Autonomous Database-Instanz und einer Data Catalog-Instanz zu initiieren, ruft der Benutzer Die Verbindung zur Data Catalog-Instanz muss ein Datenbankzugangsdatenobjekt mit ausreichenden Oracle Cloud Infrastructure-(OCI-)Berechtigungen verwenden. Beispiel: Sie können das Resource Principal-Servicetoken für die Autonomous Database-Instanz oder einen OCI-Benutzer mit ausreichenden Berechtigungen verwenden. Nachdem die Verbindung hergestellt wurde, wird die Data Catalog-Instanz mit dem Namespace
DBMS_DCAT und benutzerdefinierten Eigenschaften aktualisiert (sofern diese noch nicht vorhanden sind). Der Benutzer kann eine Abfrage ausführen, um die neue Verbindung einschließlich aller aktuellen Verbindungen anzuzeigen:
Weitere Informationen: Prozedur SET_DATA_CATALOG_CONN, Prozedur UNSET_DATA_CATALOG_CONN. |
Selektive Synchronisierung erstellen |
Datenbank-Data Catalog-Administrator |
Erstellen Sie einen Synchronisierungsjob, indem Sie die zu synchronisierenden Data Catalog-Objekte auswählen. Der Benutzer kann:
Weitere Informationen: Siehe Prozedur CREATE_SYNC_JOB, Prozedur DROP_SYNC_JOB, Synchronisierungszuordnung |
Mit Datenkatalog synchronisieren |
Datenbank-Data Catalog-Administrator |
Der Benutzer initiiert einen Synchronisierungsvorgang. Die Synchronisierung wird manuell über den Prozeduraufruf Der Synchronisierungsvorgang erstellt, ändert und löscht externe Tabellen und Schemas entsprechend dem Data Catalog-Inhalt und der Synchronisierungsauswahl. Die manuelle Konfiguration wird mit benutzerdefinierten Data Catalog-Eigenschaften angewendet. Weitere Informationen: Siehe Prozedur RUN_SYNC, Prozedur CREATE_SYNC_JOB, Synchronisierungszuordnung |
Synchronisierungs- und Anzeigeprotokolle überwachen |
Datenbank-Data Catalog-Administrator |
Der Benutzer kann den Synchronisierungsstatus anzeigen, indem er die Ansicht USER_LOAD_OPERATIONS abfragt. Nachdem der Synchronisierungsprozess abgeschlossen ist, kann der Benutzer ein Log der Synchronisierungsergebnisse anzeigen, einschließlich Details zu den Zuordnungen logischer Entitys zu externen Tabellen.
Weitere Informationen: Ladevorgänge überwachen und Fehler beheben |
Berechtigungen erteilen |
Database Data Catalog-Abfrageadministrator, Datenbankadministrator |
Der Data Catalog-Abfrageadministrator oder Datenbankadministrator der Datenbank muss Benutzern von Datenanalysten READ für generierte externe Tabellen erteilen. Dadurch können die Datenanalysten die generierten externen Tabellen abfragen. |
Externe Tabellen durchsuchen und abfragen |
Datenanalyst |
Datenanalysten können die externen Tabellen über jedes Tool oder jede Anwendung abfragen, die Oracle SQL unterstützt. Datenanalysten können die synchronisierten Schemas und Tabellen in den DCAT$*-Schemas prüfen und die Tabellen mit Oracle SQL abfragen. Weitere Informationen: Synchronisierungszuordnung |
Verbindungen zu Data Catalog beenden |
Datenbank-Data Catalog-Administrator |
Um eine vorhandene Data Catalog-Verknüpfung zu entfernen, ruft der Benutzer die Prozedur UNSET_DATA_CATALOG_CONN auf. Diese Aktion wird nur ausgeführt, wenn Sie die Verwendung von Data Catalog und den externen Tabellen, die aus dem Katalog abgeleitet werden, nicht mehr planen. Mit dieser Aktion werden Datenkatalogmetadaten gelöscht, und synchronisierte externe Tabellen werden aus der Autonomous Database-Instanz gelöscht. Die benutzerdefinierten Eigenschaften in Data Catalog- und OCI-Policys sind nicht betroffen. Weitere Informationen: Prozedur UNSET_DATA_CATALOG_CONN |
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Beispiel: Szenario MovieStream
In diesem Szenario erfasst Moviestream Daten in einer Landing Zone im Objektspeicher. Ein Großteil dieser Daten, aber nicht unbedingt alle, wird dann für die Bereitstellung einer Autonomous Database verwendet. Vor der Zuführung von Autonomous Database werden die Daten transformiert, bereinigt und anschließend im Bereich "Gold" gespeichert.
Data Catalog wird für das Harvesting dieser Quellen verwendet und stellt dann einen Geschäftskontext für die Daten bereit. Data Catalog-Metadaten werden mit Autonomous Database gemeinsam verwendet, sodass Autonomous Database-Benutzer diese Datenquellen mit Oracle SQL abfragen können. Diese Daten können in Autonomous Database geladen oder mithilfe externer Tabellen dynamisch abgefragt werden.
Weitere Informationen zur Verwendung von Data Catalog finden Sie in der Data Catalog-Dokumentation.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Beispiel: Partitioniertes Datenszenario
Dieses Szenario veranschaulicht, wie externe Tabellen in Autonomous Database erstellt werden, die auf logischen Data Catalog-Entitys basieren, die aus partitionierten Daten im Objektspeicher gewonnen wurden.
Das folgende Beispiel basiert auf Beispiel: Szenario MovieStream und wurde angepasst, um die Integration mit partitionierten Daten zu demonstrieren. Data Catalog wird für das Harvesting dieser Quellen verwendet und stellt dann einen Geschäftskontext für die Daten bereit. Weitere Einzelheiten zu diesem Beispiel finden Sie unter Beispiel: Szenario MovieStream.
Weitere Informationen zur Verwendung von Data Catalog finden Sie in der Data Catalog-Dokumentation.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen