db.collection.getShardDistribution()
定義
db.collection.getShardDistribution()
重要
mongosh メソッド
これは
mongosh
メソッドです。 これは、Node.js
またはその他のプログラミング言語固有のドライバー メソッドのドキュメントではありません。ほとんどの場合、
mongosh
メソッドはレガシーのmongo
shell メソッドと同じように動作します。 ただし、一部のレガシー メソッドはmongosh
では利用できません。レガシー
mongo
shell のドキュメントについては、対応する MongoDB Server リリースのドキュメントを参照してください。MongoDB API ドライバーについては、各言語のMongoDB ドライバードキュメント を参照してください。
シャーディングされたコレクションのデータ配信統計を出力します。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M 0 、M 2 、M 5クラスターではサポートされていません。 詳細については、「サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
構文
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>
は、シャード名を保持する string です。<host-x>
は、ホスト名を保持する string です。<size-x>
は、測定単位(例:b
、Mb
)。<count-x>
は、シャード内のドキュメント数を報告する数値です。<number of chunks-x>
は、シャード内のチャンクの数を報告する数値です。<size-x>/<number of chunks-x>
は、測定単位(例:b
、Mb
)。<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
は、シャードの平均オブジェクト サイズ(測定単位を含む)を反映する数値です。