PlanetScale hat Neki in einer Platform Preview verfügbar gemacht. Neki ist eine Sharding-Plattform für Postgres: Jeder Shard ist eine echte Postgres-Instanz, und Neki legt Router, Sidecars und eine Control Plane darüber. Die genannten Ziele sind hunderte Millionen Anfragen pro Sekunde und Petabytes an Daten pro Datenbank, bei Resharding ohne Downtime. Nick Van Wiggeren hat den Start in einem Blogpost angekündigt.

Anwendungen verbinden sich mit dem Neki-Router, der Anfragen an die Postgres-Shards weiterleitet. Wird ein Shard zu heiß, kann Neki ihn online aufteilen: Es erstellt neue Ziel-Shards, gleicht sie per Replikation an und verschiebt den Traffic über Topology-Änderungen. Resharding läuft, während die Datenbank online bleibt, ohne Umschreiben der Anwendung und ohne Wartungsfenster.

Die Feature-Liste ist lang. Hochverfügbarkeit übernimmt die Plattform, sie überwacht den Zustand, befördert Replikas und aktualisiert das Routing, während Anwendungen weiterhin einen einzigen Postgres-Endpunkt nutzen. Schema-Änderungen laufen als koordinierte Workflows über alle Shards, mit passender Methode pro Shard und verfolgtem Cutover. Connection Pooling ist in die Sharding-Schicht integriert, mit Kenntnis von Topologie, Shard-Zustand und Session-Status. Shard Groups erlauben es, Tabellen oder Workloads unterschiedlichen Hardware-Profilen zuzuweisen. Jeder Shard läuft als hochverfügbares Postgres-Cluster über Availability Zones hinweg.

Die Datenplatzierung ist explizit über ein Konzept namens Data Topology definiert, das Daten auf Shards, Shard Groups und Shard-Indizes abbildet. Shard-übergreifende Transaktionen mit atomarem Commit sind als Coming soon angekündigt. Explizite Workflows decken Importe, Resharding, Schema-Änderungen, Cutovers und Aufräumarbeiten ab. Online-Upgrades auf neue Postgres-Versionen folgen demselben Migrationsmodell: Ziel-Shard-Groups anlegen, replizieren, umschalten, alte Gruppen stilllegen. Importe ohne Downtime kopieren, replizieren, verifizieren und schalten um, während die Quelle weiter Traffic bedient. Für CDC behält jeder Shard sein eigenes WAL und einen eigenen logischen Replikationspfad, kompatibel mit üblichen Postgres-Mustern.