PostgreSQL

Mit dem PostgreSQL-Connector-Typ können Sie Zeilen in eine PostgreSQL-Datenbank einfügen, lesen, aktualisieren und löschen.

Unterstützte Versionen

PostgreSQL ab Version 7.4

Hinweise

Führen Sie vor der Verwendung des PostgreSQL-Connectors die folgenden Aufgaben aus:

  • In Ihrem Google Cloud-Projekt:
    • Gewähren Sie dem Nutzer, der den Connector konfiguriert, die IAM-Rolle roles/connectors.admin.
    • Weisen Sie dem Dienstkonto, das Sie für den Connector verwenden möchten, die folgenden IAM-Rollen zu:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

      Ein Dienstkonto ist eine spezielle Art von Google-Konto, das einen nicht menschlichen Nutzer repräsentiert. Es muss authentifiziert und autorisiert werden, um Zugriff auf Daten in Google APIs zu erhalten. Wenn Sie kein Dienstkonto haben, müssen Sie eins erstellen. Weitere Informationen finden Sie unter Dienstkonto erstellen.

    • Aktivieren Sie die folgenden Dienste:
      • secretmanager.googleapis.com (Secret Manager API)
      • connectors.googleapis.com (Connectors API)

      Informationen zum Aktivieren von Diensten finden Sie unter Dienste aktivieren.

    Wenn diese Dienste oder Berechtigungen für Ihr Projekt zuvor nicht aktiviert wurden, werden Sie aufgefordert, sie beim Konfigurieren des Connectors zu aktivieren.

Connector konfigurieren

