MongoDB
MongoDB is a popular document database. It can be accessed using SQL via the MongoDB Connector for BI, also known as BI Connector.Prerequisites
To use Cube with MongoDB you need to install the MongoDB Connector for
BI. Learn more about setup for MongoDB
here.
- MongoDB Connector for BI
- The hostname for the MongoDB database server
- The username/password for the MongoDB database server
Setup
Manual
Add the following to a.env file in your Cube project:
mongosqld appropriately. See here for an example config
file.
Environment Variables
| Environment Variable | Description | Possible Values | Required |
|---|---|---|---|
CUBEJS_DB_HOST | The host URL for a database | A valid database host URL | ✅ |
CUBEJS_DB_PORT | The port for the database connection | A valid port number | ❌ |
CUBEJS_DB_NAME | The name of the database to connect to | A valid database name | ✅ |
CUBEJS_DB_USER | The username used to connect to the database | A valid database username | ✅ |
CUBEJS_DB_PASS | The password used to connect to the database | A valid database password | ✅ |
CUBEJS_DB_SSL | If true, enables SSL encryption for database connections from Cube | true, false | ✅ |
CUBEJS_DB_MAX_POOL | The maximum number of concurrent database connections to pool. Default is 8 | A valid number | ❌ |
CUBEJS_CONCURRENCY | The number of concurrent queries to the data source | A valid number | ❌ |
Pre-Aggregation Feature Support
count_distinct_approx
Measures of typecount_distinct_approx can
not be used in pre-aggregations when using MongoDB as a source database.
Pre-Aggregation Build Strategies
To learn more about pre-aggregation build strategies, head
here.
| Feature | Works with read-only mode? | Is default? |
|---|---|---|
| Batching | ✅ | ✅ |
| Export Bucket | - | - |
Batching
No extra configuration is required to configure batching for MongoDB.Export Bucket
MongoDB does not support export buckets.SSL
To enable SSL-encrypted connections between Cube and MongoDB, set theCUBEJS_DB_SSL environment variable to true. For more information on how to
configure custom certificates, please check out Enable SSL Connections to the
Database.