A newer version of this documentation is available.
View Latest (v2.0)

Installation steps

Gluesync SQL to NoSQL for Couchbase Server

Prerequisites

In order to have Gluesync working on your Couchbase Server instance you will need to have:

  • valid user credentials with permission to read, and write to the target bucket

If you’re considering running Gluesync on a Couchbase Capella DBaaS, please consider also looking at the specific section Deploying in a Capella DBaaS cluster here below on that page.

Basic configuration example

This video tutorial will guide you through the basic configuration steps for setting up Gluesync for Microsoft SQL Server and Couchbase

This module can be customized by using a configuration file, in JSON format. The file name to use must be specified as a parameter when launching the app, with the -f or --file tokens. The file should be composed of a union of the common configuration files (see here Installation steps) and source/destination specific configuration:

{
  ...
  "couchbase": {
    "certificatesPath": "/path/to/certs/dir/cert.pem",
    "timeoutSeconds": 60,
    "indexReplicaCount": 0,
    "useCollections": false
  }
}

Couchbase-specific configurations are listed under the couchbase property:

  • certificatesPath (optional): the path to the certificates that need to be used when connecting to the Couchbase Server instance using a secure connection. If omitted, no certificates are used;

  • timeoutSeconds (optional): number of seconds to set as timeout for operations involving communication with the Couchbase server.

  • indexReplicaCount (optional default to 0): indicates the number of index replicas that will be generated by Gluesync. We suggest to size that number calculating it as number-of-index-node -1. For example, 3 node index means a suggested replica of 2. For more details please see Couchbase doc.

  • useCollections (optional): defaults to false, tells Gluesync to create and use a Scopes & Collections from Couchbase Server per each of your source tables instead of using the default collection. The default scope is _default. This only applies to Couchbase version 7.0 and above.

Looking for data modeling features or other options?

For more detailed configuration options, including the ability to perform data modeling, please have a look at the dedicated Data modeling section when sourcing from an RDBMS.

Deploying in a Capella DBaaS cluster

Gluesync has been certified by the vendor to work and perform live replications together with Couchbase Capella clusters. In order to establish a connection to a Capella Cluster you just need to have:

  • valid credentials for an admin user able to connect to the destination bucket;

  • valid .pem certificate file;

  • The hostname of your Capella instance, for example: cb.instancereferencename.cloud.couchbase.com

If you’re considering running Gluesync together with Capella App Service please contact our support.

Looking for using Scopes & Collections?

From Couchbase Server version 7.0 and above it is possible to start using Scopes & Collection feature. For more details about that feature, you can have a look at this link from the official Couchbase documentation page.

Gluesync supports both Scopes & Collections in that way, when useCollections is set to true:

  • automatically creates a new Collection per each one of your source tables if none with the same name is found;

  • make use of existing collections where the Collection name matches your source table;

  • if your source schema is not set it defaults to using _default scope.

when useCollections is set to false:

  • document automatically defaults to default collection and _default scope when running under Couchbase 7.0 or above;

  • each document automatically belongs to the target designed bucket when running under Couchbase 6.6.X or older.

The product team is working on extending the support of multiple Scopes under a Multi-tenancy environment, for example when sourcing from Schema Containers on RDMBS. If you’d like to get an update regarding this feature support or share your feedback to raise the priority drop us a line by writing to hello@molo17.com.

Troubleshooting

Here is the list of common errors.

  • ERROR TIMEOUT: BUCKET_OPEN_IN_PROGRESS: You might either have specified the wrong server port for your Couchbase connection or this is blocked by the firewall.