mongodb 索引1
阿新 • • 發佈:2017-09-07
demo 包含 exe 博客 逆向 忽略 復合索引 index png
本博客在聽完慕課-入門mongodb這門課後所寫
在數據量較小時,不使用索引也可以查詢的很快,但是在數據量很大時,就要使用索引提高效率了。
1.db.demo.getIndexes() 可以表中所包含的索引
可以看到 key的集合中包含_id ,就是說表中默認的索引就是_id
2.db.demo.ensureIndex({x:1})
x是1 正向排序
x是-1逆向排序
註意:在創建索引的時候,使用數據庫之前就要創建,不可以使用的時候創建,會嚴重影響數據庫性能,一般索引再插入數據後在創建,可能會對數據庫寫入有影響,但是可以忽略。
使用索引查詢數據時,性能會大幅度提升。
索引可以重復創建,如果重復創建,會直接返回成功。
3,_id 索引的使用
他是很多集合默認建立的唯一索引
4.單鍵索引
db.demo1.ensureIndex({x:1})
值為單一的值
5.多鍵索引
與單鍵不同點就是:值具有多個記錄,例如數組,集合等
當叉入這條數據後,mongo就會認為x是多鍵索引。
6.復合索引
個人感覺,就是為查詢多個屬性值建立的索引。沒什麽不同。
7.過期索引
一段時間後會過期的索引,過期後會被刪除,適合存儲登錄信息,日誌等
db.demo1.ensureIndex({qqq:1},{expireAfterSeconds:10})
第二個參數是該索引的過期時間,就是說插入的數據會在這段時間後被刪除。
沒更完。。有空在更!
mongodb 索引1