Für die Konfiguration des Connectors müssen Sie eine Verbindung zu Ihrer Datenquelle (Backend-System) erstellen. Eine Verbindung ist für eine Datenquelle spezifisch. Wenn Sie also viele Datenquellen haben, müssen Sie für jede Datenquelle eine separate Verbindung erstellen. So erstellen Sie eine Verbindung:

  1. Rufen Sie in der Cloud Console die Seite Integration Connectors > Verbindungen auf und wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Seite „Verbindungen“

  2. Klicken Sie auf + NEU ERSTELLEN, um die Seite Verbindung erstellen zu öffnen.
  3. Wählen Sie im Abschnitt Standort den Standort für die Verbindung aus.
    1. Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.

      Eine Liste aller unterstützten Regionen finden Sie unter Standorte.

    2. Klicken Sie auf Weiter.
  4. Führen Sie im Abschnitt Verbindungsdetails folgende Schritte aus:
    1. Connector: Wählen Sie PostgreSQL aus der Drop-down-Liste der verfügbaren Connectors aus.
    2. Connector-Version: Wählen Sie die Connector-Version aus der Drop-down-Liste der verfügbaren Versionen aus.
    3. Geben Sie im Feld Verbindungsname einen Namen für die Verbindungsinstanz ein.

      Verbindungsnamen müssen die folgenden Kriterien erfüllen:

      • Verbindungsnamen können Buchstaben, Ziffern oder Bindestriche enthalten.
      • Buchstaben müssen Kleinbuchstaben sein.
      • Verbindungsnamen müssen mit einem Buchstaben beginnen und mit einem Buchstaben oder einer Ziffer enden.
      • Verbindungsnamen dürfen maximal 63 Zeichen haben.
    4. Geben Sie optional unter Beschreibung eine Beschreibung für die Verbindungsinstanz ein.
    5. Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
    6. Konfigurieren Sie optional die Einstellungen für den Verbindungsknoten:

      • Mindestanzahl von Knoten: Geben Sie die Mindestanzahl von Verbindungsknoten ein.
      • Maximale Anzahl von Knoten: Geben Sie die maximale Anzahl von Verbindungsknoten ein.

      Ein Knoten ist eine Einheit (oder ein Replikat) einer Verbindung, die Transaktionen verarbeitet. Zur Verarbeitung von mehr Transaktionen für eine Verbindung sind mehr Knoten erforderlich. Umgekehrt sind weniger Knoten erforderlich, um weniger Transaktionen zu verarbeiten. Informationen zu den Auswirkungen der Knoten auf Ihre Connector-Preise finden Sie unter Preise für Verbindungsknoten. Wenn Sie keine Werte eingeben, ist die Mindestanzahl von Knoten standardmäßig auf 2 (für eine bessere Verfügbarkeit) und die maximale Knotenzahl auf 50 gesetzt.

    7. Datenbankname: Der Name der Postgresql-Datenbank, zu der eine Verbindung hergestellt werden soll.
    8. Proxy verwenden: Klicken Sie dieses Kästchen an, um einen Proxyserver für die Verbindung und die folgenden Werte zu konfigurieren:
      • Proxy-Authentifizierungsschema: Wählen Sie den Authentifizierungstyp für die Authentifizierung beim Proxyserver aus. Die folgenden Authentifizierungstypen werden unterstützt:
        • Standard: Basis-HTTP-Authentifizierung.
        • Digest: Digest-HTTP-Authentifizierung.
      • Proxy User: Ein Nutzername, der für die Authentifizierung beim Proxyserver verwendet wird.
      • Proxy-Passwort: Das Secret Manager-Secret des Nutzerpassworts.
      • Proxy-SSL-Typ: Der SSL-Typ, der beim Herstellen einer Verbindung zum Proxyserver verwendet werden soll. Die folgenden Authentifizierungstypen werden unterstützt:
        • Automatisch: Standardeinstellung. Wenn die URL eine HTTPS-URL ist, wird die Option „Tunnel“ verwendet. Wenn die URL eine HTTP-URL ist, wird die Option NEVER verwendet.
        • Immer: Für die Verbindung ist immer SSL aktiviert.
        • Nie: Die Verbindung ist nicht SSL-fähig.
        • Tunnel: Die Verbindung erfolgt über einen Tunneling-Proxy. Der Proxyserver öffnet eine Verbindung zum Remote-Host und der Traffic fließt über den Proxy hin und her.
      • Geben Sie im Abschnitt Proxyserver Details zum Proxyserver ein.
        1. Klicken Sie auf + Ziel hinzufügen.
        2. Wählen Sie einen Zieltyp aus.
          • Hostadresse: Geben Sie den Hostnamen oder die IP-Adresse des Ziels an.

            Wenn Sie eine private Verbindung zu Ihrem Back-End-System herstellen möchten, gehen Sie so vor:

            • Erstellen Sie einen PSC-Dienstanhang.
            • Erstellen Sie einen Endpunktanhang und geben Sie dann die Details des Endpunktanhangs in das Feld Hostadresse ein.
    9. Klicken Sie optional auf + Label hinzufügen, um der Verbindung ein Label in Form eines Schlüssel/Wert-Paars hinzuzufügen.
    10. Wenn Sie SSL verwenden möchten, wählen Sie optional SSL aktivieren aus. Die SSL-Konfigurationsdetails werden angezeigt.
      1. Wählen Sie einen Trust Store-Typ aus. Es kann entweder Öffentlich, Privat oder Unsichere Verbindung sein.
      2. Wählen Sie die Zertifikate aus, die basierend auf Ihrer Auswahl im Trust Store angezeigt werden sollen.
      3. Wenn Sie mTLS verwenden, wählen Sie die Schlüsselspeicherzertifikate im Abschnitt Schlüsselspeicher aus.
    11. Klicken Sie auf Weiter.
  5. Geben Sie im Abschnitt Ziele die Details zum Remote-Host (Backend-System) ein, zu dem Sie eine Verbindung herstellen möchten.
    1. Destination Type: Wählen Sie einen Destination Type aus.
      • Wählen Sie aus der Liste Hostadresse aus, um den Hostnamen oder die IP-Adresse für das Ziel anzugeben.
      • Wenn Sie eine private Verbindung zu Ihren Backend-Systemen herstellen möchten, wählen Sie in der Liste Endpunktanhang und dann den erforderlichen Endpunktanhang aus der Liste Endpunktanhang aus.

      Wenn Sie eine öffentliche Verbindung zu Ihren Back-End-Systemen mit zusätzlicher Sicherheit herstellen möchten, können Sie statische ausgehende IP-Adressen für Ihre Verbindungen konfigurieren und dann Ihre Firewallregeln so konfigurieren, dass nur bestimmte statische IP-Adressen auf die Zulassungsliste gesetzt werden.

      Wenn Sie weitere Reiseziele eingeben möchten, klicken Sie auf + Ziel hinzufügen.

    2. Klicken Sie auf Weiter.
  6. Geben Sie im Abschnitt Authentifizierung die Authentifizierungsdetails ein.
    1. Wählen Sie einen Authentifizierungstyp aus und geben Sie die relevanten Details ein.

      Die folgenden Authentifizierungstypen werden von der PostgreSQL-Verbindung unterstützt:

      • Nutzername und Passwort
    2. Informationen zum Konfigurieren dieser Authentifizierungstypen finden Sie unter Authentifizierung konfigurieren.

    3. Klicken Sie auf Weiter.
  7. Überprüfen: Prüfen Sie Ihre Verbindungs- und Authentifizierungsdetails.
  8. Klicken Sie auf Erstellen.

