Abfrage externer Daten mit Data Catalog
Oracle Cloud Infrastructure Data Catalog ist der Metadaten-Management-Service für Oracle Cloud, mit dem Sie Daten finden und Data Governance unterstützen können. Er bietet einen Bestand an 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 Ihren Data Lake manuell zu definieren, verwenden Sie die externen Tabellen, die definiert und automatisch verwaltet werden. Diese Tabellen befinden sich in geschützten Autonomous Database-Schemas, die bei Änderungen in Data Catalog aktualisiert werden.
Weitere Informationen zu Data Catalog finden Sie in der Dokumentation zu Data Catalog.
- Info zum Abfragen mit Data Catalog
Durch Synchronisieren mit Data Catalog-Metadaten erstellt Autonomous Database automatisch externe Tabellen für jede logische Entity, für die ein Harvesting durch Data Catalog ausgeführt wird. Diese externen Tabellen werden in Datenbankschemas definiert, die vollständig vom Synchronisierungsprozess für Metadaten 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 zur Abfrage mit Data Catalog
Die folgenden Konzepte sind für Abfragen mit Data Catalog erforderlich. - Synchronisierungszuordnung
Der Synchronisierungsprozess erstellt und aktualisiert Autonomous Database-Schemas und externe Tabellen basierend auf Datenassets, Ordnern, logischen Entitys, Attributen und relevanten benutzerdefinierten Overrides von Data Catalog. - 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: MovieStream-Szenario
In diesem Szenario erfasst Moviestream Daten in einer Landing Zone im Objektspeicher. Viele dieser Daten, aber nicht unbedingt alle, werden dann an Autonomous Database übergeben. Vor dem Feed in Autonomous Database werden die Daten transformiert, bereinigt und anschließend im Bereich "Gold" gespeichert. - Beispiel: Szenario für partitionierte Daten
Dieses Szenario zeigt, wie externe Tabellen in Autonomous Database erstellt werden, die auf logischen Data Catalog-Entitys basieren, für die Harvesting aus partitionierten Daten im Objektspeicher ausgeführt wurde.
Übergeordnetes Thema: Externe Daten mit Autonomous Database abfragen
Abfragen mit Data Catalog
Durch Synchronisierung mit Data Catalog-Metadaten erstellt Autonomous Database automatisch externe Tabellen für jede logische Entity, für die ein Harvesting durch Data Catalog ausgeführt wird. Diese externen Tabellen werden in Datenbankschemas definiert, die vollständig vom Synchronisierungsprozess für Metadaten 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, sodass Autonomous Database in Bezug auf Änderungen an den zugrundeliegenden Daten immer auf dem neuesten Stand ist. Dadurch werden die Administrationskosten gesenkt, da Hunderte oder Tausende von Tabellen automatisch verwaltet werden. Außerdem können mehrere Autonomous Database-Instanzen denselben Datenkatalog verwenden, um die Verwaltungskosten weiter zu senken und ein gemeinsames Set von Geschäftsdefinitionen bereitzustellen.
Die Datenkatalogordner/Buckets sind Container, die mit Autonomous Database-Schemas synchronisiert werden. Logische Entitys innerhalb dieser Ordner/Buckets sind externen Tabellen von Autonomous Database zugeordnet. Diese Schemas und externen Tabellen werden automatisch generiert und durch den Synchronisierungsprozess verwaltet:
- Ordner/Buckets werden Datenbankschemas zugeordnet, die nur organisatorischen Zwecken dienen.
- Die Organisation soll mit dem Data Lake konsistent sein und Verwechslungen minimieren, wenn auf Daten über verschiedene Pfade zugegriffen wird.
- Data Catalog ist die Source of Truth für die Tabellen in Schemas. Änderungen in Data Catalog 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 die zu synchronisierenden Datenassets und logischen Entitys aus und führt die Synchronisierung aus. Der Synchronisierungsprozess erstellt Schemas und externe Tabellen basierend auf den ausgewählten, durch Harvesting von Data Catalog erstellten Datenassets und logischen Entitys. Sobald die externen Tabellen erstellt wurden, können Datenanalysten mit der Abfrage ihrer Daten beginnen, ohne das Schema für externe Datenquellen manuell ableiten und externe Tabellen erstellen zu müssen.
Das Package
DBMS_DCAT
ist zum Ausführen der Aufgaben verfügbar, die zum Abfragen von Datenassets des Data Catalog-Objektspeichers erforderlich sind. Siehe DBMS_DCAT Package.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Konzepte zur Abfrage mit Data Catalog
Die folgenden Konzepte müssen für Abfragen mit Data Catalog bekannt sein.
- Datenkatalog
-
Data Catalog erfasst Datenassets, die auf die Objektspeicher-Datenquellen verweisen, die Sie mit Autonomous Database abfragen möchten. In Data Catalog können Sie angeben, wie die Daten während des Harvesting-Vorgangs organisiert werden. Dabei werden verschiedene Dateigruppierungsmuster unterstützt. Im Rahmen des Harvesting-Prozesses von Data Catalog können Sie die Buckets und Dateien auswählen, die Sie innerhalb des Assets verwalten möchten. Weitere Informationen finden Sie unter Data Catalog - Überblick.
- Objektspeicher
-
Objektspeicher haben Buckets, die verschiedene Objekte 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 Designmuster für die enthaltenen Objekte. Es gibt viele verschiedene Möglichkeiten, Daten zu strukturieren und diese Muster zu interpretieren.
Beispiel: Ein typisches Designmuster verwendet Ordner der oberen Ebene, die Tabellen darstellen. Dateien innerhalb eines bestimmten Ordners verwenden dasselbe Schema und enthalten Daten für die entsprechende Tabelle. Unterordner werden häufig verwendet, um Tabellenpartitionen darzustellen (z.B. ein Unterordner für jeden Tag). Data Catalog verweist auf jeden Ordner der obersten Ebene als logische Entity, und diese logische Entity wird einer Autonomous Database-externen 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 Datenkatalogassets verfügen, für die ein Harvesting aus dem Objektspeicher ausgeführt wurde.
- Ernte
-
Ein Data Catalog-Prozess, der den Objektspeicher scannt und die logischen Entitys aus Ihren Datasets generiert.
- Datenasset
-
Ein Datenasset in Data Catalog stellt eine Datenquelle dar, einschließlich Datenbanken, Oracle Object Storage, Kafka und mehr. Autonomous Database nutzt Oracle Object Storage-Assets für die Metasynchronisierung.
- Datenentity
-
Eine Datenentity in Data Catalog ist eine Sammlung von Daten, wie eine Datenbanktabelle oder -View oder eine einzelne Datei. Sie enthält normalerweise viele Attribute zur Beschreibung ihrer Daten.
- Logische Entity
-
In Data Lakes bilden zahlreiche Dateien in der Regel eine einzige logische Entity. Beispiel: Sie haben tägliche Clickstream-Dateien, die dasselbe Schema und denselben Dateityp verwenden.
Eine logische Data Catalog-Entity ist eine Gruppe von Object Storage-Dateien, die beim Harvesting durch Anwendung von Dateinamenmustern abgeleitet 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 desselben Schemas und Typs. Sie müssen bei Data Catalog registrieren, wie Ihre Daten organisiert sind. Dateinamensmuster geben an, wie Ihre Daten organisiert sind. In Data Catalog können Sie Dateimuster mit regulären Ausdrücken definieren. Wenn Data Catalog ein Datenasset mit einem zugewiesenen Dateimuster erfasst, werden logische Entitys basierend auf dem Dateimuster erstellt. Wenn Sie diese Muster definieren und Datenassets zuweisen, können mehrere Dateien basierend auf dem Dateimuster als logische Entitys gruppiert werden.
- Synchronisieren (Synchronisieren)
-
Autonomous Database synchronisiert mit Data Catalog, um die Datenbank bei Änderungen an den zugrunde liegenden Daten automatisch 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 Datenassets und logischen Entitys von Data Catalog. Diese Schemas sind geschützt. Das bedeutet, dass ihre Metadaten von Data Catalog verwaltet werden. Wenn Sie die Metadaten ändern möchten, müssen Sie die Änderungen in Data Catalog vornehmen. Die Autonomous Database-Schema geben alle Änderungen nach der nächsten Synchronisierung wieder. 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 basierend auf Datenassets, Ordnern, logischen Entitys, Attributen und relevanten benutzerdefinierten Overrides von Data Catalog.
Data Catalog | Autonomous Database | Mappingbeschreibung |
---|---|---|
Datenasset und Ordner (Object Storage Bucket) |
Schema-Name |
Standardwerte: Standardmäßig hat der generierte Schemaname in Autonomous Database das folgende Format:
Anpassungen: Die Standardwertedata-asset-name und folder-name können angepasst werden, indem benutzerdefinierte Eigenschaften, Geschäftsnamen und Anzeigenamen definiert werden, die diese Standardnamen ersetzen.
Beispiele:
|
Logische Entity | Externe Tabelle |
Logische Entitys werden externen Tabellen zugeordnet. Wenn die logische Entity ein partitioniertes Attribut aufweist, wird sie einer partitionierten externen Tabelle zugeordnet. Der externe Tabellenname wird von dem Anzeigenamen oder Geschäftsnamen der entsprechenden logischen Entity abgeleitet. Wenn Beispiel: Wenn |
Attribute der logischen Entity | Spalten der externen Tabelle |
Spaltennamen: Die externen Tabellenspaltennamen werden von den Attribut- 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 Reihenfolge ihrer Priorität 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: Mit der benutzerdefinierten Eigenschaft Nachkommastellen für Spalte: Die benutzerdefinierte Eigenschaft Für Attribute, die einer logischen Entity entsprechen, die aus Avro-Dateien mit den Datentypen Spaltenskalierung: Die benutzerdefinierte Eigenschaft |
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Typischer Workflow mit Data Catalog
Es gibt einen typischen Workflow mit Aktionen, die von Benutzern ausgeführt werden, die mit Data Catalog abfragen möchten.
Der Database Data Catalog-Abfrageadministrator oder 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 jede Aktion ausführlich beschrieben. Eine Beschreibung der verschiedenen in dieser Tabelle enthaltenen Benutzertypen finden Sie unter Data Catalog-Benutzer und -Rollen.
Das Package
DBMS_DCAT
ist zum Ausführen der Aufgaben verfügbar, die zum Abfragen von Datenassets des Data Catalog-Objektspeichers erforderlich sind. Siehe DBMS_DCAT Package.
Maßnahme | Benutzer | Beschreibung |
---|---|---|
Policys erstellen |
Datenbankdatenkatalogadministrator |
Der Autonomous Database-Resource-Principal oder die Autonomous Database-Benutzerzugangsdaten 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 |
Datenbankdatenkatalogadministrator |
Stellen Sie sicher, dass Datenbankzugangsdaten vorhanden sind, um auf Data Catalog zuzugreifen und den Objektspeicher abzufragen. Der Benutzer ruft Weitere Informationen: Prozedur DBMS_CLOUD CREATE_CREDENTIAL, Resource Principal mit DBMS_CLOUD verwenden. |
Verbindungen zu Data Catalog erstellen |
Datenbankdatenkatalogadministrator |
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 Datenbank-Zugangsdatenobjekt mit ausreichenden Oracle Cloud Infrastructure-(OCI-)Berechtigungen verwenden. Beispiel: Das Resource Principal-Servicetoken für die Autonomous Database-Instanz oder ein OCI-Benutzer mit ausreichenden Berechtigungen kann verwendet werden. Nachdem die Verbindung hergestellt wurde, wird die Data Catalog-Instanz mit dem Namespace
DBMS_DCAT und den benutzerdefinierten Eigenschaften aktualisiert (falls noch nicht vorhanden). Der Benutzer kann eine Abfrage ausführen, um die neue Verbindung einschließlich aller aktuellen Verbindungen anzuzeigen:
Weitere Informationen: SET_DATA_CATALOG_CONN-Prozedur, UNSET_DATA_CATALOG_CONN-Prozedur. |
Ausgewählte Synchronisierung erstellen |
Datenbankdatenkatalogadministrator |
Erstellen Sie einen Sync-Job, indem Sie die zu synchronisierenden Data Catalog-Objekte auswählen. Der Benutzer kann:
Weitere Informationen finden Sie unter: Siehe: CREATE_SYNC_JOB Prozedur, DROP_SYNC_JOB Prozedur, Synchronisierungszuordnung. |
Mit Data Catalog synchronisieren |
Datenbankdatenkatalogadministrator |
Der Benutzer initiiert einen Sync-Vorgang. Die Synchronisierung wird manuell über den Aufruf der Der Synchronisierungsvorgang erstellt, ändert und löscht externe Tabellen und Schemas entsprechend den Data Catalog-Inhalten und der Synchronisierungsauswahl. Die manuelle Konfiguration wird mit den benutzerdefinierten Data Catalog-Eigenschaften angewendet. Weitere Informationen finden Sie unter: RUN_SYNC Prozedur, CREATE_SYNC_JOB Prozedur, Synchronisierungszuordnung. |
Synchronisierung überwachen und Logs anzeigen |
Datenbankdatenkatalogadministrator |
Der Benutzer kann den Synchronisierungsstatus anzeigen, indem Sie die View USER_LOAD_OPERATIONS abfragen. Nach Abschluss des Sync-Prozesses kann der Benutzer ein Log der Sync-Ergebnisse anzeigen, einschließlich Details zur Zuordnung logischer Entitys zu externen Tabellen.
Weitere Informationen: Ladevorgänge überwachen und Fehler beheben |
Berechtigungen erteilen |
Database Data Catalog-Abfrageadministrator, Datenbankadministrator |
Der Datenbank-Data Catalog-Abfrageadministrator oder Datenbankadministrator muss Datenanalysten READ für generierte externe Tabellen erteilen. So können Datenanalysten die generierten externen Tabellen abrufen. |
Externe Tabellen durchsuchen und abfragen |
Datenanalyst |
Datenanalysten können die externen Tabellen mit jedem Tool oder jeder Anwendung abfragen, die Oracle SQL unterstützt. Datenverantwortliche 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 |
Datenbankdatenkatalogadministrator |
Um eine vorhandene Datenkatalogverknü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 Data Catalog-Metadaten 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: UNSET_DATA_CATALOG_CONN-Prozedur |
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen
Beispiel: Szenario MovieStream
In diesem Szenario erfasst Moviestream Daten in einer Landing Zone im Objektspeicher. Viele dieser Daten, aber nicht unbedingt alle, werden dann an Autonomous Database übergeben. Vor dem Feed in 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 geteilt, sodass Autonomous Database-Benutzer diese Datenquellen mit Oracle SQL abfragen können. Diese Daten können in Autonomous Database geladen oder dynamisch mit externen Tabellen 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: Szenario mit partitionierten Daten
Dieses Szenario zeigt, wie externe Tabellen in Autonomous Database erstellt werden, die auf logischen Data Catalog-Entitys basieren, für die Harvesting aus partitionierten Daten im Objektspeicher ausgeführt wurde.
Das folgende Beispiel basiert auf dem Beispiel: MovieStream Scenario 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: MovieStream Szenario.
Weitere Informationen zur Verwendung von Data Catalog finden Sie in der Data Catalog-Dokumentation.
Übergeordnetes Thema: Externe Daten mit Data Catalog abfragen