You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Mongo Shell中快速将分片索引大小查询结果按分片名排序

解决方法

直接提取分片名称数组排序后再遍历输出即可,完整执行语句如下:

var test = db.collection.stats().shards;
Object.keys(test).sort().forEach(key => printjson(`${key} -> ${test[key].totalIndexSize}`))

逻辑说明

  • Object.keys(test) 会将分片统计结果对象的所有分片名提取为字符串数组
  • 无参调用sort()方法默认按字符串Unicode码点升序排列,完全匹配分片名按编号从小到大排序的需求
  • 遍历排序后的分片名数组输出对应索引大小即可得到你要的结果

如果使用的Mongo Shell版本较低不支持ES6语法,可使用兼容写法:

var test = db.collection.stats().shards;
Object.keys(test).sort().forEach(function(key) {
  printjson(key + " -> " + test[key].totalIndexSize)
})

内容的提问来源于stack exchange,提问作者R2D2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 12:27:07