gpt4 book ai didi

performance - MongoDB:双字段索引与文档字段索引

转载 作者:IT老高 更新时间:2023-10-28 13:28:51 25 4
gpt4 key购买 nike

我需要通过两个字段(唯一索引)对集合进行索引,例如 field1 和 field2。在性能方面有什么更好的方法:

  1. 创建一个常规的两列索引

    -或-

  2. 将这两个字段合并到一个文档字段 {field1 : value, field2 : value2} 并索引该字段?

注意:我将始终同时通过这两个字段进行查询。

最佳答案

您可以将列分开并创建一个索引,以提高同时查询两个字段时的性能。

db.things.ensureIndex({field1:1, field2:1});

http://www.mongodb.org/display/DOCS/Indexes#Indexes-CompoundKeysIndexes

将列放在同一列中不会提高性能,因为您必须以相同的方式对它们进行索引:

db.things.ensureIndex({fields.field1:1, fields.field2:1});

http://www.mongodb.org/display/DOCS/Indexes#Indexes-EmbeddedKeys

或者你可以索引整个文档

db.things.ensureIndex({fields: 1});

http://www.mongodb.org/display/DOCS/Indexes#Indexes-DocumentsasKeys

可能会提高性能,但可能会非常多。使用测试数据库,创建测试数据并对一些测试进行基准测试以找出答案。我们很想听听您的结果。

关于performance - MongoDB:双字段索引与文档字段索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6051219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com