MongoDB查詢優化:索引如何提升查詢效率?
MongoDB的索引是查詢優化核心,用於解決數據量大時全表掃描導致的查詢慢問題。其本質是字段值與文檔位置的映射結構(類似目錄),將查詢從O(n)的全表掃描轉爲O(log n)的快速定位,大幅提升效率。 創建索引用`createIndex({字段: 排序方式})`,如`db.students.createIndex({age: 1})`。常見類型包括單字段、複合(多字段組合,順序依查詢頻率調整)、唯一(確保字段唯一)、文本索引(支持模糊搜索)。 驗證索引是否生效可通過`explain("executionStats")`查看執行計劃,關注`executionTimeMillis`(耗時)和`totalDocsExamined`(檢查文檔數),若後者等於結果數則索引生效。 需注意:索引非越多越好,過度創建會佔用空間並拖慢寫操作。應優先爲頻繁查詢字段建索引,避免對低查詢率或高重複字段建索引。合理使用索引可讓MongoDB在數據增長時保持高效響應。
閱讀全文