3 ms·
If you want an OSS sharded Postgres, just use Citus. Feature-full, proven, mature, boring.
by ahachete 22d ago
If you want an OSS sharded Postgres, just use Citus. Feature-full, proven, mature, boring.
- weekendcode 21d agoits not feature-full. like schema changes locking, coordinator node.. Maybe I am wrong, but I am yet to read stories on operating tens of TB scale workloads on citus.
- saisrirampur 21d agoMost Citus workloads were 10s of TB with largest at around a few PB or so. Heap was a couple PB, back then, if I remember correctly. It is a brilliant piece of technology that supported mission critical workloads across mid/late stage startups to huge enterprises. The planner/executor are very advanced supporting a multitude of features and decade of intricate effort. The biggest problem of Citus was migration effort, transition from single node to multi-node was not trivial. Here I’m not talking about single table use-cases, more classic relational, multi-tenant apps with 100s to 1000s of tables. This is partly expected with most sharding technologies, though. Sharing some insights based on my multiple years of experience working with Citus! Here are few customer use-cases I could found: https://docs.citusdata.com/en/v10.0/get_started/what_is_citus.html?l#how-far-can-citus-scale https://docs.citusdata.com/en/v10.0/get_started/what_is_citu... https://info.citusdata.com/rs/235-CNE-301/images/Citus_Data_Case_Study_-_MixRank.pdf https://info.citusdata.com/rs/235-CNE-301/images/Citus_Data_...? https://www.youtube.com/watch?v=F6df3HV6kP0 https://www.youtube.com/watch?v=F6df3HV6kP0
- ahachete 21d ago> schema changes locking Schema changes need locking... everywhere. Citus is no different. And they need proper design everywhere. If you mean that it requires distributed transactions, well, yes, again: expected and solved. Not even all sharding solutions support this. > coordinator node Not sure what the problem is here. If what you mean is that a single coordinator, even with an HA replica, can saturate, that's true, but you can add multiple "query routers" (that's our name in StackGres, see [1]). > Maybe I am wrong, but I am yet to read stories on operating tens of TB scale workloads on citus. For example, we have a customer that ingests some 30TB/day, and it's ramping up towards 200TB/day of ingestion. On 24 worker nodes. [1]: https://stackgres.io/doc/latest/administration/sharded-cluster/citus/#query-routers https://stackgres.io/doc/latest/administration/sharded-clust...