Move Less, Move Faster: Speeding Up Citus Cluster Scaling | POSETTE: An Event for Postgres 2026

Muhammad Usama explains how Citus distributes data across a Postgres cluster and why scaling events can be slow due to safe rebalancing constraints. He then walks through concrete improvements—more parallel shard moves and snapshot-based node addition—to reduce data movement and speed up scale-out/scale-in operations.

Overview

This talk focuses on making elastic scaling of distributed PostgreSQL (Citus) faster by reducing and parallelizing the work required during rebalancing.

Why scaling a distributed Postgres cluster can be slow

Minimal mental model of Citus distribution

The talk introduces a basic model for reasoning about Citus scaling time:

Step 1: Shard rebalancing improvements (more parallelism, fewer bottlenecks)

Two concrete areas highlighted for speeding up rebalancing:

Step 2: Snapshot-based scaling (“move less”)

A second approach aims to reduce how much data must be copied during scaling:

Choosing a scaling strategy