Authentifizierung konfigurieren

Geben Sie die Details basierend auf der zu verwendenden Authentifizierung ein.

  • Nutzername und Passwort
    • Nutzername: Der PostgreSQL-Nutzername für die Verbindung.
    • Kennwort: Secret Manager-Secret mit dem Passwort, das dem PostgreSQL-Nutzernamen zugeordnet ist.

Entitäten, Vorgänge und Aktionen

Alle Integration Connectors bieten eine Abstraktionsebene für die Objekte der verbundenen Anwendung. Sie können nur über diese Abstraktion auf die Objekte einer Anwendung zugreifen. Die Abstraktion wird Ihnen als Entitäten, Vorgänge und Aktionen zur Verfügung gestellt.

  • Entität: Eine Entität kann als Objekt oder Sammlung von Attributen in der verbundenen Anwendung oder im verbundenen Dienst verstanden werden. Die Definition einer Entität unterscheidet sich von Connector zu Connector. Beispiel: In einem Datenbank-Connector sind Tabellen die Entitäten, in einem Dateiserver-Connector sind Ordner die Entitäten und in einem Nachrichtensystem-Connector sind Warteschlangen die Entitäten.

    Es ist jedoch möglich, dass ein Connector keine Entitäten unterstützt oder keine Entitäten enthält. In diesem Fall ist die Liste Entities leer.

  • Vorgang: Ein Vorgang ist die Aktivität, die Sie für eine Entität ausführen können. Sie können einen der folgenden Vorgänge für eine Entität ausführen:

    Durch Auswahl einer Entität aus der verfügbaren Liste wird eine Liste der Vorgänge generiert, die für die Entität verfügbar sind. Eine detaillierte Beschreibung der Vorgänge finden Sie in den Entitätsvorgängen der Connectors-Aufgabe. Wenn ein Connector jedoch keine Entitätsvorgänge unterstützt, werden solche nicht unterstützten Vorgänge nicht in der Liste Operations aufgeführt.

  • Aktion: Eine Aktion ist eine Funktion erster Klasse, die über die Connector-Benutzeroberfläche für die Integration verfügbar gemacht wird. Mit einer Aktion können Sie Änderungen an einer oder mehreren Entitäten vornehmen, die von Connector zu Connector unterschiedlich sind. Normalerweise umfasst eine Aktion einige Eingabeparameter und einen Ausgabeparameter. Es ist jedoch möglich, dass ein Connector keine Aktionen unterstützt. In diesem Fall ist die Actions-Liste leer.

Systembeschränkungen

Der PostgreSQL-Connector kann neun Transaktionen pro Sekunde und Knoten verarbeiten und drosselt alle Transaktionen über dieses Limit hinaus. Standardmäßig weist Integration Connectors einer Verbindung 2 Knoten (zur besseren Verfügbarkeit) zu.

Informationen zu den für Integration Connectors geltenden Limits finden Sie unter Beschränkungen.

Unterstützte Datentypen

Folgende Datentypen werden für diesen Connector unterstützt:

  • BIGINT
  • BINARY
  • BIT
  • BOOLEAN
  • CHAR
  • DATUM
  • DECIMAL
  • DOUBLE
  • FLOAT
  • INTEGER
  • LANGER VARIANZZAHL
  • LANGER VARIANZZAHL
  • NCHAR
  • NUMERIC
  • NVARIANZ
  • REAL
  • KLEIN INT
  • UHRZEIT
  • TIMESTAMP
  • KLEINER INT
  • VARBINARY
  • VARCHAR

Verbindungen mit Terraform erstellen

Sie können mit der Terraform-Ressource eine neue Verbindung erstellen.

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

Eine Beispiel-Terraform-Vorlage zum Erstellen von Verbindungen finden Sie unter Beispielvorlage.

Wenn Sie diese Verbindung mithilfe von Terraform erstellen, müssen Sie die folgenden Variablen in der Terraform-Konfigurationsdatei festlegen:

Parametername Datentyp Erforderlich Beschreibung
database_name STRING Wahr Der Name der Postgresql-Datenbank, zu der eine Verbindung hergestellt werden soll.
proxy_enabled BOOLEAN Falsch Wählen Sie dieses Kontrollkästchen aus, um einen Proxyserver für die Verbindung zu konfigurieren.
proxy_auth_scheme ENUM Falsch Der für die Authentifizierung beim ProxyServer-Proxy zu verwendende Authentifizierungstyp. Unterstützte Werte: BASIC, DIGEST, NONE
proxy_user STRING Falsch Ein Nutzername, der für die Authentifizierung beim ProxyServer-Proxy verwendet werden soll.
proxy_password SECRET Falsch Ein Passwort, das zur Authentifizierung beim ProxyServer-Proxy verwendet wird.
proxy_ssltype ENUM Falsch Der SSL-Typ, der beim Herstellen einer Verbindung zum ProxyServer-Proxy verwendet werden soll. Unterstützte Werte sind: AUTO, ALWAYS, NEVER, TUNNEL

