25
A
回答
40
當然可以。 db.collection.stats().indexSizes
是嵌入文檔,其中每個索引名是鍵和值是以字節爲單位的總索引大小:
> db.test.stats()
{
"ns" : "test.test",
<snip>
"indexSizes" : {
"_id_" : 137904592,
"a_1" : 106925728
},
"ok" : 1
}
6
這是一個簡單的腳本來找出佔用大部分空間,在你整個索引數據庫:
var indexesArr = {}
db.getCollectionNames().forEach(function(collection) {
indexes = db[collection].stats().indexSizes
for (i in indexes) indexesArr[collection + " - " + i] = indexes[i];
});
var sortable = [], x;
for (x in indexesArr) sortable.push([x, indexesArr[x]])
var pArr = sortable.sort(function(a, b) {return b[1] - a[1]})
for (x in pArr) print(pArr[x][1] + ": " + pArr[x][0]);
1
清單下來每集合索引的大小,在一個特定的數據庫,我們可以使用下面的代碼片段:
use mydb;
var collectionStats = []
// Get the sizes
db.getCollectionNames().forEach(function (collectionName) {
var collection = db.getCollection(collectionName)
var collectionIndexSize = collection.totalIndexSize();
var indexSizeInMB = collectionIndexSize/(1024*1024)
collectionStats.push({"collection": collectionName, "indexSizeInMB": indexSizeInMB})
});
// Sort on collection name or index size
var reverse = true;
var sortField = "indexSizeInMB";
collectionStats.sort(function (a, b) {
comparison = a[sortField] - b[sortField];
if (isNaN(comparison)) comparison = a.collection.localeCompare(b.collection);
if (reverse) comparison *= -1;
return comparison;
});undefined;
// Print the collection stats
collectionStats.forEach(function (collection) {
print(JSON.stringify(collection));
});
// Total size of indexes
print("Total size of indexes: " + db.stats()["indexSize"]/(1024*1024) + " MB");
您可以更改變量的值在片段上方
var reverse = true;
var sortField = "indexSizeInMB";
改變排序字段和秩序。
相關問題
- 1. 如何獲得索引中的索引大小
- 2. 如何獲得MySQL中每個索引的大小
- 3. MongoDB背景索引大小
- 4. 索引中單個鍵的大小
- 5. MongoDB在副本集中索引大小
- 6. SQL Server的單個索引大小
- 7. 如何獲得節點js中的mongoDB集合大小?
- 8. Mongodb索引錯誤,字段大小
- 9. 獲取SOLR索引大小
- 10. 如何獲得三個較小值的數組索引?
- 11. MongoDB多個單一索引
- 12. 如何獲得matlab中數組中最小元素的索引?
- 13. MongoDB索引大小是否取決於字段大小?
- 14. 如何獲得Kivy中RstDocument的大小?
- 15. 如何獲得雙數組中最小元素的索引?
- 16. 如何獲得索引
- 17. 如何獲得數組中最大數目的索引?
- 18. Lucene:如何在索引期間獲得實時索引信息? (索引大小和期限計數)
- 19. MySQL中的索引大小
- 20. 如何獲得顯示小窗口大小的子菜單?
- 21. 如何使用MongoDB查詢和索引更快獲得結果
- 22. 如何獲得表單的非最大化窗口大小?
- 23. 如何估算Oracle索引的大小?
- 24. odoo獲得最大的數組索引
- 25. 什麼影響MongoDB中索引的大小?
- 26. 如何獲得NSString中單詞或音節的索引
- 27. 的MongoDB:如何索引
- 28. 如何獲得MongoDB中
- 29. MySQL中UNIQUE索引的最大大小
- 30. Python np.argmin:我如何獲得最小項目的索引和值?