我有一个当前由内置“_id”(ObjectId)索引/查询的集合。我不想在这个键上分片,因为它是顺序的(以日期为前缀)。Mongo 2.4 的文档说我可以对这个键的哈希进行分片,这听起来很棒。像这样:
sh.shardCollection("records.active", { _id: "hashed" } )
问题:我是否必须首先在活动集合上创建散列索引:
db.active.ensureIndex({ _id: "hashed" })
还是没有必要?我不想用不必要的索引来浪费空间。
相关问题:如果我确实使用 ensureIndex({ _id: "hashed"}) 创建了一个散列索引,我可以删除默认的“ id ”索引吗?Mongo 会知道对 _id 字段进行查询,对它们进行哈希处理并针对哈希索引运行它们吗?
谢谢...