2015-07-21 57 views
3

我是一个MongoDB的新手,正在观看一些视频,并且非常喜欢Mongo提供的复制设置。MongoDB复制

方案

我想知道,如果存在以下情况是可能的MongoDB的。

可以说我有3个MongoDB的服务器

  1. 在云(CloudMongo)的服务器上2点终端机(T1和T2)

的CloudMongo具有运行

  • 2服务器数据库中调用企业与表AllSales和促销
    终端机均与表销售和促销

    数据库POS个

    问题

    1. 能CloudMongo复制促销数据到T1的一个子集,另一个子集到T2?
    2. 终端T1和T2可以复制他们的销售数据合并到CloudMongo的AllSales表/集合?在蒙戈
  • +0

    听起来好像要分片,可支持集与特定的服务器的遏制在一组 – Sammaye

    回答

    1

    复制是用于数据耐久性(和在某些情况下,读缩放)。它不适用于应用程序级别的数据管理。不支持选择性复制。在副本集的服务器的数据路径

    类别将其全文复制。

    这听起来像你想要做的是将某些数据片段复制到你的设置的不同成员。通过构建特定的查询,这在应用程序级别当然是可自动化的。

    +0

    好,我明白了,我真的很喜欢失败,当主下山想我将不得不编写应用程序代码了反对使用复制 – MikeM

    +1

    @MikeM:不一定。对于复制,womp的声明是绝对正确的。然而,[标签感知分片](http://docs.mongodb.org/manual/core/tag-aware-sharding/),它基本上是这样工作的:你可以定义[shard key]的子集(http: //docs.mongodb.org/manual/core/sharding-shard-key/#shard-key)应该被保存在定义的碎片上。但是,这需要相当高的价格:每个碎片应该包含一个副本集,并且您只需要3个额外的配置服务器。所以我们至少要谈谈你想要的设置中的12个节点(rs + 3的3 * 3) –

    +0

    @Marcus这是一个相当昂贵的事实,但至少我知道它是一个选项 – MikeM