Couchbase
Mit dem Couchbase-Connector können Sie eine Verbindung zu einer Couchbase-Datenbankinstanz herstellen und die unterstützten Datenbankvorgänge ausführen.
Unterstützte Versionen
Couchbase Server Version 4.0 und höher (Enterprise Edition oder Community Edition)
Couchbase Capella
Hinweise
Führen Sie vor der Verwendung des Couchbase-Connectors die folgenden Aufgaben aus:
- In Ihrem Google Cloud-Projekt:
- Weisen Sie dem Nutzer die IAM-Rolle roles/connectors.admin zu. Connector konfigurieren.
- 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.
- Erstellen Sie bei Bedarf einen Couchbase-Server. Weitere Informationen Siehe Schnellstart Couchbase Server. Informationen zu den Couchbase-APIs finden Sie im Dokument zur Couchbase REST API.
- Laden Sie bei Bedarf das SSL-Zertifikat herunter. Weitere Informationen finden Sie unter Sichere Verbindung mit TLS.
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 Couchbase 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 63 Zeichen haben.
- Geben Sie optional unter Beschreibung eine Beschreibung für die Verbindungsinstanz ein.
- Aktivieren Sie optional Cloud Logging.
und wählen Sie dann eine Logebene aus. Die Logebene ist standardmäßig auf
Error
festgelegt. - Dienstkonto: Wählen Sie ein Dienstkonto, das über die erforderlichen Rollen verfügt.
- 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.
- JSON-Parameter zulassen: Ermöglicht die Verwendung von JSON-Rohdaten in Parametern, wenn QueryPassthrough aktiviert ist.
- Analytics-Port: Der Port zum Herstellen einer Verbindung zum Couchbase Analytics-Endpunkt.
- Untergeordnetes Trennzeichen: Die Zeichen, die zum Angeben untergeordneter Tabellen verwendet werden.
- Cuchbase-Dienst: Bestimmt den Couchbase-Dienst, zu dem eine Verbindung hergestellt werden soll. Der Standardwert ist N1QL. Verfügbare Optionen sind N1QL und Analytics.
- RAM-Kontingent für Tabelle erstellen: Das standardmäßige RAM-Kontingent in Megabyte, das beim Einfügen von Buckets über die Syntax CREATE TABLE verwendet werden soll.
- Dataverse-Trennzeichen: Die Zeichen, die zur Bezeichnung von Analytics-Dataverses und Bereiche/Sammlungen verwendet werden.
- Flavor-Trennzeichen: Die Zeichen, die zum Kennzeichnen von Flavors verwendet werden.
- N1QL-Port: Der Port für die Verbindung zum Couchbase-N1QL-Endpunkt.
- Trennzeichen für Punkte: Die Zeichen, die zum Angeben der Hierarchie verwendet werden.
- Zeitlimit für Abfrageausführung: Setzt das serverseitige Zeitlimit für die Abfrage, das festlegt, wie lange Couchbase die Abfrage ausführt, bevor ein Zeitüberschreitungsfehler zurückgegeben wird.
- Strikter Vergleich: Passt an, wie genau Filter bei SQL-Eingabeabfragen in Couchbase-Abfragen übersetzt werden sollen. Dies kann auf eine durch Kommas getrennte Liste von Werten festgelegt werden, wobei jeder Wert einen der folgenden Werte haben kann: Datum, Zahl, boolescher Wert oder String.
- Langlebigkeit von Transaktionen: Gibt an, wie ein Dokument gespeichert werden muss, damit eine Transaktion erfolgreich ist. Gibt an, ob N1QL-Transaktionen beim Ausführen von Abfragen verwendet werden sollen.
- Transaktionszeitlimit: Setzt den Zeitraum, den eine Transaktion ausführen kann, bevor eine Zeitüberschreitung durch Couchbase erfolgt.
- Sammlungen für DDL verwenden: Gibt an, ob CREATE TABLE-Anweisungen Sammlungen anstelle von Flavors verwenden. Wird nur wirksam, wenn eine Verbindung zu Couchbase v7+ hergestellt wird und GenerateSchemaFiles auf OnCreate gesetzt ist.
- Transaktionen verwenden: Gibt an, ob beim Ausführen von Abfragen N1QL-Transaktionen verwendet werden sollen.
- JSON-Parameter validieren: Der Anbieter kann überprüfen, ob Stringparameter gültige JSON-Parameter sind, bevor die Abfrage an Couchbase gesendet wird.
- 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-Nutzer: 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 zurück.
- Geben Sie im Abschnitt Proxyserver 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 in der Liste Hostadresse aus, um den Hostnamen oder die IP-Adresse des Ziels 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 Couchbase-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.
- UseSSL: Dieses Feld legt fest, ob SSL aktiviert ist.
- SSLServerCert: SSLServerCert für Couchbase-Connector
- Auth-Schema: Auth-Schema für Couchbase-Connector
- Verbindungsmodus: Bestimmt, wie eine Verbindung zum Couchbase-Server hergestellt wird. Muss entweder
Direct
oderCloud
sein. FürCloud
ist SSL obligatorisch. Weitere Informationen Siehe Sichere Verbindungen mit TLS - DNS-Server: Bestimmt, welcher DNS-Server beim Abrufen von Couchbase-Cloud-Informationen verwendet werden soll. Beispiel:
8.8.8.8
.
Beispiele für Verbindungskonfiguration
In diesem Abschnitt werden die Beispielwerte für die verschiedenen Felder aufgeführt, die Sie beim Erstellen des Couchbase-Connectors konfigurieren.
SSL – Typ der Zertifikatverbindung
Feldname | Details |
---|---|
Region | us-central1 |
Connector | Couchbase |
Connector-Version | 1 |
Connector-Name | Couchbase-basic-auth-conn |
Dienstkonto | NAME-compute@developer.gserviceaccount.com |
Ausführlichkeit | 5 |
Einstellungen für Verbindungsknoten: Min./Max. Anzahl von Knoten | 2/50 |
SSL-Konfiguration aktivieren SSL | Wahr |
Trust Store | Privat |
Benutzerdefinierter Trust Store | Ein vollständiges PEM-Zertifikat (-----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----) |
Secret-Version | 1 |
Hostadresse | xx.1HOST_NAME.cloud.couchbase.com:18xxx |
Authentifizierung | Nutzerpasswort |
Nutzername | Nutzername |
Passwort | Passwort |
Versionen | 1 |
vConnection-Modus | Cloud |
DNS-Server | 192.0.2.0 |
OAuth-Schema | Einfach |
Verbindungstyp „Analytics Couchbase“
Feldname | Details |
---|---|
Region | us-central1 |
Connector | Couchbase |
Connector-Version | 1 |
Connector-Name | Couchbase-basic-auth-Analytics-conn |
Dienstkonto | NAME-compute@developer.gserviceaccount.com |
Analytics-Port | 18095 |
Couchbase-Dienst | Analyse |
Ausführlichkeit | 5 |
Einstellungen für Verbindungsknoten: Mindest-/Maximalanzahl von Knoten | 2/50 |
Hostadresse | xx.1HOST_NAME.cloud.couchbase.com:18095 |
Authentifizierung | Nutzerpasswort |
Nutzername | Nutzername |
Passwort | Passwort |
Versionen | 1 |
vConnection-Modus | Cloud |
DNS-Server | 192.0.2.0 |
OAuth-Schema | Einfach |
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. Unterstützt ein Connector jedoch keine Entitätsvorgänge, Vorgänge sind nicht in der
Operations
-Liste 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.
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, werden diese hier aufgeführt.
in der Spalte
Actions
des DialogfeldsConfigure connector task
. - 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:
- Folgen Sie der detaillierten Anleitung zum Hinzufügen einer Connectors-Aufgabe.
- Wählen Sie beim Konfigurieren der Connector-Aufgabe als Typ der auszuführenden Aktion die Option Aktionen aus.
- Wählen Sie in der Liste Aktion die Option Benutzerdefinierte Abfrage ausführen aus und klicken Sie dann auf Fertig.
- Maximieren Sie den Bereich Task Input und führen Sie dann die folgenden Schritte aus:
- 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. - Geben Sie im Feld Maximale Zeilenanzahl die maximale Anzahl von Zeilen ein, die von der Datenbank zurückgegeben werden sollen.
Standardwert:
25
. - Klicken Sie auf Benutzerdefiniertes Skript bearbeiten, um die benutzerdefinierte Abfrage zu aktualisieren. Das Dialogfeld Skripteditor wird geöffnet.
- 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 SpalteLastName
angegebenen Werten entsprechen:SELECT * FROM Employees where LastName=?
- 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.
So fügen Sie Abfrageparameter hinzu:
- Wählen Sie in der Liste Typ den Datentyp des Parameters aus.
- Geben Sie im Feld Wert den Wert des Parameters ein.
- Wenn Sie mehrere Parameter hinzufügen möchten, klicken Sie auf + Suchparameter hinzufügen.
- Geben Sie im Feld Zeitüberschreitung nach die Anzahl der Sekunden ein, die bis zur Ausführung der Abfrage gewartet werden soll.
Systemeinschränkungen
Der Couchbase-Connector kann 25 Transaktionen pro Sekunde verarbeiten, pro Knoten, und throttles Transaktionen über diesen Grenzwert hinaus. Standardmäßig weist Integration Connectors einer Verbindung 2 Knoten zu (für bessere Verfügbarkeit).
Informationen zu den für Integration Connectors geltenden Limits finden Sie unter Beschränkungen.
Aktionen
In diesem Abschnitt werden die vom Connector unterstützten Aktionen aufgeführt. Um zu verstehen, wie die siehe Beispiele für Aktionen.
Aktion „AddDocument“
Durch diese Aktion werden der Couchbase Dokumente hinzugefügt.
Eingabeparameter der Aktion „AddDocument“
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket-Name | String | Ja | Der Bucket, in den das Dokument eingefügt werden soll. |
SourceTable | Object | Nein | Der Name der temporären Tabelle mit den Spalten „ID“ und „Dokument“. Erforderlich, wenn keine ID angegeben ist. |
ID | String | Nein | Der Primärschlüssel, unter dem das Dokument eingefügt werden soll. Erforderlich, wenn keine SourceTable angegeben ist. |
Dokument | String | Nein | Der JSON-Text des einzufügenden Dokuments. Erforderlich, wenn keine SourceTable angegeben ist. |
Ausgabeparameter der Aktion „AddDocument“
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
So konfigurieren Sie beispielsweise die Aktion AddDocument
.
Siehe Aktionsbeispiele.
CreateCollection-Aktion
Durch diese Aktion wird eine Sammlung in einem vorhandenen Bereich erstellt.
Eingabeparameter der Aktion „CreateCollection“
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket | String | Ja | Der Name des Buckets, der die Sammlung enthält. |
Umfang | String | Ja | Der Name des Bereichs, der die Sammlung enthält. |
Name | String | Ja | Der Name der zu erstellenden Sammlung. |
Ausgabeparameter der Aktion CreateCollection
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
Ein Beispiel zum Konfigurieren der CreateCollection
-Aktion finden Sie unter Beispiele für Aktionen.
DeleteCollection-Aktion
Durch diese Aktion wird eine Sammlung in einem vorhandenen Bereich gelöscht.
Eingabeparameter der DeleteCollection-Aktion
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket | String | Wahr | Der Name des Buckets, der die Sammlung enthält. |
Umfang | String | Wahr | Der Name des Bereichs, der die Sammlung enthält. |
Name | String | Wahr | Der Name der zu löschenden Sammlung. |
Ausgabeparameter der DeleteCollection-Aktion
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
So konfigurieren Sie beispielsweise die Aktion DeleteCollection
.
Siehe Aktionsbeispiele.
CreateScope-Aktion
Durch diese Aktion wird ein Bereich in einem vorhandenen Bucket erstellt.
Eingabeparameter der Aktion „CreateScope“
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket | String | Ja | Der Name des Buckets, der den Bereich enthält |
Name | String | Ja | Der Name des zu erstellenden Bereichs. |
Ausgabeparameter der CreateScope-Aktion
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
So konfigurieren Sie beispielsweise die Aktion CreateScope
.
Siehe Aktionsbeispiele.
DeleteScope-Aktion
Durch diese Aktion werden ein Bereich und alle zugehörigen Sammlungen gelöscht.
Eingabeparameter der DeleteScope-Aktion
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket | String | Ja | Der Name des Buckets, der den Bereich enthält. |
Name | String | Ja | Der Name des zu löschenden Bereichs. |
Ausgabeparameter der DeleteScope-Aktion
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
So konfigurieren Sie beispielsweise die Aktion DeleteScope
.
Siehe Aktionsbeispiele.
Aktion „ListIndices“
Dadurch werden alle in Couchbase verfügbaren Indizes aufgelistet.
Eingabeparameter der Aktion „ListIndices“
–Ausgabeparameter der Aktion ListIndices
Bei erfolgreicher Aktion wird der Status 200 (OK) zurückgegeben.
So konfigurieren Sie beispielsweise die Aktion ListIndices
.
Siehe Aktionsbeispiele.
Aktion „ManageIndices“
Mit dieser Aktion wird ein Index in einem Bucket erstellt oder gelöscht.
Eingabeparameter der Aktion „ManageIndices“
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
Bucket-Name | String | Ja | Der Ziel-Bucket, aus dem der Index erstellt oder gelöscht werden soll. |
ScopeName | Objekt | Nein | Der Zielbereich, aus dem der Index erstellt oder gelöscht werden soll (Couchbase Version 7 und höher) |
CollectionName | String | Nein | Die Zielsammlung, aus der der Index erstellt oder gelöscht werden soll (Couchbase-Version 7 und höher) |
Aktion | String | Ja | Gibt an, welche Aktion für den Index ausgeführt werden soll. Kann „Erstellen“ oder „Ablegen“ sein. |
Ausdrücke | String | Nein | Eine Liste von Ausdrücken oder Funktionen, die als JSON codiert sind und auf denen der Index basiert. Mindestens ein Wert ist erforderlich, wenn „IsPrimary“ auf „false“ gesetzt und die Aktion „Create“ (Erstellen) ist. |
Name | String | Nein | Der Name des zu erstellenden oder zu löschenden Index, erforderlich, wenn „IsPrimary“ auf „false“ gesetzt ist. |
IsPrimary | String | Nein | Gibt an, ob der Index ein Primärindex sein soll.Der Standardwert ist „true“. |
Filter | String | Nein | Eine Liste von Filtern, die als JSON codiert sind und auf den Index angewendet werden sollen. |
IndexType | String | Nein | Der zu erstellende Indextyp, kann GSI oder Ansicht sein. Er wird nur verwendet, wenn die Aktion "Erstellen" lautet. Der Standardwert ist GSI. |
ViewName | String | Nein | Eingestellt, nur aus Kompatibilitätsgründen enthalten. Keine Auswirkung |
Knoten | String | Nein | Eine als JSON codierte Liste von Knoten, die den Index enthalten sollen, muss den Port enthalten. Wird nur verwendet, wenn ist „Erstellen“. |
NumReplica | String | Nein | Gibt an, wie viele Replikate unter den Indexknoten im Cluster erstellt werden sollen. |
Ausgabeparameter der Aktion „ManageIndices“
Bei Erfolg gibt diese Aktion den Status 200 (OK) zurück.
So konfigurieren Sie beispielsweise die Aktion ManageIndices
.
Siehe Aktionsbeispiele.
Aktion „ExecuteCustomQuery“
Mit dieser Aktion können Sie eine benutzerdefinierte Abfrage ausführen.
So erstellen Sie eine benutzerdefinierte Abfrage:
- Folgen Sie der detaillierten Anleitung zum Hinzufügen einer Connectors-Aufgabe.
- Wählen Sie beim Konfigurieren der Connector-Aufgabe als Typ der auszuführenden Aktion die Option Aktionen aus.
- Wählen Sie in der Liste Aktion die Option Benutzerdefinierte Abfrage ausführen aus und klicken Sie dann auf Fertig.
- Maximieren Sie den Bereich Task Input und führen Sie dann die folgenden Schritte aus:
- 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. - Geben Sie im Feld Maximale Zeilenanzahl die maximale Anzahl von Zeilen ein, die von der Datenbank zurückgegeben werden sollen.
Standardwert:
25
. - Klicken Sie auf Benutzerdefiniertes Skript bearbeiten, um die benutzerdefinierte Abfrage zu aktualisieren. Das Dialogfeld Skripteditor wird geöffnet.
- 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 SpalteLastName
angegebenen Werten entsprechen:SELECT * FROM Employees where LastName=?
- 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.
So fügen Sie Abfrageparameter hinzu:
- Wählen Sie in der Liste Typ den Datentyp des Parameters aus.
- Geben Sie im Feld Wert den Wert des Parameters ein.
- Wenn Sie mehrere Parameter hinzufügen möchten, klicken Sie auf + Suchparameter hinzufügen.
- Geben Sie im Feld Zeitüberschreitung nach die Anzahl der Sekunden ein, die bis zur Ausführung der Abfrage gewartet werden soll.
Bei erfolgreicher Ausführung gibt diese Aktion den Status 200 (OK) mit einem Antworttext mit den Abfrageergebnissen zurück.
Beispiele für Aktionen
In diesem Abschnitt wird beschrieben, wie Sie einige Aktionen in diesem Connector ausführen.
Beispiel – Dokument hinzufügen
In diesem Beispiel wird ein Dokument in einem Couchbase-Bucket hinzugefügt.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
AddDocument
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
:{ "Document": "{\"ID\":10,\"Name\":\"TestDoc\"}", "BucketName": "CouchbaseTestBucket", "ID": "Test" }
Wenn die Aktion erfolgreich war, hat der Antwortparameter connectorOutputPayload
der Aufgabe AddDocument
einen Wert, der in etwa so aussieht:
[{ "RowsAffected": "1" }]
Beispiel: Sammlung erstellen
In diesem Beispiel wird eine Sammlung erstellt.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
CreateCollection
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
:{ "bucket": "CouchbaseTestBucket", "scope": "TestScope", "name": "CollectionFromGoogleCloud" }
In diesem Beispiel wird eine Sammlung unter der TestScope
erstellt. Wenn die Aktion erfolgreich ist,
connectorOutputPayload
-Antwort der Aufgabe von CreateCollection
hat einen Wert ähnlich dem folgenden:
[{ "Success": true, "scope": null, "uid": null, "collection": null, "collections.uid": null, "maxTTL": null, "history": null }]
Beispiel – Sammlung löschen
In diesem Beispiel wird eine Sammlung gelöscht.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
DeleteCollection
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:{ "bucket": "CouchbaseTestBucket", "scope": "TestScope", "name": "CollectionFromGoogleCloud" }
In diesem Beispiel wird eine Sammlung unter TestScope
gelöscht. Wenn die Aktion erfolgreich war, hat der Antwortparameter connectorOutputPayload
der Aufgabe CreateCollection
einen Wert, der in etwa so aussieht:
[{ "Success": true, "uid": "12" }]
Beispiel: Umfang erstellen
In diesem Beispiel wird ein Bereich erstellt.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
CreateScope
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
:{ "bucket": "CouchbaseTestBucket", "name": "ScopeFromGoogleCloud" }
In diesem Beispiel wird ein Bereich unter CouchbaseTestBucket
erstellt. Wenn die Aktion erfolgreich ist,
connectorOutputPayload
-Antwort der Aufgabe von CreateScope
hat einen Wert ähnlich dem folgenden:
[{ "Success": true, "name": null, "uid": null, "collections": null, "collections.name": null, "collections.uid": null, "collections.maxTTL": null, "collections.history": null }]
Beispiel – Bereich löschen
In diesem Beispiel wird ein Bereich gelöscht.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
DeleteScope
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
:{ "bucket": "CouchbaseTestBucket", "name": "ScopeFromGoogleCloud" }
In diesem Beispiel wird der Bereich ScopeFromGoogleCloud
gelöscht. Wenn die Aktion erfolgreich ist,
connectorOutputPayload
-Antwort der Aufgabe von DeleteScope
hat einen Wert ähnlich dem folgenden:
[{ "Success": true, "uid": "10" }]
Beispiel: Listenindexe
In diesem Beispiel werden alle in Couchbase verfügbaren Indizes aufgelistet.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
ListIndices
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:{ }
Wenn die Aktion erfolgreich ist, wird die connectorOutputPayload
-Antwort der Aufgabe ListIndices
hat einen Wert ähnlich dem folgenden:
[{ "id": "3d8a78cd2e302ac2", "datastore_id": "http://127.0.0.1:8091", "namespace_id": "default", "bucket_id": null, "scope_id": null, "keyspace_id": "CouchbaseTestBucket", "index_key": "", "condition": null, "is_primary": "false", "name": "test", "state": "online", "using": "gsi" }, { "id": "d6ce8c103b97a00d", "datastore_id": "http://127.0.0.1:8091", "namespace_id": "default", "bucket_id": "CouchbaseTestBucket", "scope_id": "TestScope", "keyspace_id": "CouchBaseDatatypes", "index_key": "", "condition": null, "is_primary": "true", "name": "#primary", "state": "online", "using": "gsi" }, { "id": "58c25aef49dd32b3", "datastore_id": "http://127.0.0.1:8091", "namespace_id": "default", "bucket_id": "CouchbaseTestBucket", "scope_id": "TestScope", "keyspace_id": "TestCollection", "index_key": "", "condition": null, "is_primary": "false", "name": "SearchIndexTest_1", "state": "online", "using": "fts" }]
Beispiel – Indexe verwalten
In diesem Beispiel wird ein Index im angegebenen Bucket gelöscht.
- Klicken Sie im Dialogfeld
Configure connector task
aufActions
. - Wählen Sie die Aktion
ManageIndices
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
:{ "BucketName": "CouchbaseTestBucket", "Action": "DROP", "Name": "CouchBaseTestIndex" }
Wenn die Aktion erfolgreich ist,
connectorOutputPayload
-Antwort der Aufgabe von ManageIndices
hat einen Wert ähnlich dem folgenden:
[{ "Success": "true" }]
Beispiele für Entitätsvorgänge
In diesem Abschnitt wird gezeigt, wie Sie einige Entitätsvorgänge in diesem Connector ausführen.
Beispiel – Alle Einträge auflisten
In diesem Beispiel werden alle Datensätze in der Entität TestCollection
aufgelistet.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wähle
TestCollection
aus derEntity
-Liste aus. - Wählen Sie den Vorgang
List
aus und klicken Sie auf Fertig. - Optional können Sie im Bereich Aufgabeneingabe der Aufgabe Connectors einen Filter angeben, um den Ergebnissatz einzugrenzen. Geben Sie den Wert der Filterklausel immer in einfachen Anführungszeichen (') an.
Beispiel – Datensatz aus einer Entität abrufen
In diesem Beispiel wird ein Datensatz mit der angegebenen ID von der Entität TestCollection
abgerufen.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wählen Sie in der Liste
Entity
die OptionTestCollection
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
120
in das Feld Standardwert ein.Hier ist
120
eine eindeutige Eintrags-ID in der EntitätTestCollection
.
Beispiel – Datensatz in einer Entität aktualisieren
In diesem Beispiel wird ein Datensatz in der Entität TestCollection
aktualisiert.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wähle
TestCollection
aus derEntity
-Liste aus. - Wählen Sie den Vorgang
Update
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
:{ "COL_TEXT": "CouchBase Update" }
- Klicken Sie auf entityId und geben Sie dann
120
in das Feld Standardwert ein.Ist die Integration erfolgreich, enthält das Feld
connectorOutputPayload
der Connector-Aufgabe , der in etwa so aussieht:[{ "Document.Id": "120" }]
Beispiel – Datensatz aus einer Entität löschen
In diesem Beispiel wird der Datensatz mit der angegebenen ID in der Entität TestCollection
gelöscht.
- Klicken Sie im Dialogfeld
Configure connector task
aufEntities
. - Wähle
TestCollection
aus derEntity
-Liste aus. - Wählen Sie den Vorgang
Delete
aus und klicken Sie auf Fertig. - Klicken Sie im Bereich Task Input der Aufgabe Connectors auf entityId und
Geben Sie dann
20
in das Feld Default Value (Standardwert) ein.
Bekannte Probleme
Der create
-Vorgang wird für Entitäten nicht unterstützt.
Verbindungen mit Terraform erstellen
Mit dem Terraform-Code Ressource, um eine neue Verbindung zu 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 in der Terraform-Konfigurationsdatei die folgenden Variablen festlegen:
Parametername | Datentyp | Erforderlich | Beschreibung |
---|---|---|---|
allow_jsonparameters | BOOLEAN | Falsch | Ermöglicht die Verwendung von JSON-Rohdaten in Parametern, wenn QueryPassthrough aktiviert ist. |
analytics_port | STRING | Falsch | Der Port für die Verbindung zum Couchbase Analytics-Endpunkt. |
child_separator | STRING | Falsch | Das Zeichen oder die Zeichen, die zur Kennzeichnung untergeordneter Tabellen verwendet werden. |
couchbase_service | ENUM | Falsch | Legt den Couchbase-Dienst fest, zu dem eine Verbindung hergestellt werden soll. Der Standardwert ist N1QL. Verfügbare Optionen sind N1QL und Analytics. Unterstützte Werte: N1QL, Analytics |
create_table_ram_quota | STRING | Falsch | Das Standard-RAM-Kontingent in Megabyte, das beim Einfügen von Buckets über die Syntax CREATE TABLE verwendet wird. |
dataverse_separator | STRING | Falsch | Das Zeichen, das bzw. die zur Kennzeichnung von Analytics-Dataverses und -Bereichen/-Sammlungen verwendet werden. |
flavor_separator | STRING | Falsch | Das Zeichen oder die Zeichen, das bzw. die zur Kennzeichnung von Geschmacksrichtungen verwendet werden. |
n1_qlport | STRING | Falsch | Der Port für die Verbindung zum Couchbase N1QL-Endpunkt. |
periods_separator | STRING | Falsch | Zeichen, mit dem/denen die Hierarchie gekennzeichnet wird. |
query_execution_timeout | STRING | Falsch | Damit wird die serverseitige Zeitüberschreitung für die Abfrage festgelegt. Diese bestimmt, wie lange Couchbase die Abfrage ausführt, bevor ein Zeitüberschreitungsfehler zurückgegeben wird. |
strict_comparison | STRING | Falsch | Passt an, wie genau Filter aus SQL-Eingabeabfragen in Couchbase-Abfragen übersetzt werden sollen. Dies kann auf eine durch Kommas getrennte Liste von Werten festgelegt werden, wobei jeder Wert einen der folgenden Werte haben kann: Datum, Zahl, boolescher Wert oder String. |
transaction_durability | STRING | Falsch | Gibt an, wie ein Dokument gespeichert werden muss, damit eine Transaktion erfolgreich ist. Gibt an, ob N1QL-Transaktionen beim Ausführen von Abfragen verwendet werden sollen. |
transaction_timeout | STRING | Falsch | Damit wird der Zeitraum festgelegt, in dem eine Transaktion ausgeführt werden kann, bevor von Couchbase eine Zeitüberschreitung auftritt. |
use_collections_for_ddl | BOOLEAN | Falsch | Gibt an, ob CREATE TABLE-Anweisungen Sammlungen anstelle von Flavors verwenden. Wird nur wirksam, wenn eine Verbindung zu Couchbase v7+ hergestellt wird und GenerateSchemaFiles auf OnCreate gesetzt ist. |
use_transactions | STRING | Falsch | Gibt an, ob N1QL-Transaktionen beim Ausführen von Abfragen verwendet werden sollen. |
validate_jsonparameters | BOOLEAN | Falsch | Der Anbieter kann überprüfen, ob Stringparameter gültige JSON-Parameter sind, bevor die Abfrage an Couchbase gesendet wird. |
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 Authentifizierungstyp, der für die Authentifizierung beim ProxyServer-Proxy verwendet werden soll. 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 werden soll. |
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 |
Ausführlichkeit | STRING | Falsch | Ausführlichkeitsstufe für Verbindung: zwischen 1 und 5. Bei einem höheren Ausführlichkeitsgrad werden alle Kommunikationsdetails (Anfrage-, Antwort- und SSL-Zertifikate) protokolliert. |
Couchbase-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 der Apigee-Integration finden Sie unter Connectors-Aufgabe.
- Informationen zum Erstellen und Verwenden der Connectors-Aufgabe in Application Integration finden Sie unter Tasks für 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
- Informationen zum Anhalten und Fortsetzen einer Verbindung
- Informationen zum Überwachen der Connector-Nutzung
- Weitere Informationen zum Aufrufen von Connector-Logs