2017-09-24 272 views
0

我计划的申请与偏远地区的组织,其中互联网是不是稳定, 所以我需要一个NoSql数据库,可以读&写入本地,并同步与中央服务器时在线。MongoDB的分布式系统

可以mongoDB sharding与这种情况一起使用吗?

+2

我认为你需要'副本,Set',而不是'Sharding',[拆分和复制的区别在MongoDB上](https://dba.stackexchange.com/q/52632/56808) – Soren

+0

@Soren'Replica-set'将不允许本地写入,据我所知。 –

回答

1

更好地问:为什么mongoDB分片不能用于这种情况?

如果你想使用本地mongoDb客户端来收集数据队列,你应该理解这种方式的限制。

分片是关于有效的数据复制,而不是关于在互联网打开时发送到服务器的本地数据收集,不是吗?因为当副本拥有比主数据更多的实际数据时,碎片从主数据获取数据而不是从场景获取数据?我建议在服务器和互联网不被用户客户端访问时使用本地专用队列来收集用户数据,并在互联网启动时从私有队列发送数据。

我认为你可以使用mongoDb保存没有互联网的客户端信息以及任何其他的Db甚至任何版本控制系统:)但分片与它无关。

还有更多的信息:

  1. Using a database table as a queue
  2. https://docs.microsoft.com/en-us/biztalk/core/message-queuing-queues?redirectedfrom=MSDN
  3. https://docs.oracle.com/cd/E11882_01/server.112/e11013/manage.htm#ADQUE2563