我的文档中有几个字段,如果它们存储非空值,我想确保它们在集合中是唯一的,但我永远不需要查询它们 - 例如md5文件的哈希值。至于我在MongoDB文档中检查过,对于这种情况,建议使用唯一且稀疏的索引。我的问题是:有没有办法避免创建索引,因为我永远不会查询任何文档的md5字段?
答案 0 :(得分:0)
由于您不会查询这些字段,因此很难说。
您可以使用查询魔法,但是您可能没有可用的值,否则您唯一的选择是强制执行此客户端,这可能会创建竞争条件。
答案 1 :(得分:0)
没有创建索引就无法保证唯一性,因为MongoDB没有提供任何强制约束的机制。