Aktionen

Dieser Connector unterstützt die Ausführung der folgenden Aktionen:

  • Benutzerdefinierte gespeicherte Prozeduren und Funktionen: Wenn in Ihrem Back-End gespeicherte Prozeduren und Funktionen vorhanden sind, sind diese in der Spalte Actions des Dialogfelds Configure connector task aufgeführt.
  • Benutzerdefinierte SQL-Abfragen: Um benutzerdefinierte SQL-Abfragen auszuführen, bietet der Connector die Aktion Benutzerdefinierte Abfrage ausführen an.

    So erstellen Sie eine benutzerdefinierte Abfrage:

    1. Folgen Sie der detaillierten Anleitung zum Hinzufügen einer Connectors-Aufgabe.
    2. Wählen Sie beim Konfigurieren der Connector-Aufgabe als Typ der auszuführenden Aktion die Option Aktionen aus.
    3. Wählen Sie in der Liste Aktion die Option Benutzerdefinierte Abfrage ausführen aus und klicken Sie dann auf Fertig.

      Bild mit Befehl „execute-custom-query-action“ Bild mit Befehl „execute-custom-query-action“

    4. Maximieren Sie den Bereich Task Input und führen Sie dann die folgenden Schritte aus:
      1. Geben Sie im Feld Zeitüberschreitung nach die Anzahl der Sekunden ein, die bis zur Ausführung der Abfrage gewartet werden soll.

        Standardwert: 180 Sekunden.

      2. Geben Sie im Feld Maximale Zeilenanzahl die maximale Anzahl von Zeilen ein, die von der Datenbank zurückgegeben werden sollen.

        Standardwert: 25.

      3. Klicken Sie auf Benutzerdefiniertes Skript bearbeiten, um die benutzerdefinierte Abfrage zu aktualisieren. Das Dialogfeld Skripteditor wird geöffnet.

        Bild mit benutzerdefinierter SQL-Abfrage Bild mit benutzerdefinierter SQL-Abfrage

      4. Geben Sie im Dialogfeld Skripteditor die SQL-Abfrage ein und klicken Sie auf Speichern.

        Sie können in einer SQL-Anweisung ein Fragezeichen (?) verwenden, um einen einzelnen Parameter darzustellen, der in der Liste der Abfrageparameter angegeben werden muss. Mit der folgenden SQL-Abfrage werden beispielsweise alle Zeilen aus der Tabelle Employees ausgewählt, die den in der Spalte LastName angegebenen Werten entsprechen:

        SELECT * FROM Employees where LastName=?

      5. Wenn Sie in Ihrer SQL-Abfrage Fragezeichen verwendet haben, müssen Sie den Parameter hinzufügen, indem Sie bei jedem Fragezeichen auf + Parameternamen hinzufügen klicken. Beim Ausführen der Integration ersetzen diese Parameter die Fragezeichen (?) in der SQL-Abfrage nacheinander. Wenn Sie beispielsweise drei Fragezeichen (?) hinzugefügt haben, müssen Sie drei Parameter in der richtigen Reihenfolge hinzufügen.

        Bild mit Abfrageparameter hinzufügen Bild mit Abfrageparameter hinzufügen

        So fügen Sie Abfrageparameter hinzu:

        1. Wählen Sie in der Liste Typ den Datentyp des Parameters aus.
        2. Geben Sie im Feld Wert den Wert des Parameters ein.
        3. Wenn Sie mehrere Parameter hinzufügen möchten, klicken Sie auf + Suchparameter hinzufügen.

Aktionsbeispiele

Beispiel – Den größeren Wert finden

Dieses Beispiel zeigt, wie eine benutzerdefinierte Funktion ausgeführt wird. Die Funktion find_greater in diesem Beispiel vergleicht zwei Ganzzahlen und gibt die Ganzzahl zurück, die größer ist.

  1. Klicken Sie im Dialogfeld Configure connector task auf Actions.
  2. Wählen Sie die Aktion find_greater aus und klicken Sie auf Fertig.
  3. Klicken Sie im Bereich Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann in das Feld Default Value einen Wert wie den folgenden ein:
    {
    "$1": 1.0,
    "$2": 5.0
    }
  4. Wenn die Aktion erfolgreich ausgeführt wurde, hat das Feld connectorOutputPayload der Connector-Aufgabe einen Wert ähnlich dem folgenden:

    [{
    "bignum": 5.0
    }]

