citusdata / citusdata/citus

Scaling out single node Citus to a multi-node cluster might lead to higher planning times for OLTP workloads

Open
#4,182 0 comments 0 reactions 0 assignees View on GitHub
performance single node
Dominant language
C
Stars
12.8k
Forks
794
Avg merge
2d 14h
Merged PRs (30d)
31

Description

With #3388, we enabled plan caching when a the shards reside on the node itself that plans the distributed query. The meaning of that PR is Citus caches the plans for the shard queries as well. With a single node Citus, all shards would be avaliable locally, meaning that prepared statements would be as performant as Postgres. However, when the cluster is scaled out, this optimization would be lost.

So, a user starts with a high performant single-shard OLTP workload, and scaling out would add significant increase in the latencies (as far as I remember ~%30).

Note that due to network round-trip, the execution would be definitely more expensive. This issue is about planning times, as the execution time increases seems inevitable.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.