Couchbase
Konektor Couchbase memungkinkan Anda terhubung ke instance database Couchbase dan melakukan operasi database yang didukung.
Versi yang didukung
Couchbase Server versi 4.0 dan yang lebih baru (Enterprise Edition atau Community Edition).
Couchbase Capella
Sebelum memulai
Sebelum menggunakan konektor Couchbase, lakukan tugas berikut:
- Di project Google Cloud Anda:
- Pastikan konektivitas jaringan sudah disiapkan. Untuk mengetahui informasi tentang pola jaringan, lihat Konektivitas jaringan.
- Berikan peran IAM roles/connectors.admin kepada pengguna yang mengonfigurasi konektor.
- Berikan peran IAM berikut ke akun layanan yang ingin Anda gunakan untuk konektor:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Akun layanan adalah jenis Akun Google khusus yang dimaksudkan untuk mewakili pengguna non-manusia yang perlu diautentikasi dan diberi otorisasi untuk mengakses data di Google API. Jika tidak memiliki akun layanan, Anda harus membuat akun layanan. Untuk informasi selengkapnya, lihat Membuat akun layanan.
- Aktifkan layanan berikut:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(Connectors API)
Untuk memahami cara mengaktifkan layanan, lihat Mengaktifkan layanan.
Jika layanan atau izin ini belum diaktifkan untuk project Anda sebelumnya, Anda akan diminta untuk mengaktifkannya saat mengonfigurasi konektor.
- Jika diperlukan, buat server Couchbase. Untuk mengetahui informasi selengkapnya, lihat Panduan Memulai Server Couchbase. Untuk informasi tentang Couchbase API, lihat Dokumen Couchbase REST API.
- Jika diperlukan, download sertifikat SSL. Untuk informasi selengkapnya, lihat Koneksi Aman dengan TLS.
Mengonfigurasi konektor
Untuk mengonfigurasi konektor, Anda harus membuat koneksi ke sumber data (sistem backend). Koneksi bersifat khusus untuk sumber data. Artinya, jika memiliki banyak sumber data, Anda harus membuat koneksi terpisah untuk setiap sumber data. Untuk membuat koneksi, lakukan langkah-langkah berikut:
- Di konsol Cloud, buka halaman Konektor Integrasi > Koneksi, lalu pilih atau buat project Google Cloud.
- Klik + CREATE NEW untuk membuka halaman Create Connection.
- Di bagian Location, pilih lokasi untuk koneksi.
- Region: Pilih lokasi dari menu drop-down.
Untuk mengetahui daftar semua region yang didukung, lihat Lokasi.
- Klik NEXT.
- Region: Pilih lokasi dari menu drop-down.
- Di bagian Connection Details, selesaikan tindakan berikut:
- Konektor: Pilih Couchbase dari menu drop-down Konektor yang tersedia.
- Versi konektor: Pilih versi Konektor dari menu drop-down versi yang tersedia.
- Di kolom Connection Name, masukkan nama untuk instance Connection.
Nama koneksi harus memenuhi kriteria berikut:
- Nama koneksi dapat menggunakan huruf, angka, atau tanda hubung.
- Huruf harus berupa huruf kecil.
- Nama koneksi harus diawali dengan huruf dan diakhiri dengan huruf atau angka.
- Nama koneksi tidak boleh melebihi 49 karakter.
- Secara opsional, masukkan Description untuk instance koneksi.
- Secara opsional, aktifkan Cloud Logging, lalu pilih level log. Secara default, level log ditetapkan ke
Error
. - Service Account: Pilih akun layanan yang memiliki peran yang diperlukan.
- Secara opsional, konfigurasikan Setelan node koneksi:
- Jumlah node minimum: Masukkan jumlah minimum node koneksi.
- Maximum number of nodes: Masukkan jumlah maksimum node koneksi.
Node adalah unit (atau replika) koneksi yang memproses transaksi. Semakin banyak node yang diperlukan untuk memproses lebih banyak transaksi untuk koneksi, dan sebaliknya, semakin sedikit node yang diperlukan untuk memproses lebih sedikit transaksi. Untuk memahami pengaruh node terhadap harga konektor, lihat Harga untuk node koneksi. Jika Anda tidak memasukkan nilai apa pun, secara default, node minimum ditetapkan ke 2 (untuk ketersediaan yang lebih baik) dan node maksimum ditetapkan ke 50.
- Allow JSON Parameters: Mengizinkan JSON mentah digunakan dalam parameter saat QueryPassthrough diaktifkan.
- Port Analytics: Port untuk terhubung ke Endpoint Couchbase Analytics.
- Pemisah Turunan: Karakter atau beberapa karakter yang digunakan untuk menunjukkan tabel turunan.
- Layanan Couchbase: Menentukan layanan Couchbase yang akan dihubungkan. Default-nya adalah N1QL. Opsi yang tersedia adalah N1QL dan Analytics.
- Create Table Ram Quota: Kuota RAM default, dalam megabyte, yang akan digunakan saat menyisipkan bucket melalui sintaksis CREATE TABLE.
- Pemisah Dataverse: Karakter atau beberapa karakter yang digunakan untuk menunjukkan cakupan/koleksi dan dataverse Analytics.
- Pemisah Rasa: Karakter atau beberapa karakter yang digunakan untuk menunjukkan rasa.
- Port N1QL: Port untuk terhubung ke Endpoint N1QL Couchbase.
- Pemisah Titik: Karakter atau beberapa karakter yang digunakan untuk menunjukkan hierarki.
- Waktu Tunggu Eksekusi Kueri: Ini menetapkan waktu tunggu sisi server untuk kueri, yang mengatur berapa lama Couchbase akan mengeksekusi kueri sebelum menampilkan error waktu tunggu habis.
- Perbandingan Ketat: Menyesuaikan seberapa akurat menerjemahkan filter pada kueri input SQL menjadi kueri Couchbase. Ini dapat ditetapkan ke daftar nilai yang dipisahkan koma, dengan setiap nilai dapat berupa salah satu dari: tanggal, angka, boolean, atau string.
- Durabilitas Transaksi: Menentukan cara dokumen harus disimpan agar transaksi berhasil. Menentukan apakah akan menggunakan transaksi N1QL saat menjalankan kueri.
- Waktu Habis Transaksi: Ini menetapkan jumlah waktu yang dapat dieksekusi transaksi sebelum waktu tunggunya habis oleh Couchbase.
- Use Collections For DDL: Apakah akan mengasumsikan bahwa pernyataan CREATE TABLE menggunakan koleksi, bukan ragam. Hanya berlaku saat terhubung ke Couchbase v7+ dan GenerateSchemaFiles ditetapkan ke OnCreate.
- Use Transactions: Menentukan apakah akan menggunakan transaksi N1QL saat menjalankan kueri.
- Validasi Parameter JSON: Memungkinkan penyedia memvalidasi bahwa parameter string adalah JSON yang valid sebelum mengirim kueri ke Couchbase.
- Gunakan proxy: Centang kotak ini untuk mengonfigurasi server proxy untuk koneksi dan konfigurasi nilai berikut:
-
Proxy Auth Scheme: Pilih jenis autentikasi untuk mengautentikasi dengan server proxy. Jenis autentikasi berikut didukung:
- Dasar: Autentikasi HTTP dasar.
- Digest: Ringkasan autentikasi HTTP.
- Pengguna Proxy: Nama pengguna yang akan digunakan untuk mengautentikasi dengan server proxy.
- Sandi Proxy: Secret Secret Manager dari sandi pengguna.
-
Proxy SSL Type: Jenis SSL yang akan digunakan saat terhubung ke server proxy. Jenis autentikasi berikut didukung:
- Otomatis: Setelan default. Jika URL adalah URL HTTPS, opsi Tunnel akan digunakan. Jika URL adalah URL HTTP, opsi NEVER akan digunakan.
- Selalu: Koneksi selalu mengaktifkan SSL.
- Tidak pernah: Koneksi tidak mengaktifkan SSL.
- Tunnel: Koneksi dilakukan melalui proxy tunneling. Server proxy membuka koneksi ke host jarak jauh dan traffic mengalir bolak-balik melalui proxy.
- Di bagian Server Proxy, masukkan detail server proxy.
- Klik + Tambahkan tujuan.
- Pilih Jenis Tujuan.
- Alamat host: Tentukan nama host atau alamat IP tujuan.
Jika Anda ingin membuat koneksi pribadi ke sistem backend, lakukan langkah berikut:
- Buat lampiran layanan PSC.
- Buat lampiran endpoint, lalu masukkan detail lampiran endpoint di kolom Alamat host.
- Alamat host: Tentukan nama host atau alamat IP tujuan.
- Secara opsional, klik + TAMBAHKAN LABEL untuk menambahkan label ke Koneksi dalam bentuk pasangan kunci/nilai.
- Klik NEXT.
- Di bagian Destinations, masukkan detail host jarak jauh (sistem backend) yang ingin Anda hubungkan.
- Jenis Tujuan: Pilih Jenis Tujuan.
- Pilih Host address dari daftar untuk menentukan nama host atau alamat IP tujuan.
- Jika Anda ingin membuat koneksi pribadi ke sistem backend, pilih Endpoint attachment dari daftar, lalu pilih lampiran endpoint yang diperlukan dari daftar Endpoint Attachment.
Jika ingin membuat koneksi publik ke sistem backend dengan keamanan tambahan, Anda dapat mempertimbangkan untuk mengonfigurasi alamat IP keluar statis untuk koneksi, lalu mengonfigurasi aturan firewall untuk hanya mengizinkan alamat IP statis tertentu.
Untuk memasukkan tujuan tambahan, klik +TAMBAHKAN TUJUAN.
- Klik NEXT.
- Jenis Tujuan: Pilih Jenis Tujuan.
-
Di bagian Authentication, masukkan detail autentikasi.
- Pilih Jenis autentikasi dan masukkan detail yang relevan.
Jenis autentikasi berikut didukung oleh koneksi Couchbase:
- Nama pengguna dan sandi
- Klik NEXT.
Untuk memahami cara mengonfigurasi jenis autentikasi ini, lihat Mengonfigurasi autentikasi.
- Pilih Jenis autentikasi dan masukkan detail yang relevan.
- Tinjau: Tinjau detail koneksi dan autentikasi Anda.
- Klik Create.
Mengonfigurasi autentikasi
Masukkan detail berdasarkan autentikasi yang ingin Anda gunakan.
-
Nama pengguna dan sandi
- Nama pengguna: Nama pengguna untuk konektor
- Sandi: Secret Manager Secret yang berisi sandi yang terkait dengan konektor.
- UseSSL: Kolom ini menetapkan apakah SSL diaktifkan.
- SSLServerCert: SSLServerCert untuk Konektor Couchbase
- Skema autentikasi: Skema autentikasi untuk Konektor Couchbase
- Mode Koneksi: Menentukan cara terhubung ke server Couchbase. Harus berupa
Direct
atauCloud
. UntukCloud
, SSL bersifat wajib. Untuk informasi selengkapnya, lihat Mengamankan koneksi dengan TLS. - Server DNS: Menentukan server DNS yang akan digunakan saat mengambil informasi Couchbase Cloud. Contoh,
8.8.8.8
.
Contoh konfigurasi koneksi
Bagian ini mencantumkan contoh nilai untuk berbagai kolom yang Anda konfigurasi saat membuat Konektor Couchbase.
SSL - Jenis koneksi sertifikat
Nama Kolom | Detail |
---|---|
Wilayah | us-central1 |
Konektor | Couchbase |
Versi Konektor | 1 |
Nama Konektor | Couchbase-basic-auth-conn |
Akun Layanan | NAME-compute@developer.gserviceaccount.com |
Tingkat Verbositas | 5 |
Setelan node koneksi: Jumlah node Min/Max | 2/50 |
Konfigurasi SSL Aktifkan SSL | Benar |
Trust Store | Pribadi |
Trust Store Kustom | Sertifikat PEM lengkap (-----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----) |
Versi rahasia | 1 |
Alamat Host | xx.1HOST_NAME.cloud.couchbase.com:18xxx |
Autentikasi | Sandi Pengguna |
Nama pengguna | nama pengguna |
Sandi | sandi |
versions | 1 |
Mode vConnection | Cloud |
Server DNS | 192.0.2.0 |
Skema OAuth | Dasar |
Jenis koneksi Couchbase Analytics
Nama Kolom | Detail |
---|---|
Wilayah | us-central1 |
Konektor | Couchbase |
Versi Konektor | 1 |
Nama Konektor | Couchbase-basic-auth-Analytics-conn |
Akun Layanan | NAME-compute@developer.gserviceaccount.com |
Port Analytics | 18095 |
Layanan Couchbase | Analytics |
Tingkat Verbositas | 5 |
Setelan node koneksi: Jumlah node Min/Max | 2/50 |
Alamat Host | xx.1HOST_NAME.cloud.couchbase.com:18095 |
Autentikasi | Sandi Pengguna |
Nama pengguna | nama pengguna |
Sandi | sandi |
versions | 1 |
Mode vConnection | Cloud |
Server DNS | 192.0.2.0 |
Skema OAuth | Dasar |
Entity, operasi, dan tindakan
Semua Konektor Integrasi menyediakan lapisan abstraksi untuk objek aplikasi yang terhubung. Anda hanya dapat mengakses objek aplikasi melalui abstraksi ini. Abstraksi ditampilkan kepada Anda sebagai entitas, operasi, dan tindakan.
- Entity: Entity dapat dianggap sebagai objek, atau kumpulan properti, dalam
aplikasi atau layanan yang terhubung. Definisi entitas berbeda dari konektor ke konektor. Misalnya, dalam konektor database, tabel adalah entitas, dalam
konektor server file, folder adalah entitas, dan dalam konektor sistem pesan,
antrean adalah entitas.
Namun, mungkin konektor tidak mendukung atau memiliki entity apa pun, dalam hal ini, daftar
Entities
akan kosong. - Operasi: Operasi adalah aktivitas yang dapat Anda lakukan pada entity. Anda dapat melakukan
salah satu operasi berikut pada entitas:
Memilih entitas dari daftar yang tersedia akan menghasilkan daftar operasi yang tersedia untuk entitas tersebut. Untuk deskripsi mendetail tentang operasi, lihat operasi entity tugas Konektor. Namun, jika konektor tidak mendukung operasi entitas apa pun, operasi yang tidak didukung tersebut tidak akan tercantum dalam daftar
Operations
. - Tindakan: Tindakan adalah fungsi kelas satu yang tersedia untuk integrasi
melalui antarmuka konektor. Tindakan memungkinkan Anda membuat perubahan pada satu atau beberapa entitas, dan
bervariasi dari satu konektor ke konektor lainnya. Biasanya, tindakan akan memiliki beberapa parameter input, dan parameter
output. Namun, konektor mungkin
tidak mendukung tindakan apa pun, dalam hal ini daftar
Actions
akan kosong.
Tindakan
Konektor ini mendukung eksekusi tindakan berikut:
- Prosedur dan fungsi tersimpan yang ditentukan pengguna. Jika Anda memiliki prosedur dan fungsi tersimpan di backend, prosedur dan fungsi tersebut akan tercantum
di kolom
Actions
pada dialogConfigure connector task
. - Kueri SQL kustom. Untuk menjalankan kueri SQL kustom, konektor menyediakan tindakan Execute custom query.
Untuk membuat kueri kustom, ikuti langkah-langkah berikut:
- Ikuti petunjuk mendetail untuk menambahkan tugas konektor.
- Saat Anda mengonfigurasi tugas konektor, pilih Tindakan pada jenis tindakan yang ingin Anda lakukan.
- Dalam daftar Action, pilih Execute custom query, lalu klik Done.
- Luaskan bagian Task input, lalu lakukan hal berikut:
- Di kolom Waktu tunggu setelah, masukkan jumlah detik untuk menunggu hingga kueri dieksekusi.
Nilai default:
180
detik. - Di kolom Jumlah baris maksimum, masukkan jumlah baris maksimum yang akan ditampilkan dari database.
Nilai default:
25
. - Untuk memperbarui kueri kustom, klik Edit Skrip Kustom. Dialog Script editor akan terbuka.
- Di dialog Editor skrip, masukkan kueri SQL, lalu klik Simpan.
Anda dapat menggunakan tanda tanya (?) dalam pernyataan SQL untuk mewakili satu parameter yang harus ditentukan dalam daftar parameter kueri. Misalnya, kueri SQL berikut memilih semua baris dari tabel
Employees
yang cocok dengan nilai yang ditentukan untuk kolomLastName
:SELECT * FROM Employees where LastName=?
- Jika telah menggunakan tanda tanya dalam kueri SQL, Anda harus menambahkan parameter dengan mengklik + Tambahkan Nama Parameter untuk setiap tanda tanya. Saat menjalankan integrasi, parameter ini akan mengganti tanda tanya (?) dalam kueri SQL secara berurutan. Misalnya, jika telah menambahkan tiga tanda tanya (?), Anda harus menambahkan tiga parameter dalam urutan.
Untuk menambahkan parameter kueri, lakukan tindakan berikut:
- Dari daftar Type, pilih jenis data parameter.
- Di kolom Value, masukkan nilai parameter.
- Untuk menambahkan beberapa parameter, klik + Tambahkan Parameter Kueri.
- Di kolom Waktu tunggu setelah, masukkan jumlah detik untuk menunggu hingga kueri dieksekusi.
Batasan sistem
Konektor Couchbase dapat memproses 25 transaksi per detik, per node, dan mencegah transaksi apa pun melebihi batas ini. Secara default, Konektor Integrasi mengalokasikan 2 node (untuk ketersediaan yang lebih baik) untuk koneksi.
Untuk mengetahui informasi tentang batas yang berlaku untuk Konektor Integrasi, lihat Batas.
Tindakan
Bagian ini mencantumkan tindakan yang didukung oleh konektor. Untuk memahami cara mengonfigurasi tindakan, lihat Contoh tindakan.
Tindakan AddDocument
Tindakan ini menambahkan dokumen di couchbase.
Parameter input tindakan AddDocument
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Nama Bucket | String | Ya | Bucket tempat dokumen akan disisipkan. |
SourceTable | Objek | Tidak | Nama tabel sementara yang berisi kolom ID dan Dokumen. Wajib diisi jika tidak ada ID yang ditentukan. |
ID | String | Tidak | Kunci utama untuk menyisipkan dokumen. Wajib ada jika SourceTable tidak ditentukan. |
Dokumen | String | Tidak | Teks JSON dokumen yang akan disisipkan. Wajib jika SourceTable tidak ditentukan. |
Parameter output tindakan AddDocument
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan AddDocument
,
lihat Contoh tindakan.
Tindakan CreateCollection
Tindakan ini membuat koleksi dalam cakupan yang ada.
Parameter input tindakan CreateCollection
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Bucket | String | Ya | Nama bucket yang berisi koleksi. |
Cakupan | String | Ya | Nama cakupan yang berisi koleksi. |
Nama | String | Ya | Nama koleksi yang akan dibuat. |
Parameter output tindakan CreateCollection
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan CreateCollection
,
lihat Contoh tindakan.
Tindakan DeleteCollection
Tindakan ini akan menghapus koleksi dalam cakupan yang ada.
Parameter input tindakan DeleteCollection
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Bucket | string | Benar | Nama bucket yang berisi koleksi. |
Cakupan | String | Benar | Nama cakupan yang berisi koleksi. |
Nama | string | Benar | Nama koleksi yang akan dihapus. |
Parameter output tindakan DeleteCollection
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan DeleteCollection
,
lihat Contoh tindakan.
Tindakan CreateScope
Tindakan ini membuat cakupan di bucket yang ada.
Parameter input tindakan CreateScope
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Bucket | String | Ya | Nama bucket yang berisi cakupan |
Nama | String | Ya | Nama cakupan yang akan dibuat. |
Parameter output tindakan CreateScope
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan CreateScope
,
lihat Contoh tindakan.
Tindakan DeleteScope
Tindakan ini akan menghapus cakupan dan semua koleksinya.
Parameter input tindakan DeleteScope
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Bucket | String | Ya | Nama bucket yang berisi cakupan. |
Nama | String | Ya | Nama cakupan yang akan dihapus. |
Parameter output tindakan DeleteScope
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan DeleteScope
,
lihat Contoh tindakan.
Tindakan ListIndices
Tindakan ini mencantumkan semua indeks yang tersedia di Couchbase.
Parameter input tindakan ListIndices
T/AParameter output tindakan ListIndices
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan ListIndices
,
lihat Contoh tindakan.
Tindakan ManageIndices
Tindakan ini membuat atau menghapus indeks di bucket.
Parameter input tindakan ManageIndices
Nama Parameter | Jenis Data | Wajib | Deskripsi |
---|---|---|---|
Nama Bucket | String | Ya | Bucket target tempat indeks dibuat atau dihapus. |
ScopeName | objek | Tidak | Cakupan target untuk membuat atau menghapus indeks (Couchbase versi 7 dan yang lebih baru) |
CollectionName | String | Tidak | Koleksi target untuk membuat atau menghapus indeks (Couchbase versi 7 dan yang lebih baru) |
Tindakan | String | Ya | Menentukan tindakan yang akan dilakukan pada indeks, dapat berupa Buat atau Hapus. |
Ekspresi | String | Tidak | Daftar ekspresi atau fungsi, yang dienkode sebagai JSON, yang akan menjadi dasar indeks. Setidaknya satu diperlukan jika IsPrimary ditetapkan ke salah dan tindakannya adalah Buat. |
Nama | String | Tidak | Nama indeks yang akan dibuat atau dihapus, diperlukan jika IsPrimary ditetapkan ke salah (false). |
IsPrimary | String | Tidak | Menentukan apakah indeks harus berupa indeks utama.Nilai defaultnya adalah true. |
Filter | String | Tidak | Daftar filter, yang dienkode sebagai JSON, untuk diterapkan pada indeks. |
IndexType | String | Tidak | Jenis indeks yang akan dibuat, dapat berupa GSI atau View, hanya digunakan jika tindakannya adalah Buat. Nilai defaultnya adalah GSI. |
ViewName | String | Tidak | Tidak digunakan lagi, disertakan hanya untuk kompatibilitas. Tidak melakukan apa pun. |
Node | String | Tidak | Daftar node yang dienkode sebagai JSON untuk berisi indeks harus berisi port. Hanya digunakan jika tindakannya adalah Buat. |
NumReplica | String | Tidak | Jumlah replika yang akan dibuat di antara node indeks dalam cluster. |
Parameter output tindakan ManageIndices
Tindakan ini menampilkan status 200 (OK) jika tindakan berhasil.
Misalnya, cara mengonfigurasi tindakan ManageIndices
,
lihat Contoh tindakan.
Tindakan ExecuteCustomQuery
Tindakan ini memungkinkan Anda menjalankan kueri kustom.
Untuk membuat kueri kustom, ikuti langkah-langkah berikut:
- Ikuti petunjuk mendetail untuk menambahkan tugas konektor.
- Saat Anda mengonfigurasi tugas konektor, pilih Tindakan pada jenis tindakan yang ingin Anda lakukan.
- Dalam daftar Action, pilih Execute custom query, lalu klik Done.
- Luaskan bagian Task input, lalu lakukan hal berikut:
- Di kolom Waktu tunggu setelah, masukkan jumlah detik untuk menunggu hingga kueri dieksekusi.
Nilai default:
180
detik. - Di kolom Jumlah baris maksimum, masukkan jumlah baris maksimum yang akan ditampilkan dari database.
Nilai default:
25
. - Untuk memperbarui kueri kustom, klik Edit Skrip Kustom. Dialog Script editor akan terbuka.
- Di dialog Editor skrip, masukkan kueri SQL, lalu klik Simpan.
Anda dapat menggunakan tanda tanya (?) dalam pernyataan SQL untuk mewakili satu parameter yang harus ditentukan dalam daftar parameter kueri. Misalnya, kueri SQL berikut memilih semua baris dari tabel
Employees
yang cocok dengan nilai yang ditentukan untuk kolomLastName
:SELECT * FROM Employees where LastName=?
- Jika telah menggunakan tanda tanya dalam kueri SQL, Anda harus menambahkan parameter dengan mengklik + Tambahkan Nama Parameter untuk setiap tanda tanya. Saat menjalankan integrasi, parameter ini akan mengganti tanda tanya (?) dalam kueri SQL secara berurutan. Misalnya, jika telah menambahkan tiga tanda tanya (?), Anda harus menambahkan tiga parameter dalam urutan.
Untuk menambahkan parameter kueri, lakukan tindakan berikut:
- Dari daftar Type, pilih jenis data parameter.
- Di kolom Value, masukkan nilai parameter.
- Untuk menambahkan beberapa parameter, klik + Tambahkan Parameter Kueri.
- Di kolom Waktu tunggu setelah, masukkan jumlah detik untuk menunggu hingga kueri dieksekusi.
Jika berhasil dieksekusi, tindakan ini akan menampilkan status 200 (OK) dengan isi respons yang memiliki hasil kueri.
Contoh tindakan
Bagian ini menjelaskan cara melakukan beberapa tindakan di konektor ini.
Contoh - Menambahkan dokumen
Contoh ini menambahkan dokumen di bucket Couchbase.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
AddDocument
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "Document": "{\"ID\":10,\"Name\":\"TestDoc\"}", "BucketName": "CouchbaseTestBucket", "ID": "Test" }
Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas AddDocument
akan memiliki nilai yang mirip dengan berikut:
[{ "RowsAffected": "1" }]
Contoh - Membuat koleksi
Contoh ini membuat koleksi.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
CreateCollection
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "bucket": "CouchbaseTestBucket", "scope": "TestScope", "name": "CollectionFromGoogleCloud" }
Contoh ini membuat koleksi di bagian TestScope
. Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas CreateCollection
akan memiliki nilai yang mirip dengan berikut:
[{ "Success": true, "scope": null, "uid": null, "collection": null, "collections.uid": null, "maxTTL": null, "history": null }]
Contoh - Menghapus koleksi
Contoh ini akan menghapus koleksi.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
DeleteCollection
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "bucket": "CouchbaseTestBucket", "scope": "TestScope", "name": "CollectionFromGoogleCloud" }
Contoh ini menghapus koleksi di bagian TestScope
. Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas CreateCollection
akan memiliki nilai yang mirip dengan berikut:
[{ "Success": true, "uid": "12" }]
Contoh - Membuat cakupan
Contoh ini membuat cakupan.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
CreateScope
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "bucket": "CouchbaseTestBucket", "name": "ScopeFromGoogleCloud" }
Contoh ini membuat cakupan di bagian CouchbaseTestBucket
. Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas CreateScope
akan memiliki nilai yang mirip dengan berikut:
[{ "Success": true, "name": null, "uid": null, "collections": null, "collections.name": null, "collections.uid": null, "collections.maxTTL": null, "collections.history": null }]
Contoh - Menghapus cakupan
Contoh ini menghapus cakupan.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
DeleteScope
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "bucket": "CouchbaseTestBucket", "name": "ScopeFromGoogleCloud" }
Contoh ini menghapus cakupan ScopeFromGoogleCloud
. Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas DeleteScope
akan memiliki nilai yang mirip dengan berikut:
[{ "Success": true, "uid": "10" }]
Contoh - Mencantumkan indeks
Contoh ini mencantumkan semua indeks yang tersedia di Couchbase.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
ListIndices
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ }
Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas ListIndices
akan memiliki nilai yang mirip dengan berikut:
[{ "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" }]
Contoh - Mengelola indeks
Contoh ini menghapus indeks di bucket yang ditentukan.
- Pada dialog
Configure connector task
, klikActions
. - Pilih tindakan
ManageIndices
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "BucketName": "CouchbaseTestBucket", "Action": "DROP", "Name": "CouchBaseTestIndex" }
Jika tindakan berhasil, parameter respons connectorOutputPayload
tugas ManageIndices
akan memiliki nilai yang mirip dengan berikut:
[{ "Success": "true" }]
Contoh operasi entity
Bagian ini menunjukkan cara melakukan beberapa operasi entity di konektor ini.
Contoh - Mencantumkan semua data
Contoh ini mencantumkan semua data dalam entitas TestCollection
.
- Pada dialog
Configure connector task
, klikEntities
. - Pilih
TestCollection
dari daftarEntity
. - Pilih operasi
List
, lalu klik Selesai. - Secara opsional, di bagian Input Tugas pada tugas Konektor, Anda dapat memfilter set hasil dengan menentukan klausa filter. Tentukan nilai klausa filter selalu dalam tanda kutip tunggal (').
Contoh - Mendapatkan data dari entity
Contoh ini mendapatkan data dengan ID yang ditentukan dari entitas TestCollection
.
- Pada dialog
Configure connector task
, klikEntities
. - Pilih
TestCollection
dari daftarEntity
. - Pilih operasi
Get
, lalu klik Selesai. - Di bagian Task Input pada tugas Connectors, klik EntityId, lalu masukkan
120
di kolom Default Value.Di sini,
120
adalah ID data unik dalam entitasTestCollection
.
Contoh - Memperbarui data dalam entity
Contoh ini memperbarui data di entity TestCollection
.
- Pada dialog
Configure connector task
, klikEntities
. - Pilih
TestCollection
dari daftarEntity
. - Pilih operasi
Update
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "COL_TEXT": "CouchBase Update" }
- Klik entityId, lalu masukkan
120
di kolom Default Value.Jika integrasi berhasil, kolom
connectorOutputPayload
tugas konektor Anda akan memiliki nilai yang mirip dengan berikut ini:[{ "Document.Id": "120" }]
Contoh - Menghapus data dari entity
Contoh ini menghapus data dengan ID yang ditentukan dalam entitas TestCollection
.
- Pada dialog
Configure connector task
, klikEntities
. - Pilih
TestCollection
dari daftarEntity
. - Pilih operasi
Delete
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik entityId, lalu masukkan
20
di kolom Default Value.
Masalah umum
Operasi create
pada entity tidak didukung.
Menggunakan terraform untuk membuat koneksi
Anda dapat menggunakan resource Terraform untuk membuat koneksi baru.Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
Untuk melihat contoh template terraform untuk pembuatan koneksi, lihat contoh template.
Saat membuat koneksi ini menggunakan Terraform, Anda harus menetapkan variabel berikut dalam file konfigurasi Terraform:
Nama parameter | Jenis data | Wajib | Deskripsi |
---|---|---|---|
allow_jsonparameters | BOOLEAN | Salah | Memungkinkan JSON mentah digunakan dalam parameter saat QueryPassthrough diaktifkan. |
analytics_port | STRING | Salah | Port untuk terhubung ke Endpoint Couchbase Analytics. |
child_separator | STRING | Salah | Karakter yang digunakan untuk menunjukkan tabel turunan. |
couchbase_service | ENUM | Salah | Menentukan layanan Couchbase yang akan dihubungkan. Default-nya adalah N1QL. Opsi yang tersedia adalah N1QL dan Analytics. Nilai yang didukung adalah: N1QL, Analytics |
create_table_ram_quota | STRING | Salah | Kuota RAM default, dalam megabyte, yang akan digunakan saat menyisipkan bucket melalui sintaksis CREATE TABLE. |
dataverse_separator | STRING | Salah | Karakter yang digunakan untuk menunjukkan dataverse dan cakupan/koleksi Analytics. |
flavor_separator | STRING | Salah | Karakter atau karakter yang digunakan untuk menunjukkan rasa. |
n1_qlport | STRING | Salah | Port untuk terhubung ke Endpoint N1QL Couchbase. |
periods_separator | STRING | Salah | Karakter yang digunakan untuk menunjukkan hierarki. |
query_execution_timeout | STRING | Salah | Tindakan ini menetapkan waktu tunggu sisi server untuk kueri, yang mengatur berapa lama Couchbase akan mengeksekusi kueri sebelum menampilkan error waktu tunggu. |
strict_comparison | STRING | Salah | Menyesuaikan seberapa akurat menerjemahkan filter pada kueri input SQL menjadi kueri Couchbase. Ini dapat ditetapkan ke daftar nilai yang dipisahkan koma, dengan setiap nilai dapat berupa salah satu dari: tanggal, angka, boolean, atau string. |
transaction_durability | STRING | Salah | Menentukan cara dokumen harus disimpan agar transaksi berhasil. Menentukan apakah akan menggunakan transaksi N1QL saat menjalankan kueri. |
transaction_timeout | STRING | Salah | Ini menetapkan jumlah waktu yang dapat dijalankan transaksi sebelum waktu tunggunya habis oleh Couchbase. |
use_collections_for_ddl | BOOLEAN | Salah | Apakah akan mengasumsikan bahwa pernyataan CREATE TABLE menggunakan koleksi, bukan ragam. Hanya berlaku saat terhubung ke Couchbase v7+ dan GenerateSchemaFiles ditetapkan ke OnCreate. |
use_transactions | STRING | Salah | Menentukan apakah akan menggunakan transaksi N1QL saat menjalankan kueri. |
validate_jsonparameters | BOOLEAN | Salah | Memungkinkan penyedia memvalidasi bahwa parameter string adalah JSON yang valid sebelum mengirim kueri ke Couchbase. |
proxy_enabled | BOOLEAN | Salah | Centang kotak ini untuk mengonfigurasi server proxy untuk koneksi. |
proxy_auth_scheme | ENUM | Salah | Jenis autentikasi yang akan digunakan untuk mengautentikasi ke proxy ProxyServer. Nilai yang didukung adalah: BASIC, DIGEST, NONE |
proxy_user | STRING | Salah | Nama pengguna yang akan digunakan untuk mengautentikasi ke proxy ProxyServer. |
proxy_password | SECRET | Salah | Sandi yang akan digunakan untuk melakukan autentikasi ke proxy ProxyServer. |
proxy_ssltype | ENUM | Salah | Jenis SSL yang akan digunakan saat terhubung ke proxy ProxyServer. Nilai yang didukung adalah: AUTO, ALWAYS, NEVER, TUNNEL |
panjang | STRING | Salah | Tingkat kejelasan untuk koneksi, bervariasi dari 1-5. Tingkat panjang informasi yang lebih tinggi akan mencatat semua detail komunikasi (permintaan, respons, & sertifikat SSL). |
Menggunakan koneksi Couchbase dalam integrasi
Setelah Anda membuat koneksi, koneksi tersebut akan tersedia di Integration Apigee dan Integration Aplikasi. Anda dapat menggunakan koneksi dalam integrasi melalui tugas Konektor.
- Untuk memahami cara membuat dan menggunakan tugas Konektor di Apigee Integration, lihat Tugas konektor.
- Untuk memahami cara membuat dan menggunakan tugas Konektor di Integrasi Aplikasi, lihat Tugas konektor.
Mendapatkan bantuan dari komunitas Google Cloud
Anda dapat memposting pertanyaan dan mendiskusikan konektor ini di komunitas Google Cloud di Cloud Forums.Langkah selanjutnya
- Pahami cara menangguhkan dan melanjutkan koneksi.
- Pahami cara memantau penggunaan konektor.
- Pahami cara melihat log konektor.