MongoDB如何确定分片键的类型?

时间:2012-05-02 08:10:16

标签: mongodb

我可能遗漏了一些东西,但我无法理解MongoDB如何根据类型定义键范围。

假设我有一个用户个人资料的集合,如下所示:

{userId : "123", profiles: [p1, p2], location: "loc"}

然后,如果我声明这样的分片键:

{ shardcollection : "test.user_profile", key : {"userId":1} }

范围如何运作:

  1. 如果userId在{1 ... 100000}?
  2. 如果userId是某个字符串,就像生成的UUID?
  3. 如何定义将被视为字符串,时间md5或其他内容的分片键?

1 个答案:

答案 0 :(得分:3)

mongo中字段的比较是根据BSON比较顺序完成的。 有关详细信息,请参见此处 http://www.mongodb.org/display/DOCS/What+is+the+Compare+Order+for+BSON+Types 以及有关创建特定类型的信息 http://www.mongodb.org/display/DOCS/Data+Types+and+Conventions