Apache Pinot
Apache Pinot is a real-time distributed OLAP datastore purpose-built for low-latency, high-throughput analytics, and perfect for user-facing analytical workloads. StarTree is a fully-managed platform for Pinot.Prerequisites
Note that the following features should be enabled in your Pinot cluster:Setup
Currently, Apache Pinot is not shown in the list of available data sources in the UI.
However, you can still configure
it using environment variables.
Manual
Add the following to a.env file in your Cube project:
Environment Variables
| Environment Variable | Description | Possible Values | Required |
|---|---|---|---|
CUBEJS_DB_HOST | The host URL for your Pinot broker | A valid host URL | ✅ |
CUBEJS_DB_PORT | The port for the database connection | A valid port number | ✅ |
CUBEJS_DB_USER | The username used to connect to the broker | A valid username | ❌ |
CUBEJS_DB_PASS | The password used to connect to the broker | A valid password | ❌ |
CUBEJS_DB_NAME | The database name for StarTree | A valid name | ❌ |
CUBEJS_DB_PINOT_NULL_HANDLING | If true, enables null handling. Default is false | true, false | ❌ |
CUBEJS_DB_PINOT_AUTH_TOKEN | The authentication token for StarTree | A valid token | ❌ |
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
be used in pre-aggregations when using Pinot as a source database. To learn more
about Pinot support for approximate aggregate functions, click
here.
Pre-aggregation build strategies
To learn more about pre-aggregation build strategies, [head
here][ref-caching-using-preaggs-build-strats].
| Feature | Works with read-only mode? | Is default? |
|---|---|---|
| Simple | ✅ | ✅ |
| Batching | - | - |
| Export bucket | - | - |