Docs 菜单
Docs 主页
/
MongoDB Manual
/ / /

db.collection.getShardDistribution()

在此页面上

  • 定义
  • 兼容性
  • 语法
  • 输出
db.collection.getShardDistribution()

重要

mongosh 方法

这是一个mongosh方法。 这不是Node.js或其他特定于编程语言的驱动程序方法的文档。

在大多数情况下, mongosh方法的工作方式与传统 mongo shell方法相同。 但是,某些旧方法在mongosh中不可用。

有关旧版mongo shell 文档,请参阅相应 MongoDB Server 版本的文档:

有关 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

打印分片集合的数据分布统计。

此方法可用于以下环境中托管的部署:

重要

M 0 、M 2和 M 5集群不支持此命令。 有关更多信息,请参阅不支持的命令。

getShardDistribution() 方法采用以下形式:

db.collection.getShardDistribution()

提示

另请参阅:

下面是分片集合的分布输出示例:

Shard shard-a at shard-a/MyMachine.local:30000,MyMachine.local:30001,MyMachine.local:30002
data : 38.14Mb docs : 1000003 chunks : 2
estimated data per chunk : 19.07Mb
estimated docs per chunk : 500001
Shard shard-b at shard-b/MyMachine.local:30100,MyMachine.local:30101,MyMachine.local:30102
data : 38.14Mb docs : 999999 chunks : 3
estimated data per chunk : 12.71Mb
estimated docs per chunk : 333333
Totals
data : 76.29Mb docs : 2000002 chunks : 5
Shard shard-a contains 50% data, 50% docs in cluster, avg obj size on shard : 40b
Shard shard-b contains 49.99% data, 49.99% docs in cluster, avg obj size on shard : 40b
Shard <shard-a> at <host-a>
data : <size-a> docs : <count-a> chunks : <number of chunks-a>
estimated data per chunk : <size-a>/<number of chunks-a>
estimated docs per chunk : <count-a>/<number of chunks-a>
Shard <shard-b> at <host-b>
data : <size-b> docs : <count-b> chunks : <number of chunks-b>
estimated data per chunk : <size-b>/<number of chunks-b>
estimated docs per chunk : <count-b>/<number of chunks-b>
Totals
data : <stats.size> docs : <stats.count> chunks : <calc total chunks>
Shard <shard-a> contains <estDataPercent-a>% data, <estDocPercent-a>% docs in cluster, avg obj size on shard : stats.shards[ <shard-a> ].avgObjSize
Shard <shard-b> contains <estDataPercent-b>% data, <estDocPercent-b>% docs in cluster, avg obj size on shard : stats.shards[ <shard-b> ].avgObjSize

输出信息显示:

  • <shard-x> 是保存分片名称的字符串。

  • <host-x> 是保存主机名的字符串。

  • <size-x> 是一个包含数据大小的数字,包括计量单位(例如 bMb)。

  • <count-x> 是一个报告分片中文档数量的数字。

  • <number of chunks-x> 是一个报告分片中数据段数量的数字。

  • <size-x>/<number of chunks-x> 是一个计算值,反映分片每个数据块的估计数据大小,包括度量单位(例如 bMb)。

  • <count-x>/<number of chunks-x> 是一个计算值,反映分片的每个数据段的估计文档数。

  • <stats.size> 是一个值,报告分片集合中数据的总大小,包括度量单位。

  • <stats.count> 是一个值,报告分片集合中文档总数。

  • <calc total chunks> 是一个计算数字,用于报告所有分片的数据块数,例如:

    <calc total chunks> = <number of chunks-a> + <number of chunks-b>
  • <estDataPercent-x> 是一个计算值,反映每个分片的数据大小占集合总数据大小的百分比,例如:

    <estDataPercent-x> = <size-x>/<stats.size>
  • <estDocPercent-x> 是一个计算值,反映每个分片的文档数占集合文档总数的百分比,例如:

    <estDocPercent-x> = <count-x>/<stats.count>
  • stats.shards[ <shard-x> ].avgObjSize 是一个数字,反映分片的平均对象大小,包括度量单位。

后退

db.collection.getIndexes