Comment by maherbeg
8 hours ago
A few of us built nearly the exact same thing for a Hackathon which was fun. This definitely can work. There are a couple of other approaches too that are interesting like
- xata - https://xata.io/blog/xatastor-zfs-nvme-of-for-millions-of-postgres-databases
- neon - which has a more sophisticated architecture that builds abstractions at the Postgres layer
But separating compute and storage sucks and the performance you get out of EBS and friends is mediocre. The elasticity is nice, but if you have High Availability and can move instances around, you can still expand your cluster relatively easily, just not easily in an emergency scenario.
Because you mentioned Xata (I'm the author of that blog post, thanks for mentioning it), this is pretty similar to what we do at the high level, but we built our own storage system rather than relying on Ceph. The reason is scalability to many volumes and to lesser degree performance.
I'd say Homescale is closer to Xata than Planetscale, tbh :)
It was a good read. I also worked on a similar product that used zfs instead of Ceph.
Also, as you said, Homescale is a lot closer to Xata. It all started as a joke and the name stuck.
The performance definitely sucks but it's not a really serious project. I wouldn't use something like Homescale for using facing products.