Metadaten & Katalog
Objektkontext
Datenbankobjekte eindeutig im Katalog zuordnen.
Service → Database → Schema → Table → Column
BI-Objekte haben andere Typen. Punktzeichen und Quoting in FQNs beachten.
Metadaten & Katalog
Pilot vor Vollimport
Einen überschaubaren Import abnehmen.
Ein bekanntes Objekt enthalten
Ein bewusst ausgeschlossenes Objekt nicht importiert
Soll-ID / Typ / Link mit beobachtetem Lauf abgleichen
PROD/BETA-Status und konkrete Metadatenunterstützung je Connector/Version prüfen.
Metadaten & Katalog
Metadaten und Datenwerte trennen
Schutzbedarf und Quellrechte passend zum Auftrag klären.
Metadateninventar ≠ Profiling ≠ Beispieldaten
Profiling und Sample-Daten nicht pauschal mit dem Metadatenauftrag freigeben.
Metadaten & Katalog
Katalogrechte testen
Mit tatsächlichen Rollen erlaubte und verbotene Aktionen prüfen.
Identität + Objekt + Aktion
Erlaubter Fall + verbotener Fall + Nachweis
Katalog-Policies ersetzen keine Rechte in Datenbank, Qlik oder Tableau.
Metadaten & Katalog
Projekt-Nachweise verbinden
Unsere Projektwerkstatt mit stabilen IDs ausfüllen.
REQ-001 → CON-001 → ASSET-001 / TEST-001 → GAP-001
Dies sind Projektkonventionen dieser Website, keine vorgeschriebenen OpenMetadata-Objekttypen.
Metadaten & Katalog
Fehler systematisch eingrenzen
Hypothesen nicht mit einer bestätigten Ursache verwechseln.
Sollobjekt → Quellsichtbarkeit → Filter → Runner-Protokoll → Katalog → Nachtest
Ein Running-Status oder fehlender Suchtreffer allein beweist nicht den tatsächlichen Zustand.
Metadaten & Katalog
SDK 2.0 verbinden
Einen lesenden, freigegebenen SDK-Zugang vorbereiten.
import os
from metadata.sdk import configure
configure(
host=os.environ["OPENMETADATA_HOST"],
jwt_token=os.environ["OPENMETADATA_JWT_TOKEN"],
)
Host endet auf /api. Paket- und Serverstand abstimmen; keine Tokens im Skript speichern. configure prüft die Verbindung.
Metadaten & Katalog
Tabelle über FQN lesen
Nach vorherigem configure ein bekanntes Objekt wiederfinden.
from metadata.sdk import Tables
table = Tables.retrieve_by_name("demo.sales.public.orders")
if table is not None:
print(table.fullyQualifiedName.root)
FQN ist Service.Datenbank.Schema.Tabelle. Client-Beispiele verschiedener SDK-Generationen nicht mischen.
Metadaten & Katalog
Schema begrenzt auflisten
Erste Ergebnisse eines Schemas zur Abnahme lesen.
from metadata.sdk import Tables
page = Tables.list(filters={"databaseSchema": "demo.sales.public"})
for table in page.entities:
print(table.fullyQualifiedName.root)
Ein Ergebnisfenster beweist keine Vollständigkeit. Paging und Soll-Liste der Objekte zusätzlich prüfen. Nach vorherigem configure ausführen.
Tests & Auswahl
Filter mit Gegenprobe prüfen
Vor produktiver Ingestion erlaubten und ausgeschlossenen Umfang testen.
Soll: demo.sales.public.orders enthalten
Soll: demo.hr.private.people ausgeschlossen
Nach Lauf: beide Erwartungen separat dokumentieren
Sichtbarkeit an der Quelle und Filterwirkung unterscheiden. Ein fehlendes Objekt kann auch an fehlenden Quellrechten liegen.
Tests & Auswahl
Lineage-Kante fachlich abnehmen
Eine bekannte Datenabhängigkeit als kontrollierte Sollkante verwenden.
Quelle: demo.sales.public.orders
Ziel: demo.analytics.marts.monthly_sales
Sollkante: Quelle → Ziel
Nachweis: Erhebungsweg + Lauf-ID + überprüfte Richtung
Metadatenimport allein belegt weder Spaltenlineage noch jede systemübergreifende Kante.
Sicherheit & Rechte
Datenwerte ausdrücklich ausschließen
Vor Ingestion den Unterschied zwischen Schema und Inhalt abstimmen.
Metadaten: Namen / Typen / Beschreibungen
Profiling: separat genehmigen
Samples: separat genehmigen oder deaktivieren
Prüfung: echte Feldwerte im Katalog sichtbar?
Connectoroptionen variieren. Die bloße Absicht „nur Metadaten“ ersetzt keine Konfigurations- und Ergebnisprüfung.
Metadaten & Katalog
Verantwortung und Glossar verbinden
Technische Inventarisierung um fachliche Entscheidungen ergänzen.
Objekt → verantwortliches Team
Fachbegriff → Definition und Freigabe
Zuordnung → überprüfte Bedeutung
Review → Datum und zuständige Rolle
Tag, Owner und Glossarbegriff erfüllen verschiedene Aufgaben und erteilen keine Quellrechte.
Betrieb & Fehlersuche
Upgrade mit Vergleichsobjekten prüfen
Konfiguration und Ergebnisse vor und nach einem Update vergleichen.
Vorher: Server-/Runner-/Connectorstand sichern
Vergleich: IDs, Filter, Felder, bekannte Lineage
Nachher: gleiche Fälle erneut prüfen
Rückweg: genehmigtes Runbook / Sicherung
Backup und Wiederherstellung müssen getestet sein; ein erfolgreicher Prozessstart reicht nicht.
Betrieb & Fehlersuche
Fehler nach Schicht eingrenzen
Einen verschwundenen Tabellenfund systematisch untersuchen.
Netzweg → Anmeldung → Quellrechte
→ Objektfilter → Runner-/Connectorlauf
→ Katalog-ID → Index/Suche → Nachtest
Protokolle bereinigen. Suchindex und gespeichertes Objekt getrennt prüfen.
Betrieb & Fehlersuche
Installiertes Ingestion-Paket lesen
Vor SDK- und Runner-Diagnose den lokalen Paketstand feststellen.
from importlib.metadata import version
print(version("openmetadata-ingestion"))
Dies liest nur den lokalen Python-Paketstand, nicht die Serverversion.
Metadaten & Katalog
Spaltennamen über SDK lesen
Nach configure das sichtbare Spaltenschema kontrollieren.
from metadata.sdk import Tables
table = Tables.retrieve_by_name("demo.sales.public.orders")
if table is not None:
for column in table.columns or []:
print(column.name.root)
Keine Beispieldatenabfrage. Ein erfolgreiches Lesen beweist weder Eigentümerfreigabe noch Datenqualität.
Sicherheit & Rechte
Sensible Metadaten erkennen
Auch Kataloginhalte selbst auf Schutzbedarf prüfen.
Beschreibungen → Personenwerte?
SQL/Logs → eingebettete Tokens?
Verbindungsnamen → vertrauliche Kundenkennung?
Samples → separat genehmigt?
Metadaten sind nicht pauschal öffentlich. Zugriff und Redaktion mit zuständigen Rollen festlegen.
Tests & Auswahl
Wiederholten Import vergleichen
Dubletten und ungewolltes Überschreiben kuratierter Angaben erkennen.
Vorher: bekannte FQN und Objekt-ID notieren
Gleiche Quelle erneut erheben
Nachher: Identität, Owner, Beschreibung und Tags vergleichen
Ein bloßer Zähler gleicher Tabellenmengen beweist keine stabile Objektidentität.
Tests & Auswahl
Metadatenrechte entziehen testen
Katalogrollen und tatsächliche Nutzungswege abnehmen.
Freigegebener Leser → erlaubte Metadaten
Nicht berechtigter Leser → verweigerte Aktion
Entzug → neue Sitzung und erneuter Test
Quellrechte → unabhängig davon prüfen
Keine reale Entziehung im Tool. Änderungen nur durch berechtigten Betrieb im freigegebenen Test durchführen.