Neki – 分片 PostgreSQL

一项名为 Neki 的新分片 PostgreSQL 服务由 PlanetScale 构建,它通过将 Vitess 风格的横向扩展带到 Postgres 而引发关注,同时仍是专有的托管产品。评论者主要关注它如何处理一致性、跨分片事务、约束和重新分片,并将其与 Citus、Multigres 和 PgDog 等工具比较,指出技术保证尚未被清晰记录。此次发布还引发了关于营销清晰度、在 AWS 主导的云环境中不将系统开源的决定,以及 PlanetScale 管理层公开沟通风格的争论。

Neki 是什么以及定位

  • 被描述为一个分片 PostgreSQL 系统,通过一个路由层在应用和 Postgres 分片之间增加一层间接访问。
  • 被宣传为“像 Vitess,但用于 Postgres”,由有 Vitess 经验的工程师构建,但声称是为 Postgres 从零实现的。
  • 旨在处理在线重新分片和大规模工作负载;只作为提供方托管服务运行,不是“任何地方都能跑”。

文档、信息传达与营销

  • 很多读者从发布博客中很难理解“Neki 是什么”;着陆页被认为更清晰。
  • 一些人觉得该帖子缺少简明的顶层描述和一致性保证;后来编辑添加了一个“What is Neki”部分,最终又重定向到了营销页面。
  • 设计和品牌获得了赞扬,但一些人仍然觉得产品模型(完全托管 vs 自托管)不清晰。
  • 少数评论提到协调一致的营销(广告、多篇 HN 帖子)。

分片、事务与一致性

  • 关于以下问题有疑问:
    • 跨分片 JOIN 和事务如何工作。
    • 是否支持跨分片外键和约束。
    • 一致性模型(强一致 vs 最终一致、读写后可见选项、复制延迟)。
  • 代表方表示:
    • 跨分片事务已存在,但尚未具备完全原子性的 2PC;这正在推进中。
    • 路由器与 Postgres 不共享代码。
  • 多人要求提供清晰的保证页面以及架构/C2 图;当前文档被一些人称为“AI 风格”或含糊不清。

功能缺口与不明确之处

  • 跨分片外键和约束似乎缺失;有人将此与其他分布式数据库早期版本进行比较。
  • 如何处理超大表(例如 80 亿+ 行)以及单表是否可以跨多个分片仍不清楚。
  • 一致性行为和故障场景在讨论串中没有得到充分文档化。

开源 vs 专有的争论

  • 多位评论者非常看重开源所带来的长期安全性和供应商风险控制;有人表示对闭源毫无兴趣。
  • 公司对是否开源 Neki “尚未决定”,但强调需要防止大型云提供商复制这项服务。
  • 有人指出其中的讽刺意味:公司本身建立在一个开源项目之上,却让 Neki 保持闭源。

与其他系统的比较

  • 被提及比较的对象包括:Citus、Multigres、pgdog、Supabase 的产品、Aurora、Cloud SQL、Spanner、Vitess/PlanetScale MySQL、MariaDB Galera、TiDB。
  • 代表方强调 Neki 已经支持分片和在线重新分片,同时声称一些竞争对手尚未具备成熟的分片能力。
  • 竞争性的开源项目强调可自托管和非专有化的优势。

对公司文化与语气的看法

  • 关于 CEO 的公开行为以及批评竞争对手的帖子,出现了大量旁支讨论。
  • 一些人觉得这种强硬、讽刺的风格有趣,或难得坦率;另一些人则认为这不专业、令人反感,或者足以让他们避开该产品。
  • 争论集中在:对商业/开源核心模式采取对抗式 دفاع 是否合理,还是适得其反。