MongoDB聚合:$shardedDataDistribution

$shardedDataDistribution阶段是从6.0.3开始支持的,用于返回分片集合中数据分布的信息。该聚合阶段必须在admin数据库上运行,且用户必须拥有shardedDataDistribution操作权限。

语法

js 复制代码
db.aggregate( [
   { $shardedDataDistribution: { } }
] )

用法

$shardedDataDistribution阶段会为数据库中的每个分片集合输出一个文档数组。这些文档包含以下字段:

|字段名|字段类型|说明|

|-|-|

|ns|string|分片集合的命名空间|

|shards|每个集合中的分区和数据的分布信息|

|shards.numOrphanedDocs|integer|分区内无主文件的数量|

|shards.numOwnedDocuments|integer|分片拥有的文件数量|

|shards.ownedSizeBytes|integer|分片所有文件的存储空间,以字节为单位|

|shards.orphanedSizeBytes|integer|分区内无主文件的存储空间(以字节为单位)|

举例

js 复制代码
db.aggregate( [
   { $shardedDataDistribution: { } }
] )

输出结果:

json 复制代码
[
  {
    "ns": "test.names",
    "shards": [
      {
        "shardName": "shard-1",
        "numOrphanedDocs": 0,
        "numOwnedDocuments": 6,
        "ownedSizeBytes": 366,
        "orphanedSizeBytes": 0
      },
      {
        "shardName": "shard-2",
        "numOrphanedDocs": 0,
        "numOwnedDocuments": 6,
        "ownedSizeBytes": 366,
        "orphanedSizeBytes": 0
      }
    ]
  }
]
相关推荐
2301_777599378 分钟前
Go语言怎么用sync.Map_Go语言并发安全Map教程【详解】
jvm·数据库·python
zhangchaoxies8 分钟前
Go语言如何用定时器_Go语言time.Ticker定时器教程【详解】
jvm·数据库·python
2501_9142459311 分钟前
如何用 setCustomValidity 自定义表单验证失败的提示文本
jvm·数据库·python
2301_8176722612 分钟前
bootstrap如何修改标签页切换的过渡时间
jvm·数据库·python
zhangchaoxies23 分钟前
JavaScript中Tree-shaking失效的场景及其优化对策
jvm·数据库·python
山峰哥23 分钟前
SQL性能飞跃:从索引策略到查询优化的全链路实战指南
数据库·sql·性能优化·深度优先
2501_9142459323 分钟前
SQL在GROUP BY中如何保留非聚合列_配合ANY_VALUE或窗口函数
jvm·数据库·python
weixin_5806140024 分钟前
如何防止SQL注入篡改数据_实施双重身份验证与授权
jvm·数据库·python
2401_8971905525 分钟前
SQL视图占空间吗_理解视图定义与存储机制的底层逻辑
jvm·数据库·python
qq_4240985627 分钟前
C#怎么实现UDP广播通信_C#如何搭建Socket网络【核心】
jvm·数据库·python