English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MongoDB索引限制

In questa sezione, impareremo i limiti degli indici MongoDB e altri componenti correlati.

Costi aggiuntivi

Ogni indice occupa uno spazio e causa una perdita di prestazioni ogni volta che viene inserito, aggiornato o eliminato. Pertanto, se utilizzate raramente il set per operazioni di lettura, è meglio non utilizzare gli indici.

RAM使用

由于索引存储在RAM中,因此应确保索引的总大小不超过RAM限制。如果总大小增加了RAM大小,它将开始删除一些索引,从而导致性能下降。

查询限制

索引不能用于使用-

  • 正则表达式或否定运算符,例如$nin,$not等。

  • 算术运算符,例如$mod等。

  • $where子句

因此,始终建议检查查询的索引使用情况。

索引键限制

从2.6版开始,如果现有索引字段的值超过索引键限制,则MongoDB将不会创建索引。

插入文件超过索引键限制

如果此文档的索引字段值超过索引键限制,则MongoDB将不会在索引集合中插入任何文档。mongorestore和mongoimport实用程序也是如此。

最大范围

  • 一个集合不能有多于64个索引。

  • 索引名的长度不能超过125个字符。

  • 一个复合索引最多可以有31个字段被索引。