Neki – Sharded Postgres by the team behind Vitess

6 months ago (planetscale.com)

This is exciting. The announcement says it will be open source. I really hope that this includes a functionally complete control plane so you realistically self-host.

I looked Neon recently, and it appears that it's designed as a SaaS product from the outset; while it is technically possible to self-host the individual components of the architecture, it does not look trivial, in large part because the control plane is closed source (and probably extremely specific to Neon's SaaS operations).

Looks like there is two ongoing vitess for postgres projects. Hopefully this competition leads to a better postgres ecosystem.

https://supabase.com/blog/multigres-vitess-for-postgres

Maybe make the announcement after you've actually released code?

Today I'm announcing I've cured cancer. Well not yet, but coming soon hopefully!

  • More like: We‘re announcing to work on a cure in cancer! Isn‘t that aweslme? No, we dont have anything yet. But we started working on it. ETA? When its done. We dont share roadmaps with outsiders.

Very cool, and I'm looking forward to using this. But unfortunately it seems like it's not actually released yet?

I'm a little surprised to hear that PlanetScale is doing the work to make this considering I thought their entire system was based on Vitess. Maybe the demand for Postgres compatible DBs is so high nowadays that they need to offer compatibility for customers that don't want to port their apps to MySQL's syntax?

Does Neki still need sharding key in query, just like Citus?

I wonder how this compares to YugabyteDB?

  • Yugabyte is a 'postgresql compatible' database.

    These are forks or extensions of Postgresql.

    • YugabyteDB is also a fork of PostgreSQL. Last year, they got around to rebasing from 11 to 15, and spent some time working on better isolating their changes to make that easier going forward.

      https://www.yugabyte.com/blog/yugabytedb-moves-beyond-postgr...

      > When we set out to make YugabyteDB Postgres-compatible, we took a fork of Postgres, and modified all of the operations that use shared memory or storage to instead talk to our LSM- and Raft-based distributed storage and transaction layer.

Is anyone working on replacing postgres?

Feels like it might be very useful since a lot of new technologies came out since spinning disks.

  • Who isn't? Cockroach rewrote Postgres in Go. CedarDB rewrote Postgres in C++.

    And then to lesser degrees you've got Yugabyte, AlloyDB, and Aurora DSQL (and certainly more I'm forgetting) that only replace parts of Postgres.

    • Both Cockroach and CedarDB didn't rewrite anything, they built stuff from scratch. Just used the same client protocol. There are a bunch of other unrelated databases using Postgres protocol btw.

      1 reply →

  • The companies that attempt to replace PostgreSQL do so not to replace PostgreSQL itself, but to replace Oracle.

  • > Feels like it might be very useful since a lot of new technologies came out since spinning disks.

    The MVCC that Postgres uses(and no one else) is like 50yo outdated concept they still cling to. So just by virtue of that, it makes PGSQL the most archaic db on the market nowadays.

    I never understood why PGSQL had so many fanboys, yet every major tech company always ditches it for mysql... i guess it is the case of "Any man who must say, "I am the King", is no true king." type of thing. People have to make a lot of noise to excuse their bad choices so they don't have to admit making a mistake.

    • I can’t believe they still make processors out of sand. Talk about outdated technology.

      Sarcasm aside, a great many projects started on MySQL and moved to postgres. As did projects using mongo, couchdb, firebase, oracle etc etc…

      And I’m sure many projects switched away from Postgres to other technologies. Right tool for the job at hand.

    • By MVCC you mean the kind of MVCC that keeps old versions in the same space / requires vacuum? Because I'm pretty sure Oracle also does multiversioning using their undo log / rollback segment.

      2 replies →