In diesem Dokument wird beschrieben, wie Sie Metadaten aus PostgreSQL mithilfe eines Knowledge Catalog-Connectors in Knowledge Catalog (früher Dataplex Universal Catalog) importieren.
Dieser Connector unterstützt PostgreSQL-Instanzen, die lokal, in Cloud SQL oder in anderen Cloud-Umgebungen gehostet werden.
Hinweis
Bevor Sie Metadaten aus PostgreSQL importieren können, müssen Sie die folgenden Aufgaben ausführen:
- Weisen Sie die erforderlichen Rollen und Berechtigungen zu.
- Aktivieren Sie die Knowledge Catalog API und die BigQuery Data Transfer Service API.
- PostgreSQL-Voraussetzungen erfüllen
- Die Netzwerkvoraussetzungen müssen erfüllt sein.
IAM-Rollen und -Berechtigungen
Zum Erstellen und Verwalten eines Knowledge Catalog-Connector-Jobs benötigen Sie IAM-Rollen (Identity and Access Management), die Berechtigungen für Knowledge Catalog und BigQuery Data Transfer Service gewähren.
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren eines PostgreSQL-Connectors benötigen:
- Zum Erstellen und Verwalten von Eintragsgruppen: Dataplex Catalog Admin (
roles/dataplex.catalogAdmin), Dataplex Catalog Editor (roles/dataplex.catalogEditor) oder Dataplex Entry Group Owner (roles/dataplex.entryGroupOwner) für das Projekt. - Zum Erstellen und Verwalten von BigQuery Data Transfer Service-Übertragungsjobs: BigQuery-Administrator (
roles/bigquery.admin) für das Projekt. - So rufen Sie Logs in Cloud Logging auf: Loganzeige (
roles/logging.viewer) für das Projekt.
Außerdem müssen Sie dem Dienst-Agent für BigQuery Data Transfer Service (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) die Berechtigung dataplex.entryGroups.import oder die Rolle Dataplex Entry Group Importer (roles/dataplex.entryGroupImporter) zuweisen. Sie können diese Rolle entweder auf Projektebene oder auf Ebene der Eintragsgruppe zuweisen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
APIs aktivieren
Aktivieren Sie die Knowledge Catalog API und die BigQuery Data Transfer Service API.
PostgreSQL-Voraussetzungen
Prüfen Sie, ob Sie die Voraussetzungen für PostgreSQL-Übertragungen erfüllen. Weitere Informationen finden Sie in der Dokumentation zum BigQuery Data Transfer Service unter PostgreSQL-Voraussetzungen.
Zusätzlich zu den Voraussetzungen für BigQuery Data Transfer Service muss Ihre PostgreSQL-Datenbank die folgenden Anforderungen für die Metadatenextraktion erfüllen:
- Mindestversion:PostgreSQL-Version 15 oder höher.
- Mindestanforderungen an Berechtigungen:Für das Extraktionstool sind bestimmte Berechtigungen erforderlich, um Metadaten zu erfassen.
Führen Sie die folgenden SQL-Anweisungen aus, um diese Berechtigungen zu erteilen:
Verbindung zur Datenbank zulassen:
GRANT CONNECT ON DATABASE DATABASE_NAME TO USERNAME;Nutzung für das Schema gewähren:
GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;Weisen Sie dem Nutzer die erforderlichen Leseberechtigungsrollen zu:
GRANT pg_read_all_data TO USERNAME; GRANT pg_read_all_settings TO USERNAME; GRANT pg_read_all_stats TO USERNAME;
Ersetzen Sie Folgendes:
DATABASE_NAME: der Name der PostgreSQL-Datenbank, auf die Sie zugreifen möchten.USERNAME: Der Datenbanknutzer, den Sie konfigurieren möchten.SCHEMA_NAME: Der Name des Schemas, auf das Sie zugreifen möchten.
Netzwerkvoraussetzungen
Eine Netzwerkverbindung für die Verbindung über Private Service Connect ist erforderlich, wenn Sie eine sichere Verbindung zu externen Datenbanken oder Cloud-Datenquellen von Drittanbietern mit einer privaten IP-Adresse in einem privaten Netzwerk herstellen möchten, damit BigQuery Data Transfer Service auf Ihre Datenbank zugreifen kann.
Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zu einer lokalen Umgebung oder einer in der Cloud gehosteten Instanz herstellen, ist kein Netzwerkanhang erforderlich.
PostgreSQL-Connector konfigurieren
Konfigurieren Sie einen PostgreSQL-Connector über die Google Cloud Console oder die API.
Console
Rufen Sie in der Google Cloud Console die Seite Knowledge Catalog auf.
- Klicken Sie im Navigationsmenü im Bereich Verwalten auf Connectors.
- Klicken Sie auf Verbindung hinzufügen.
- Wählen Sie in der Liste Connectors die Karte PostgreSQL aus.
- Geben Sie im Abschnitt Details zur Datenquelle die Verbindungsdetails für Ihre PostgreSQL-Instanz an:
- Wählen Sie unter Netzwerkanhang einen vorhandenen Netzwerkanhang aus oder erstellen Sie einen.
- Geben Sie den Host, den Port, den Datenbanknamen, den Nutzernamen und das Passwort ein.
- Wenn Sie TLS verwenden, wählen Sie einen TLS-Modus aus und geben Sie ein vertrauenswürdiges PEM-Zertifikat an.
- Klicken Sie unter Zu importierende PostgreSQL-Metadatenobjekte auf Durchsuchen, um Objekte auszuwählen.
- Im Abschnitt Zieleinstellungen:
- Klicken Sie auf Durchsuchen und wählen Sie eine vorhandene Knowledge Catalog-Eintragsgruppe aus, in der die importierten Metadaten gespeichert werden sollen. Alternativ können Sie auf Neue Eintragsgruppe erstellen klicken.
- Wählen Sie aus, ob Sie Berechtigungen für die Eintragsgruppe jetzt oder später festlegen möchten.
Wir empfehlen, Berechtigungen so festzulegen, dass Nutzer die importierten Metadaten ansehen können. Wenn Sie dem Dienst-Agent für BigQuery Data Transfer Service (
service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) auf Projektebene nicht die Rolle „Dataplex Entry Group Importer“ (roles/dataplex.entryGroupImporter) oder die Berechtigung „dataplex.entryGroups.import“ zugewiesen haben, müssen Sie dies auf Ebene der Eintragsgruppe tun.
- Geben Sie im Abschnitt Connector config name (Name der Connector-Konfiguration) als Display name (Anzeigename) einen Namen für den Metadatenimportjob ein.
- Konfigurieren Sie im Abschnitt Zeitplanoptionen die Häufigkeit für den Metadatenimportjob. Wenn Sie On-Demand auswählen, wird der Job nur ausgeführt, wenn Sie ihn manuell auslösen.
- Optional: Konfigurieren Sie im Abschnitt Benachrichtigungsoptionen E‑Mail- oder Pub/Sub-Benachrichtigungen für Jobfehler.
- Optional: Konfigurieren Sie im Abschnitt Erweiterte Optionen die Verschlüsselungseinstellungen. Wenn Sie einen vom Kunden verwalteten Verschlüsselungsschlüssel (Customer-Managed Encryption Key, CMEK) auswählen, wird der Schlüssel zum Verschlüsseln aller temporären Daten verwendet, die vor dem Start der Importjobs für Knowledge Catalog-Metadaten bereitgestellt werden. Sie wird nicht verwendet, um die Metadaten in der Ziel-Eintragsgruppe des Knowledge Catalog zu verschlüsseln.
- Klicken Sie auf Speichern.
REST
Verwenden Sie die Methode projects.locations.transferConfigs.create. Konfigurieren Sie in der TransferConfig-Ressource die folgenden Felder:
- Setzen Sie das Feld
dataSourceIdauf"postgresql". - Füllen Sie im Feld
metadataDestinationdas ObjektdataplexConfigurationmit dem Ressourcenpfad der Ziel-Knowledge Catalog-Eintragsgruppe aus:projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>
Nachdem Sie den Job erstellt haben, plant Knowledge Catalog die erste Ausführung entsprechend Ihrer Konfiguration. Sie können sie aber auch manuell starten.
PostgreSQL-Metadaten suchen und ansehen
Rufen Sie in der Google Cloud Console die Seite Suchen im Knowledge Catalog auf.
Im Bereich Filter können Sie nach PostgreSQL-Assets filtern, indem Sie die Abschnitte Projekt, System und Typ-Aliase verwenden. Wählen Sie im Bereich System die Option Imported Context (Importierter Kontext) aus. Wenn Sie diesen Filter auswählen, wird der Unterabschnitt Managed Connectors geöffnet. Wählen Sie PostgreSQL aus, um alle PostgreSQL-Metadaten zu filtern.
Sie können das Suchfeld verwenden, um Suchanfragen auszuführen. Sie können eine Suche mit Suchbegriffen oder in natürlicher Sprache durchführen. Wenn Sie beispielsweise alle PostgreSQL-Tabellen über die Stichwortsuche aufrufen möchten, geben Sie
system=POSTGRESQL AND type=TABLEein.Weitere Informationen zum Suchen nach Ressourcen finden Sie unter Nach Ressourcen in Knowledge Catalog suchen. Weitere Informationen zu den Ausdrücken, die Sie im Suchfeld verwenden können, finden Sie unter Suchsyntax für Knowledge Catalog.
Sie können auch die LookupContext API verwenden, um den LLM-Kontext für bestimmte PostgreSQL-Ressourcen abzurufen.