Docs 菜单

Docs 主页开发应用程序MongoDB Manual

db.collection.getShardDistribution()

在此页面上

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

重要

mongosh 方法

本页介绍了 mongosh方法。这不是特定于语言的驱动程序(例如 Node.js)的文档。

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

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

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

db.collection.getShardDistribution()

提示

另请参阅:

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

Shard shard01 at shard01/localhost:27018
{
data: '38.14MB',
docs: 1000003,
chunks: 2,
'estimated data per chunk': '19.07B',
'estimated docs per chunk': 500001
}
---
Shard shard02 at shard02/localhost:27019
{
data: '38.14B',
docs: 999999,
chunks: 3,
'estimated data per chunk': '12.71B',
'estimated docs per chunk': 333333
}
---
Totals
{
data: '76.29B',
docs: 2000002,
chunks: 5,
'Shard shard01': [ '50 % data', '50 % docs in cluster', '40B avg obj size on shard' ],
'Shard shard02': [ '49.99 % data', '49.99 % docs in cluster', '40B avg obj size on shard' ]
}
Shard shard01 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 shard02 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 shard01: [ <estDataPercent-a> % data, <estDocPercent-a> % docs in cluster, stats.shards[ <shard-a> ].avgObjSize avg obj size on shard ],
Shard shard02: [ <estDataPercent-b> % data, <estDocPercent-b> % docs in cluster, stats.shards[ <shard-b> ].avgObjSize avg obj size on shard ]
}

输出信息显示:

  • <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()

在此页面上