pinot-admin.sh
. The script is located in the bin/
directory of the Pinot binary distribution or /opt/pinot/bin
in docker container.-
(hyphen) -
(hyphen) -
(hyphen) BROKER
or SERVER
SERVER
) total number of instances which can host offline tables belonging to this tenantSERVER
)total number of instances which can host realtime tables belonging to this tenantOFFLINE
segments are supported.-
(hyphen) -
(hyphen) -
(hyphen) enable
, disable
or drop
-
(hyphen) true
to overwrite segments of already present in the directorytrue
to verify the segment files post creation. CSV
, AVRO
and JSON
are supported.-
(hyphen) CSV
, AVRO
or JSON
CSV
CSV
false
.-
(hyphen) -
(hyphen) type
, startTimeMs
, endTimeMs
, roundBucketMs
, partitionBucketMs
partitionerType
, numPartitions
, columnName
, transformFunction
, columnPartitionConfig
CONCAT
, ROLLUP
, DEDUP
ROLLUP
merge typemaxNumRecordsPerSegment
, segmentNamePrefix
-
(hyphen) OFFLINE
tables currentlyInteger.MAX_VALUE
-
(hyphen) GET, ADD, UPDATE or DELETE
=
-
(hyphen) sql
or pql
(deprecated).With-downtime rebalance
: the IdealState is replaced with the target segment assignment in one go and there are no guarantees around replica availability. This mode returns immediately without waiting for ExternalView to reach the target segment assignment. Disabled tables will always be rebalanced with downtime.No-downtime rebalance
: care is taken to ensure that the configured number of replicas of any segment are available (ONLINE or CONSUMING) at all times. This mode returns after ExternalView reaching the target segment assignment.
In the edge case scenarios mentioned later, if best-efforts
is disabled, rebalancer will fail the rebalance because the no-downtime contract cannot be achieved, and table might end up in a middle stage. User needs to check the rebalance result, solve the issue, and run the rebalance again if necessary.
If best-efforts
is enabled, rebalancer will log a warning and continue the rebalance, but the no-downtime contract will not be guaranteed.
Downtime can occur in the following edge case scenarios - -
(hyphen) false
by default)CONSUMING
segments for real-time table (false
by default)false
by default)false
by default)false
false
by default-
(hyphen) -
(hyphen) dual
, pinot_only
or helix_only
. Default is dual
java.io.tmpDir
+ PinotController
-
(hyphen) -
(hyphen) pinot.service.role
to indicate which service to start. The service role can be one of CONTROLLER
, BROKER
or SERVER
-
(hyphen) -
(hyphen) -
(hyphen) -
(hyphen) -
(hyphen) -
(hyphen)