Skip to main content

A python command line tool to provide the commands necessary to run on citus to have a balanced cluster

Project description

# python-citus-rebalancer A python command to get recommendations on commands to run to rebalance an unbalaned citus cluster.

Sometimes when your cluster grows, you can have an uneven size on nodes: for example if one customers ingests more data than other. This simple commands helps you figure out what master_move_shard commands to run on your coordinator.

## Installation ### Install with pip install

  1. Run pip install py-citus-rebalancer

### Install from source code

  1. Clone the github repository

  2. Run python develop

## Running the command

This command has different options:

  • –host: is your postgres connection string

  • –delta: is the maximum difference you expect between the node size and the idea size. For example if you have 4 nodes and 20GB of data, the idea size would be 5GB per node. The delta that you can give is for example 10% difference. It’s an integer representing the percent.

  • –file: path to the file where you want the command to be written: example /path/to/rebalance.sql. You can then run the file on your coordinator

  1. Run the command citus-rebalancer –host=postgres://user:pwd@host:5432/dbname –delta=10

  2. It will return commands to run, run them on your coordinator to rebalance the cluster.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py-citus-rebalancer-1.0.4.tar.gz (4.6 kB view hashes)

Uploaded Source

Built Distribution

py_citus_rebalancer-1.0.4-py3-none-any.whl (6.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page