副本集和mongodb中的碎片

时间:2018-05-02 05:56:57

标签: mongodb shared-libraries replicaset

我是mongodb的新手。我正面临使用asp.net mvc web api获取数据的问题。我正在获取数据,但这需要花费太多时间。在我的数据库中有超过5亿条数据(每天插入20-30万条数据)。所以使用副本集和分片是否可以快速写入和读取数据?

下面是我的网络API代码

6

1 个答案:

答案 0 :(得分:1)

1:副本集不太可能帮助分散所有数据插入的负载; docs on replication明确指出:

  

在承载数据的节点中,一个且仅一个成员被视为主节点,而其他节点被视为次要节点。

     

主节点接收所有写操作。

但请注意,无论如何都应该使用复制 - 这对于高可用性和弹性是必要的。

2:Sharding 可能帮助分散工作量:

  

通过添加更多分片,可以在群集中水平扩展读取和写入工作负载。

但是,分片很难很好地实现,是否获得任何好处取决于数据的形状和分片方式。您可能会发现,不是投入额外的硬件和额外的分片配置,您可能会从升级硬件到使用具有更快I / O的硬件获得更多价值。