Zoomdata Version

Managing the Couchbase Connector

The Zoomdata Couchbase connector lets you access the data available in your Couchbase Data Platform storage for visualization and exploration using the Zoomdata client. The Zoomdata Couchbase connector supports Couchbase version 6.0.1.

Before you can establish a connection from Zoomdata to Couchbase Data Platform, a connector server needs to be installed and configured. See Managing Connectors and Connector Servers for general instructions and Connecting to Couchbase for details specific to the Couchbase connector.

After the connector has been set up, you can create data source configurations that specify the necessary connection information and identify the data you want to use. See Managing Data Source Configurations for more information. After data sources are configured, they can be used to create dashboards and charts from your data. See Creating Dashboards and Creating Charts.

Zoomdata Feature Support

The Couchbase connector supports all Zoomdata features, except for the following features:

This connector does not support pushdown joins for Fusion data sources.

The following limitations exist for multivalued field support for the Couchbase connector (including nested fields when they are also multivalued fields):

  • The COUNT, SUM, or AVG metric result for a computed single-value field will be inaccurate when it is combined with any multivalued field in the same query.
  • The COUNT, SUM, or AVG metric result for a computed multivalued field will be inaccurate when it is combined with any other multivalued field in the same query.
  • With the exception of the TEXT_TO_TIME row-level function, multivalued fields created using row-level expressions can only be used as a chart's group or metric (and in filters when the same multivalued field is used as the chart's group or metric).

The following examples show valid metric combinations:

COUNT(single_value_field1),SUM(single_value_field2),AVG(single_value_field3),
DISTINCT_COUNT(single_value_field4), MIN(single_value_field5), MAX(single_value_field6)
COUNT(multivalue_field),SUM(multivalue_field),AVG(multivalue_field),
DISTINCT_COUNT(multivalue_field), MIN(multivalue_field), MAX(multivalue_field)
DISTINCT_COUNT(single_value_field), MIN(multivalue_field1), MAX(multivalue_field2)

The following examples show invalid combinations of metrics:

COUNT(single_value_field), SUM(single_value_field), AVG(single_value_field), MIN(multivalue_field)
COUNT(multivalue_field1), SUM(multivalue_field2), AVG(multivalue_field1), MAX(multivalue_field2)

Connecting to Couchbase

To establish a connection to Couchbase, the default port is 8138. If SSL/TLS authentication is required, see Configuring Couchbase TLS/SSL Support.

Configuring Couchbase TLS/SSL Support

Couchbase can use the TLS protocol for:

  • Full encryption of client-side traffic with server authentication. See Connecting with SSL.
  • Client authentication using X.509 certificates. This form of authentication is suitable for further Couchbase role-based access control. See Certificate-Based Authentication.

To support these capabilities in Zoomdata's Couchbase connector, additional configuration is needed. See the following sections.

Configuring TLS Server Authentication

To enable TLS for the connector-to-Couchbase server connection, add the following properties to the edc-couchbase.properties file:

com.couchbase.sslEnabled=true
com.couchbase.sslTruststoreFile=<path_to_truststore_storing_rootCertificate.jks>
com.couchbase.sslTruststorePassword=<optional_truststore_password>

The com.couchbase.sslEnabled property must be set to true. The path you specify for the com.couchbase.sslTruststoreFile property must be accessible by the Zoomdata Couchbase connector.

For information about modifying connector properties in property files, see Connector Properties.

Configuring Client Certificate-Based Authentication for a Single Couchbase Connection

If your installation only needs client certificate-based authentication for a single Zoomdata Couchbase connection, specify the certificate-based authentication using connector properties. You must have a keystore containing the client's identity as well as a keystore or truststore containing the root certificate required to authenticate the server. Use one of the following setup options:

  • Use a password-protected Java keystore that contains the client's identity and the root certificate. If you select this option, enable client certificate-based authentication by specifying the following connector properties in the edc-couchbase.properties file:

    com.couchbase.sslEnabled=true
    com.couchbase.sslKeystoreFile=<path_to_keystore_storing_clientID_and_rootCertificate.jks>
    com.couchbase.sslKeystorePassword=<mandatory_keystore_password>
    com.couchbase.certAuthEnabled=true

    The com.couchbase.sslEnabled and com.couchbase.certAuthEnabled properties must be set to true.

  • Use a password-protected Java keystore that contains only the client's identity and a separate Java truststore containing the root certificate. This approach allows you to share a single universal truststore containing all required root certificates among different services.

    If you select this option, enable client certificate-based authentication by specifying the following connector properties in the edc-couchbase.properties file:

    com.couchbase.sslEnabled=true
    com.couchbase.sslTruststoreFile=<path_to_truststore_storing_rootCertificate_only.jks>
    com.couchbase.sslTruststorePassword=<optional_truststore_password>
    com.couchbase.sslKeystoreFile=<path_to_keystore_storing_clientID_only.jks>
    com.couchbase.sslKeystorePassword=<mandatory_keystore_password>
    com.couchbase.certAuthEnabled=true

    The com.couchbase.sslEnabled and com.couchbase.certAuthEnabled properties must be set to true.

For information about modifying connector properties in property files, see Connector Properties.

Configuring Client Certificate-Based Authentication for Multiple Couchbase Connections

If your installation needs client certificate-based authentication for multiple Zoomdata Couchbase connections, specify the client certificate-based authentication information using Zoomdata connection parameters in the definition of each connection. You must have a keystore containing the client's identity as well as a keystore or truststore containing the root certificate required to authenticate the server.

Two new input boxes have been added in the Zoomdata UI when you create a Couchbase connection. Assuming your keystore contains both the required client identity and root certificate information, specifying the keystore information using these two input boxes is sufficient.

  • Use the Key Store Path box to specify the path to the keystore. This path must be accessible by the Zoomdata Couchbase connector, so your system administrator must upload all client keystores to the machine where the connector is running before you define the Couchbase connection in the UI.
  • Use the Key Store Password box to specify the mandatory password for the keystore.

If your installation only uses the TLS keystore to store the client's identity and requires a separate truststore to store the root certificate, specify the following connector truststore properties in the edc-couchbase.properties file:

com.couchbase.sslEnabled=true
com.couchbase.sslTruststoreFile=<path_to_truststore_storing_rootCertificate_only.jks>
com.couchbase.sslTruststorePassword=<optional_truststore_password>

For information about modifying connector properties in property files, see Connector Properties.

Was this topic helpful?