使用object属性作为分片键组件

时间:2017-09-19 12:00:08

标签: mongodb key sharding

我已经设置了分片数据库群集并准备就绪。

我正在选择分片键,我想使用几个字段,包括嵌套字符。

例如,我存储了这种形状的文件:

{
    id: 0,
    author: {
        id: 0,
        followers: 0
    }
}

我想使用id和author.id字段来组合我的分片键。

我尝试了这两种语法:

sh.shardCollection("test.sample", { "id" : 1, "author" : { "id" : 1 } })
sh.shardCollection("test.sample", { "id" : 1, "author.id" : 1 })

但实际上都没有。

这可以使用嵌套字段作为分片键的组件吗? 如果是,我怎么能做到这一点?

1 个答案:

答案 0 :(得分:0)

我解决了我的问题。

实际上正确的语法是(就像创建索引一样):

sh.shardCollection("test.sample", { "id" : 1, "author.id" : 1 })

我的问题来自我试图在数据库中插入的数据。