Redshift
Mit dem Redshift-Connector können Sie Vorgänge zum Einfügen, Löschen, Aktualisieren und Lesen in der Redshift-Datenbank ausführen.
Hinweis
Führen Sie vor der Verwendung des Redshift-Connectors die folgenden Aufgaben aus:
- In Ihrem Google Cloud-Projekt:
- Weisen Sie dem Nutzer, der den Connector konfiguriert, die IAM-Rolle roles/connectors.admin zu.
- 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.
- Informationen zum Erstellen eines Redshift-Clusters finden Sie unter Kurzanleitung mit Redshift und Amazon Redshift-Cluster erstellen. Weitere Informationen zum Erstellen einer Redshift-Datenbank finden Sie unter Redshift-Datenbank erstellen.
- Informationen zur Einrichtung einer Redshift-Instanz finden Sie unter Redshift einrichten. Weitere Informationen zu Redshift finden Sie unter Redshift-Plattform – Übersicht.
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:
- 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.
- Klicken Sie auf + NEU ERSTELLEN, um die Seite Verbindung erstellen zu öffnen.
- Wählen Sie im Abschnitt Standort den Standort für die Verbindung aus.
- Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.
Eine Liste aller unterstützten Regionen finden Sie unter Standorte.
- Tippen Sie auf Weiter.
- Region: Wählen Sie einen Standort aus der Drop-down-Liste aus.
- Führen Sie im Abschnitt Verbindungsdetails folgende Schritte aus:
- Connector: Wählen Sie Redshift aus der Drop-down-Liste der verfügbaren Connectors aus.
- Connector-Version: Wählen Sie die Connector-Version aus der Drop-down-Liste der verfügbaren Versionen aus.
- 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 49 Zeichen haben.
- Geben Sie optional unter Beschreibung eine Beschreibung für die Verbindungsinstanz ein.
- Optional können Sie Cloud Logging aktivieren und dann eine Logebene auswählen. Standardmäßig ist die Logebene auf
Error
festgelegt. - Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
- Optional: Konfigurieren Sie die Verbindungsknoteneinstellungen:
- 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.
- Datenbank: Der Name der Amazon Redshift-Datenbank.
- Auto Create: Geben Sie „true“ an, um einen Datenbanknutzer mit dem für „Nutzer“ angegebenen Namen zu erstellen, wenn er beim Herstellen einer Verbindung mit IAM-Anmeldedaten nicht vorhanden ist. Siehe AuthScheme.
- Db Groups: Eine durch Kommas getrennte Liste der Namen einer oder mehrerer vorhandener Datenbankgruppen, denen der Datenbanknutzer bei der aktuellen Sitzung eine Verbindung mit IAM-Anmeldedaten herstellt. Siehe AuthScheme.
- BrowsableSchemas: Dieses Attribut schränkt die Schemas ein, die auf eine Teilmenge der verfügbaren Schemas gemeldet werden. Beispiel: BrowsableSchemas=SchemaA,SchemaB,SchemaC.
- Ignorierte Schemas: Filter zur Sichtbarkeitsbeschränkung, mit dem die Liste der Schemas nach Metadaten-Einstufung ausgeblendet wird. Beispiel: "information_schema, pg_catalog". Bei Schemanamen wird die Groß- und Kleinschreibung beachtet.
- Tabellentypen einschließen: Wenn der Wert auf "true" gesetzt ist, fragt der Anbieter die Typen einzelner Tabellen und Ansichten ab.
- Nullwerte entfernen: Wenn dieser Wert festgelegt ist, werden die Nullzeichen in Bulk-Vorgängen aus Zeichenwerten entfernt.
- Sichtbarkeit: Sichtbarkeitsfilter zum Filtern von freigegebenen Metadaten nach Tabellen mit Berechtigungen für den aktuellen Nutzer. Der Filter "SELECT,INSERT" beschränkt beispielsweise die Metatdata-Sichtbarkeit nur auf die Tabellen, auf die der aktuelle Nutzer für SELECT- und INSERT-Vorgänge zugreifen kann. Unterstützte Berechtigungswerte sind SELECT, INSERT, UPDATE, DELETE und REFERENCES.
- Proxy verwenden: Klicken Sie dieses Kästchen an, um einen Proxyserver für die Verbindung und konfigurieren Sie die folgenden Werte:
-
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 werden soll.
- 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 die Details zum Proxyserver ein.
- Klicken Sie auf + Ziel hinzufügen.
- 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.
- Hostadresse: Geben Sie den Hostnamen oder die IP-Adresse des Ziels an.
- Klicken Sie optional auf + LABEL HINZUFÜGEN, um der Verbindung ein Label in Form eines Schlüssel/Wert-Paars hinzuzufügen.
- Tippen Sie auf Weiter.
- Geben Sie im Abschnitt Ziele die Details zum Remote-Host (Backend-System) ein, zu dem Sie eine Verbindung herstellen möchten.
- 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 konfigurieren, um nur bestimmte statische IP-Adressen zuzulassen.
Wenn Sie weitere Ziele eingeben möchten, klicken Sie auf + ZIEL HINZUFÜGEN.
- Tippen Sie auf Weiter.
- Destination Type: Wählen Sie einen Destination Type aus.
-
Geben Sie im Abschnitt Authentifizierung die Authentifizierungsdetails ein.
- Wählen Sie einen Authentifizierungstyp aus und geben Sie die relevanten Details ein.
Die folgenden Authentifizierungstypen werden von der Redshift-Verbindung unterstützt:
- Nutzername und Passwort
- Tippen Sie auf WEITER.
Informationen zum Konfigurieren dieser Authentifizierungstypen finden Sie unter Authentifizierung konfigurieren.
- Wählen Sie einen Authentifizierungstyp aus und geben Sie die relevanten Details ein.
- Überprüfen: Prüfen Sie Ihre Verbindungs- und Authentifizierungsdetails.
- Klicken Sie auf Erstellen.
Authentifizierung konfigurieren
Geben Sie die Details basierend auf der zu verwendenden Authentifizierung ein.
-
Nutzername und Passwort
- Nutzername: Nutzername für den Connector
- Passwort: Secret Manager-Secret mit dem Passwort, das mit dem Connector verknüpft ist.
Beispiele für Verbindungskonfigurationen
In diesem Abschnitt sind die Beispielwerte für die verschiedenen Felder aufgeführt, die Sie beim Erstellen der Redshift-Verbindung konfigurieren.
Verbindungstyp der Basisauthentifizierung
In der folgenden Tabelle sind die Beispielwerte für die verschiedenen Felder aufgeführt, die Sie beim Erstellen der Redshift-Verbindung konfigurieren.
Feld | Beispielwert |
---|---|
Region | us-central1 |
Connector | Redshift-Connector |
Connector-Version | 1 |
Connector-Name | google-cloud-redshiftdb-basicauth-conn |
Dienstkonto | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
Datenbank | dev |
BrowsableSchemas | public,test |
Db-Gruppen | – |
NULL-Werte entfernen | Ja |
Transparenz | AUSWÄHLEN,EINFÜGEN |
Mindestanzahl von Knoten | 02 |
Maximale Anzahl von Knoten | 50 |
Hostadresse | redshift-cluster-xxx-integration.HOST_NAME.us-east-1.redshift.amazonaws.com |
Authentifizierung | Nutzerpasswort |
Nutzername | NUTZERNAME |
Passwort | PASSWORT |
Version | 1 |
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 keinen der Entitätsvorgänge unterstützt, werden diese 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 hat eine Aktion
einige Eingabeparameter und eine Ausgabe
. Es ist jedoch möglich, dass ein Connector keine Aktionen unterstützt. In diesem Fall ist die
Actions
-Liste leer.
Systembeschränkungen
Der Redshift-Connector kann pro Knoten drei Transaktionen pro Sekunde verarbeiten und drosselt alle Transaktionen, die über dieses Limit hinausgehen. Standardmäßig werden von Integration Connectors zwei Knoten (für eine bessere Verfügbarkeit) für eine Verbindung zugewiesen.
Informationen zu den für Integration Connectors geltenden Limits finden Sie unter Beschränkungen.
Aktionsbeispiele
Beispiel: Größeren Wert ermitteln
Dieses Beispiel zeigt, wie eine benutzerdefinierte Funktion ausgeführt wird. Das find_greater
vergleicht zwei Ganzzahlen und gibt die Ganzzahl zurück, die größer ist.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
find_greater
aus und klicken Sie auf Fertig. - Klicken Sie im Abschnitt Task Input der Aufgabe Connectors auf
connectorInputPayload
und geben Sie dann einen Wert ähnlich dem folgenden in das Feld FeldDefault Value
:{ "$1": 1.0, "$2": 5.0 }
Wenn die Aktion erfolgreich ausgeführt wurde, ist die connectorOutputPayload
der Connector-Aufgabe
hat einen Wert ähnlich dem folgenden:
[{ "bignum": 5.0 }]
Beispiele für Entitätsvorgänge
Beispiel: Listeneinträge einer Entität auflisten
In diesem Beispiel werden die Datensätze der Entität Users
aufgelistet.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wählen Sie in der Liste
Entity
die OptionUsers
aus. - Wählen Sie den Vorgang
List
aus und klicken Sie auf Fertig. - Im Bereich Aufgabeneingabe der Aufgabe Connectors können Sie die filterClause nach Bedarf festlegen.
Wenn die Filterklausel beispielsweise auf
employeeCode='5100' and startDate='2010-01-01 00:00:00'
, listet nur diese Einträge auf mit dem employeeCode 5100 und dem startDate 2010-01-01 00:00:00.
Beispiel: Einzelnen Datensatz aus einer Entität abrufen
In diesem Beispiel wird ein Datensatz von der Entität Users
abgerufen.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wählen Sie in der Liste
Entity
die OptionUser
aus. - Wählen Sie den Vorgang
Get
aus und klicken Sie auf Fertig. - Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf entityId und geben Sie dann
103032
in das Feld Standardwert ein.Hier ist
103032
der Primärschlüssel der EntitätUsers
.
Beispiel: Datensatz aus einer Entität löschen
In diesem Beispiel wird ein Datensatz aus der Entität Users
gelöscht.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wählen Sie in der Liste
Entity
die OptionUsers
aus. - Wählen Sie den Vorgang
Delete
aus und klicken Sie auf Fertig. - Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf entityId und geben Sie dann
113132
in das Feld Standardwert ein.Wenn die Entität zusammengesetzte Primärschlüssel hat, anstatt die entityId anzugeben, können Sie alternativ Legen Sie filterClause fest. 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.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wählen Sie in der Liste
Entity
die OptionUsers
aus. - Wählen Sie den Vorgang
Create
aus und klicken Sie auf Fertig. - Klicken Sie im Abschnitt Task Input der Aufgabe Connectors auf
connectorInputPayload
und geben Sie dann einen Wert ähnlich dem folgenden in das Feld FeldDefault Value
:{ "employeeCode": "5100", "startDate": "2010-01-01 00:00:00.0", "country": "US" }
Ist die Integration erfolgreich, wird im Feld connectorOutputPayload
der Connector-Aufgabe
erhalten Sie die Antwort des Erstellungsvorgangs.
Beispiel – Datensatz in einer Entität aktualisieren
In diesem Beispiel wird ein Datensatz in der Entität Users
aktualisiert.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wähle
Users
aus derEntity
-Liste aus. - Wählen Sie den Vorgang
Update
aus und klicken Sie auf Fertig. - Klicken Sie im Bereich Aufgabeneingabe der Aufgabe Connectors auf
connectorInputPayload
und geben Sie dann einen Wert ähnlich dem folgenden in das FeldDefault Value
ein:{ "country": "IN" }
- Klicken Sie im Bereich Task Input der Aufgabe Connectors auf entityId und
Geben Sie dann
113132
in das Feld Default Value (Standardwert) ein.Wenn die Entität zusammengesetzte Primärschlüssel hat, können Sie anstelle der entityId auch die filterClause festlegen. Beispiel:
employeeCode='5100' and startDate='2010-01-01 00:00:00'
Ist die Integration erfolgreich, wird im Feld connectorOutputPayload
der Connector-Aufgabe
erhalten Sie die Antwort des Aktualisierungsvorgangs.
Verbindungen mit Terraform erstellen
Sie können die Terraform-Ressource verwenden, um eine neue Verbindung zu erstellen.Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Eine Beispiel-Terraform-Vorlage für die Verbindungserstellung finden Sie unter Beispielvorlage.
Wenn Sie diese Verbindung mit Terraform erstellen, müssen Sie die folgenden Variablen in Ihrer Terraform-Konfigurationsdatei festlegen:
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Datenbank | STRING | Wahr | Der Name der Amazon Redshift-Datenbank. |
browsable_schemas | STRING | Falsch | Bei dieser Property sind die gemeldeten Schemas auf einen Teil der verfügbaren Schemas beschränkt. Beispiel: BrowsableSchemas=SchemaA,SchemaB,SchemaC. |
db_groups | STRING | Falsch | Eine durch Kommas getrennte Liste der Namen einer oder mehrerer vorhandener Datenbankgruppen, denen der Datenbanknutzer bei der aktuellen Sitzung eine Verbindung mit IAM-Anmeldedaten herstellt. Siehe AuthScheme. |
ignored_schemas | STRING | Falsch | Filter für Sichtbarkeitsbeschränkung, mit dem die Liste der Schemas durch Metadatenabfragen ausgeblendet wird. Beispiel: "information_schema, pg_catalog". Bei Schemanamen wird zwischen Groß- und Kleinschreibung unterschieden. |
include_table_types | BOOLEAN | Falsch | Wenn dieser Wert auf „true“ gesetzt ist, fragt der Anbieter die Typen einzelner Tabellen und Ansichten ab. |
strip_out_nulls | BOOLEAN | Falsch | Wenn dieser Parameter festgelegt ist, werden die Nullzeichen bei Bulk-Vorgängen aus Zeichenwerten entfernt. |
visibility | STRING | Falsch | Sichtbarkeitsfilter zum Filtern von freigegebenen Metadaten nach Tabellen mit Berechtigungen für den aktuellen Nutzer. Der Filter "SELECT,INSERT" beschränkt beispielsweise die Metatdata-Sichtbarkeit nur auf die Tabellen, auf die der aktuelle Nutzer für SELECT- und INSERT-Vorgänge zugreifen kann. Unterstützte Berechtigungswerte sind SELECT, INSERT, UPDATE, DELETE und REFERENCES. |
Redshift-Verbindung in einer Integration verwenden
Nachdem Sie die Verbindung erstellt haben, ist sie sowohl in Apigee Integration als auch in Application Integration verfügbar. Sie können die Verbindung über die Connectors-Aufgabe in einer Integration.
- Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Apigee Integration finden Sie unter Connectors-Aufgabe.
- Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in der Anwendungsintegration finden Sie unter Connectors-Aufgabe.
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
- Informationen zum Anhalten und Fortsetzen einer Verbindung
- Informationen zum Überwachen der Connector-Nutzung
- Weitere Informationen zum Aufrufen von Connector-Logs