Server configuration can be provided as part of the server startup parameters.
bin/pinot-admin.sh StartServer -configFileName /path/to/server.conf
server.conf
can have the following properties
Property | Default | Description |
---|---|---|
pinot.server.netty.port | 8098 | Port to query Pinot Server |
pinot.server.netty.host | Pinot server hostname | |
pinot.server.adminapi.port | 8097 | Port for Pinot Server Admin UI |
pinot.server.instance.id | By default the server instance id used by Helix is Server_hostname_port where the hostname and port are configured through host and port config values above. This config overwrites the default setting. User can put server id independent of the server's hostname and port. | |
pinot.server.instance.dataDir | java.io.tmpdir + /PinotServer/index |
Directory to hold all the data |
pinot.server.instance.consumerDir | ||
pinot.server.instance.segmentTarDir | java.io.tmpdir + /PinotServer/segmentTar |
Directory to hold temporary segments downloaded from Controller or Deep Store |
pinot.server.instance.readMode | mmap |
|
pinot.server.instance.reload.consumingSegment | true | Specifies if the reload segment API should reload the consuming segments. This is useful when the corresponding schema is updated and we want the changes to be reflected in the consuming segment. |
pinot.server.instance.data.manager.class |
|
|
pinot.server.query.executor.pruner.class |
|
|
pinot.server.query.executor.timeout | 15000 |
Timeout for Server to process Query in Milliseconds |
pinot.server.query.executor.class |
|
|
pinot.server.requestHandlerFactory.class |
|
|
pinot.server.instance.segment.format.version | ||
pinot.server.instance.enable.split.commit | ||
pinot.server.instance.enable.commitend.metadata | ||
pinot.server.instance.max.parallel.refresh.threads | 1 | Number of simultaneous segments that can be refreshed on one server. |
pinot.server.instance.realtime.max.parallel.segment.builds | 0 | Specifies how many parallel realtime segments can be built. Value of <= 0 indicates unlimited. |
pinot.server.instance.realtime.alloc.offheap | false | Boolean value to control whether memory for realtime consuming segments should be allocated off-heap. |
pinot.server.instance.realtime.alloc.offheap.direct | false | If 'realtime.alloc.offheap' is set to true, this boolean value controls whether the corresponding allocation should be direct or not (false indicate mmap allocation) |
pinot.server.startup.minResourcePercent | 100 | |
pinot.server.starter.realtimeConsumptionCatchupWaitMs | 0 | |
pinot.server.startup.timeoutMs | 10 minutes | |
pinot.server.startup.enableServiceStatusCheck | true | |
pinot.server.startup.serviceStatusCheckIntervalMs | 10 seconds | |
pinot.server.shutdown.timeoutMs | 10 minutes | |
pinot.server.shutdown.enableQueryCheck | true | |
pinot.server.shutdown.noQueryThresholdMs | 15 seconds | |
pinot.server.shutdown.enableResourceCheck | false | |
pinot.server.shutdown.resourceCheckIntervalMs | 10 seconds | |
pinot.server.admin.access.control.factory.class |
|
|
pinot.server.adminapi.access.protocols | http | Ingress protocols to access server admin api (http or https or http,https) |
pinot.server.adminapi.access.protocols.http.port | Port to access server admin api via http | |
pinot.server.adminapi.broker.protocols.https.port | Port to access server admin api via https | |
pinot.server.tls.keystore.path | Path to server TLS keystore | |
pinot.server.tls.keystore.password | keystore password | |
pinot.server.tls.truststore.path | Path to server TLS truststore | |
pinot.server.tls.truststore.password | truststore password | |
inot.server.tls.client.auth | false | toggle for requiring TLS client auth |
pinot.server.netty.enabled | true | toggle for enabling unsecured netty connections to server |
pinot.server.netty.port | Port for accessing pinot server via unsecured netty | |
pinot.server.nettytls.enabled | ||
pinot.server.nettytls.port | Port for accessing pinot server via TLS-secured netty |