到 2020 年年中,很明显,产品的使用将超过我们值得信赖的 Postgres 单体的能力,后者在五年和四个数量级的增长中尽职尽责地为我们服务。...在我们最初的研究中,我们还考虑了打包的分片/集群解决方案,例如用于 Postgres 的 Citus 或用于 MySQL 的 Vitess。...例如,考虑一个存储在一个数据库中的块,在另一个数据库中具有相关的评论。如果块被删除,评论应该被更新 — 但是,由于事务性保证只适用于每个数据存储,所以块删除可能成功,而评论更新可能失败。...4
5
6
8
10, 12, 15, 16, 20, 24, 30, 32, 40, 48, 60, 80, 96, 120, 160, 240
关键是,480 可以被很多数字整除——这提供了添加或删除物理主机的灵活性...今天,分表中的行使用复合键:id,旧数据库中的主键;和 space_id,当前排列中的分区键。