从技术上讲,只支持一个分片群集的分片,它是否支持?所以我们可以随时添加额外的一个(s),同时在我们真正需要之前节省额外的碎片(它们)?
更进一步,是否可以在一个实例上运行分片,而不必基于3实例副本集?
答案 0 :(得分:2)
从here开始,分片为:
按键范围和数据分区数据的数据库体系结构 在两个或多个数据库实例之间分发数据。
分片将是replica set或独立的mongod实例。您可以通过使用不同的端口为单个计算机上的配置,mongod和mongos进程建立不同的通信端点来使用单个计算机。此外,是的,您可以在以后需要扩展时add a shard。
然而,提供分片的关键是支持水平缩放。此外,分片群集的重点是提供故障转移和冗余支持。通过在单个服务器上使用单个分片,您将失去扩展的好处,当然还有故障转移。
recommended production architecture包括:
仔细阅读文档中的Sharded Cluster Requirements部分,了解您的环境是否需要分片和分片群集,因为建立这样的体系结构很复杂。