
- MongoDB 教程
- MongoDB - 首頁
- MongoDB - 概述
- MongoDB - 優勢
- MongoDB - 環境
- MongoDB - 資料建模
- MongoDB - 建立資料庫
- MongoDB - 刪除資料庫
- MongoDB - 建立集合
- MongoDB - 刪除集合
- MongoDB - 資料型別
- MongoDB - 插入文件
- MongoDB - 查詢文件
- MongoDB - 更新文件
- MongoDB - 刪除文件
- MongoDB - 投影
- MongoDB - 限制記錄
- MongoDB - 排序記錄
- MongoDB - 索引
- MongoDB - 聚合
- MongoDB - 複製
- MongoDB - 分片
- MongoDB - 建立備份
- MongoDB - 部署
- MongoDB - Java
- MongoDB - PHP
- 高階 MongoDB
- MongoDB - 關係
- MongoDB - 資料庫引用
- MongoDB - 覆蓋查詢
- MongoDB - 分析查詢
- MongoDB - 原子操作
- MongoDB - 高階索引
- MongoDB - 索引限制
- MongoDB - ObjectId
- MongoDB - Map Reduce
- MongoDB - 文字搜尋
- MongoDB - 正則表示式
- 使用 Rockmongo
- MongoDB - GridFS
- MongoDB - 有蓋集合
- 自動遞增序列
- MongoDB 有用資源
- MongoDB - 問答
- MongoDB - 快速指南
- MongoDB - 有用資源
- MongoDB - 討論
MongoDB - 索引限制
在本章中,我們將學習索引限制及其其他元件。
額外開銷
每個索引都會佔用一些空間,並在每次插入、更新和刪除時造成開銷。因此,如果您很少將集合用於讀取操作,則沒有必要使用索引。
RAM 使用
由於索引儲存在 RAM 中,因此您應確保索引的總大小不超過 RAM 限制。如果總大小超過 RAM 大小,它將開始刪除某些索引,導致效能下降。
查詢限制
索引不能用於使用以下內容的查詢:
- 正則表示式或否定運算子,如 $nin、$not 等。
- 算術運算子,如 $mod 等。
- $where 子句
因此,始終建議檢查查詢的索引使用情況。
索引鍵限制
從 2.6 版開始,如果現有索引欄位的值超過索引鍵限制,MongoDB 將不會建立索引。
插入超過索引鍵限制的文件
如果文件的索引欄位值超過索引鍵限制,MongoDB 將不會將任何文件插入到已索引的集合中。mongorestore 和 mongoimport 實用程式也是如此。
最大範圍
- 一個集合最多隻能有 64 個索引。
- 索引名稱的長度不能超過 125 個字元。
- 複合索引最多可以索引 31 個欄位。
廣告