Connecting to Couchbase#

Data Science & AI Workbench enables you to connect to a Couchbase NoSQL database from within your notebook sessions.

To do so, you’ll need to do the following to install the essential elements required to connect to a Couchbase server:

  1. Download the release RPM from Couchbase to set up the Couchbase repository:

  2. Install the RPM using yum:

    sudo yum localinstall couchbase-release-1.0-4-x86_64.rpm -y
  3. Install the packages required to install the pip package:

    sudo yum install libcouchbase-devel libcouchbase2-bin gcc gcc-c++ -y
  4. Install the pip package:

    pip install couchbase


Any packages you install from the command line are available during the current session only. If you want them to persist, add them to the project’s anaconda-project.yml file. For more information, see Project configurations.

You can then use code such as this to import the modules and connect to Couchbase from within a notebook session:

# Import the modules
from couchbase.cluster import Cluster
from couchbase.cluster import PasswordAuthenticator

import json

Get credentials from Kubernetes. The credentials were set up as a dictionary. For example:
    "username": "USERNAME",
    "password": "PASSWORD"
credentials = None
with open('/var/run/secrets/user_credentials/couchbase_credentials') as f:
 credentials = json.load(f)

# Verify the credentials were pulled correctly
if credentials:
    # Try the connection and pass in authentication details
    bucket = None
        cluster = Cluster(f"couchbase://{credentials.get('hostname')}")
        bucket = cluster.open_bucket('beer-sample')
    except Exception as e:
        print(f'There was an error connecting to the bucket: {e}')

    # Confirm the bucket is connected
    if bucket and bucket.connected:
        # Get a value from the bucket by index and print out the result
        print(json.dumps(bucket.get('21st_amendment_brewery_cafe').value, indent=4))

        # Close connection