Neki路由器利用分片数据库解决查询路由问题,通过Neki计划决定查询发送至哪些分片,而Postgres计划处理分片内执行。路由器集群支持大量客户端连接,无需每连接一个Postgres进程。查询可路由至单分片或散射至全部分片并聚合结果。路由器无状态,易于扩展,分片扩展数据存储,路由器扩展连接处理。
Postgres分片历史:从MySQL因LAMP流行而领先,到Postgres的PL/Proxy、Instagram逻辑分片、Citus扩展等方案。Neki作为新方案,结合前人经验,提供显式分片、真实Postgres集群、可扩展路由器和完整生命周期管理,旨在简化分片复杂度,实现行星级扩展。
Neki的数据拓扑采用JSON配置,定义PostgreSQL分片方案,包括分片索引(哈希、模、范围策略)、分片组(物理分片及键范围)和数据库绑定。该配置指导路由器将查询映射到正确分片,支持灵活数据放置,并可在重分片时动态更新,使多服务器如同单一数据库。
数据库分片是扩展Postgres和MySQL的有效方法,尤其适用于数据超过几TB的情况。通过将数据和查询分布到多个服务器,分片解决了单一数据库的瓶颈问题。应用程序可以通过代理层和负载均衡器与多个分片进行交互。Neki和Vitess是处理大规模数据库复杂性的关键工具。
PlanetScale推出了托管的分片Postgres服务,旨在提升AWS和Google Cloud上的性能与可靠性。该服务基于NVMe驱动器,提供“无限I/O”,降低延迟并提高一致性。通过Neki实现Postgres的水平扩展,尽管Neki尚未开源,但该服务的上线标志着Postgres在开源数据库中的受欢迎程度上升。
PlanetScale正式发布Postgres支持,用户可创建并迁移Postgres数据库。该平台结合了PlanetScale与Postgres的优势,受到众多公司的信赖。Neki是其Postgres分片解决方案,未来将开源发布。
Neki是由Vitess团队推出的开源项目,旨在将Vitess的强大功能应用于高负载的Postgres工作负载。Neki并非Vitess的分支,而是从基础原则出发进行设计。
完成下面两步后,将自动完成登录并继续当前操作。