Couchbase
Upsert embedded data and perform vector search upon query using Couchbase, a NoSQL cloud developer data platform for critical, AI-powered applications.
Prerequisite
Requirements
Couchbase Cluster (Self Managed or Capella) version 7.6+ with Search Service.
Capella Setup: To know more about connecting to your Capella cluster, please follow the instructions.
Specifically, you need to do the following:
Create the database credentials to access cluster.
Allow access to the Cluster from the IP on which the application is running.
Self Managed Setup:
Follow Couchbase Installation Options for installing the latest Couchbase Database Server Instance. Make sure to add the Search Service.
Search Index Creation on the Full Text Service in Couchbase.
Importing Search Index
Follow these steps to import a Search Index in Capella:
Copy the index definition to a new file named
index.json
.Import the file in Capella following the instructions in the documentation.
Click Create Index to finalize the index creation.
Follow these steps for Couchbase Server:
Navigate to Search → Add Index → Import.
Copy the provided Index definition into the Import screen.
Click Create Index to finalize the index creation.
You may also create a vector index using Search UI on both Couchbase Capella and Couchbase Self Managed Server.
Index Definition
Here, we are creating the index vector-index
on the documents. The Vector field is set to embedding
with 1536 dimensions and the text field set to text
. We are also indexing and storing all the fields under metadata
in the document as a dynamic mapping to account for varying document structures. The similarity metric is set to dot_product
. If there is a change in these parameters, please adapt the index accordingly.
Setup
Add a new Couchbase node on canvas and fill in the Bucket Name, Scope Name, Collection Name and Index Name
Add new credential and fill in the parameters:
Couchbase Connection String
Cluster Username
Cluster Password
Add additional nodes to canvas and start the upsert process
Document can be connected with any node under Document Loader category
Embeddings can be connected with any node under Embeddings category
Verify from the Couchbase UI to see if data has been successfully upserted!
Resources
Refer to the Couchbase Documentation to learn about Couchbase.
Last updated