EXPLAIN REBALANCE PARTITIONS

The EXPLAIN REBALANCE PARTITIONS command returns the set of steps that REBALANCE PARTITIONS would run.

Syntax

EXPLAIN REBALANCE PARTITIONS ON db_name

Remarks

The Ordinal is the target partition’s ordinal, and the Target_Host and Target_Port correspond to the destination leaf. Any two operations in the same Phase can be run in parallel and phases are run in order. For example, the aggregator can run COPY PARTITION on partitions test:1 and test:3 in parallel. The exact meaning of what each phase means is arbitrary and depends on the particular rebalance operation.

Estimated_Time_Remaining_Ms

The Estimated_Time_Remaining_Ms column contains an estimate (in milliseconds) for each low-level command as follows:

  • Command is running

    • The estimate is the remaining time for the command to complete.

    • For a running COPY PARTITION operation, the engine obtains the remaining-time estimate from the ESTIMATED_CATCHUP_TIME_S column in the MV_REPLICATION_STATUS information schema view and converts it to milliseconds. For a running PROMOTE operation, the engine uses the larger of the catch-up estimate and the replay estimate. If the live estimates are not available, the value is NULL.

  • Command has not started

    • The estimate is the expected runtime of the command.

    • For commands that have not started, EXPLAIN REBALANCE, and other action types (such as DROP PARTITION), SingleStore uses a per-database, per-action-type exponential moving average of previous completed runtimes. The latest measurement has a weight of 0.1, and the stored average has a weight of 0.9.

The estimate is based on historical runs for the same database and action type, and its accuracy depends on how well the previous runs reflect current conditions. It is not a confidence interval and does not automatically account for changes in data volume between infrequent rebalance operations.

Example

EXPLAIN REBALANCE PARTITIONS ON memsql_demo;
+-----------------------------+---------+-------------+-------------+-------+-----------------------------+
| Action                      | Ordinal | Target_Host | Target_Port | Phase | Estimated_Time_Remaining_Ms |
+-----------------------------+---------+-------------+-------------+-------+-----------------------------+
| COPY PARTITION              | 13      | 127.0.0.1   | 10002       | 3     | 7821                        |
| COPY PARTITION              | 2       | 127.0.0.1   | 10003       | 4     | 7821                        |
| COPY PARTITION              | 2       | 127.0.0.1   | 10004       | 4     | 7821                        |
| PROMOTE PARTITION WITH DROP | 2       | 127.0.0.1   | 10003       | 5     | 1351                        |
| DROP PARTITION              | 2       | 127.0.0.1   | 10002       | 6     | 1002                        |
| DROP PARTITION              | 13      | 127.0.0.1   | 10004       | 6     | 1002                        |
+-----------------------------+---------+-------------+-------------+-------+-----------------------------+

Understanding the Rebalance Actions

Each action occurs on a single partition.

Action

Definition

COPY PARTITION

Copies a partition and sets up replication to keep the copy in sync.

PROMOTE PARTITION [WITH {DROP,REPOINT}]

Promotes a replica partition into a master partition. The WITH DROP clause drops the previous master partition. The WITH REPOINT clause converts the previous master partition into a replica partition. There is no default, rebalance chooses one or the other based on the path to get to a balanced set of partitions.

DROP PARTITION

Drops a partition.

Last modified:

Was this article helpful?

Verification instructions

Note: You must install cosign to verify the authenticity of the SingleStore file.

Use the following steps to verify the authenticity of singlestoredb-server, singlestoredb-toolbox, singlestoredb-studio, and singlestore-client SingleStore files that have been downloaded.

You may perform the following steps on any computer that can run cosign, such as the main deployment host of the cluster.

  1. (Optional) Run the following command to view the associated signature files.

    curl undefined
  2. Download the signature file from the SingleStore release server.

    • Option 1: Click the Download Signature button next to the SingleStore file.

    • Option 2: Copy and paste the following URL into the address bar of your browser and save the signature file.

    • Option 3: Run the following command to download the signature file.

      curl -O undefined
  3. After the signature file has been downloaded, run the following command to verify the authenticity of the SingleStore file.

    echo -n undefined |
    cosign verify-blob --certificate-oidc-issuer https://oidc.eks.us-east-1.amazonaws.com/id/CCDCDBA1379A5596AB5B2E46DCA385BC \
    --certificate-identity https://kubernetes.io/namespaces/freya-production/serviceaccounts/job-worker \
    --bundle undefined \
    --new-bundle-format -
    Verified OK

Try Out This Notebook to See What’s Possible in SingleStore

Get access to other groundbreaking datasets and engage with our community for expert advice.