Beispiele für Entitätsvorgänge

Beispiel – Datensätze einer Entität auflisten

In diesem Beispiel werden die Datensätze der Entität Users aufgelistet.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wähle Users aus der Entity-Liste aus.
  3. Wählen Sie den Vorgang List aus und klicken Sie auf Fertig.
  4. Im Bereich Task Input der Aufgabe Connectors können Sie die filterClause entsprechend Ihren Anforderungen festlegen.

    Wenn Sie beispielsweise die Filterklausel auf employeeCode='5100' and startDate='2010-01-01 00:00:00' setzen, werden nur die Datensätze aufgelistet, deren employeeCode 5100 und startDate 2010-01-01 00:00:00 ist.

Beispiel – Einzelnen Datensatz aus einer Entität abrufen

In diesem Beispiel wird ein Datensatz von der Entität Users abgerufen.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wähle User aus der Entity-Liste aus.
  3. Wählen Sie den Vorgang Get aus und klicken Sie auf Fertig.
  4. Klicken Sie in der Aufgabe Connectors im Bereich Task Input auf entityId und geben Sie im Feld Default Value (Standardwert) 103032 ein.

    Hier ist 103032 der Primärschlüssel der Entität Users.

Beispiel – Datensatz aus einer Entität löschen

In diesem Beispiel wird ein Datensatz aus der Entität Users gelöscht.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wähle Users aus der Entity-Liste aus.
  3. Wählen Sie den Vorgang Delete aus und klicken Sie auf Fertig.
  4. Klicken Sie in der Aufgabe Connectors im Bereich Task Input auf entityId und geben Sie im Feld Default Value (Standardwert) 113132 ein.

    Wenn die Entität zusammengesetzte Primärschlüssel hat, können Sie alternativ die filterClause festlegen, anstatt die entityId anzugeben. Beispiel: employeeCode='5100' and startDate='2010-01-01 00:00:00'

Beispiel – Datensatz in einer Entität erstellen

In diesem Beispiel wird ein Datensatz in der Entität Users erstellt.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wähle Users aus der Entity-Liste aus.
  3. Wählen Sie den Vorgang Create aus und klicken Sie auf Fertig.
  4. Klicken Sie im Bereich Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann in das Feld Default Value einen Wert wie den folgenden ein:
    {
    "employeeCode": "5100",
    "startDate": "2010-01-01 00:00:00.0",
    "country": "US"
    }
    
  5. Ist die Integration erfolgreich, enthält das Feld connectorOutputPayload der Connector-Aufgabe die Antwort des Erstellungsvorgangs.

Beispiel – Datensatz in einer Entität aktualisieren

In diesem Beispiel wird ein Datensatz in der Entität Users aktualisiert.

  1. Klicken Sie im Dialogfeld Configure connector task auf Entities.
  2. Wähle Users aus der Entity-Liste aus.
  3. Wählen Sie den Vorgang Update aus und klicken Sie auf Fertig.
  4. Klicken Sie im Bereich Task Input der Aufgabe Connectors auf connectorInputPayload und geben Sie dann in das Feld Default Value einen Wert wie den folgenden ein:
    {
    "country": "IN"
    }
  5. Klicken Sie in der Aufgabe Connectors im Bereich Task Input auf entityId und geben Sie im Feld Default Value (Standardwert) 113132 ein.

    Wenn die Entität zusammengesetzte Primärschlüssel hat, können Sie alternativ die filterClause festlegen, anstatt die entityId anzugeben. Beispiel: employeeCode='5100' and startDate='2010-01-01 00:00:00'

  6. Ist die Integration erfolgreich, enthält das Feld connectorOutputPayload der Connector-Aufgabe die Antwort des Aktualisierungsvorgangs.

PostgreSQL-Verbindung in einer Integration verwenden

Nachdem Sie die Verbindung erstellt haben, ist sie in Apigee Integration und Application Integration verfügbar. Sie können die Verbindung in einer Integration über die Connectors-Aufgabe verwenden.

  • Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in der Apigee-Integration finden Sie unter Connectors-Aufgabe.
  • Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Application Integration finden Sie unter Connectors.

Hilfe von der Google Cloud-Community erhalten

Sie können Ihre Fragen und Anregungen zu diesem Connector in der Google Cloud-Community unter Cloud-Foren posten.

Nächste Schritte