Pinot is a real-time distributed OLAP datastore. Like Druid, its SQL layer has no DML — data arrives through batch or streaming ingestion — so queries are read-only by construction. climpt connects to the Broker.
Credentials
- Broker URL
- The Broker endpoint, for example
https://pinot.example.com. Not the Controller — that is for admin operations. - Port
8099by default.- Username
- Optional, if authentication is enabled.
- Password
- Optional, if authentication is enabled.
Enabling authentication
Without it, anyone who can reach the Broker can query every table. Configure basic auth in broker.conf:
pinot.broker.access.control.class=org.apache.pinot.broker.broker.BasicAuthAccessControlFactory
pinot.broker.access.control.principals=admin,climpt_readonly
pinot.broker.access.control.principals.admin.password=admin_password
pinot.broker.access.control.principals.climpt_readonly.password=strong_password_here
pinot.broker.access.control.principals.climpt_readonly.tables=*
pinot.broker.access.control.principals.climpt_readonly.permissions=READReplace tables=* with the specific tables you want analysed if you can.
Protect the Controller too
controller.admin.access.control.factory.class=org.apache.pinot.controller.api.access.BasicAuthAccessControlFactory
controller.admin.access.control.principals=admin
controller.admin.access.control.principals.admin.password=admin_passwordTLS
pinot.broker.tls.keystore.path=/path/to/keystore.jks
pinot.broker.tls.keystore.password=keystore_pass
pinot.broker.tls.truststore.path=/path/to/truststore.jks
pinot.broker.tls.truststore.password=truststore_passRestart the Broker afterwards, and open its port only to the addresses that need it.
Managed Pinot
- StarTree Cloud — fully managed, with connection details and auth tokens in the console. Token authentication is supported and preferable to basic auth.
- Self-managed on Kubernetes — the Pinot Helm chart with TLS terminated at the ingress and auth enabled.
Worth knowing
- The Broker (8099) serves SQL. The Controller (9000) is for administration and is not what you connect to.
- Pinot supports both real-time and offline tables, and climpt can query either.