db.stats()
説明
db.stats(scale)
1 つのデータベースの使用状態を反映する統計を返します。
db.stats()
メソッドは、dbStats
データベース コマンドのラッパーです。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです
重要
このコマンドは、M 0 、M 2 、および M 5クラスターで限定的にサポートされています。 詳細については、「サポートされていないコマンド 」を参照してください。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
パラメーター
db.stats()
メソッドには次の任意 パラメーターがあります。
Parameter | タイプ | 説明 |
---|---|---|
数値 | 任意。 さまざまなサイズ データの増やす ファクター。 整数以外のスケール係数を指定した場合、MongoDB は指定された係数の整数部分を使用します。たとえば、スケール係数を バージョン 4.2 以降では、出力にサイズ値を増やすのに使用される | |
数値 | 任意。コレクションに割り当てられた空き領域の詳細を返すには、 インスタンスに多数のコレクションまたはインデックスがある場合、空き領域の使用状況データを取得すると、処理が遅れる可能性があります。空き領域の詳細なしで |
出力
db.stats()
メソッドは、データベース システムの状態に関する統計を含むドキュメントを返します。freeStorage の詳細を含む完全なリストは次のようになります。
{ db: 'test', collections: 2, views: 0, objects: 1689, avgObjSize: 52.56542332741267, dataSize: 86.7021484375, storageSize: 100, freeStorageSize: 32, indexes: 2, indexSize: 116, indexFreeStorageSize: 36, totalSize: 216, totalFreeStorageSize: 68, scaleFactor: 1024, fsUsedSize: 60155820, fsTotalSize: 61255492, ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1646085664, i: 1 }), signature: { hash: Binary(Buffer.from("0000000000000000000000000000000000000000", "hex"), 0), keyId: Long("0") } }, operationTime: Timestamp({ t: 1646085664, i: 1 }) }
出力の説明については、「出力」を参照してください。
動作
予期しないシャットダウン後の精度
Wired Tiger ストレージ エンジンを使用して mongod
を不正にシャットダウンした後、db.stats()
によって報告されるカウントとサイズの統計が不正確になる可能性があります。
ドリフトの量は、チェックポイントからクリーン シャットダウンまでの間に実行された挿入、アップデート、または削除操作の数によって異なります。チェックポイントは通常、60 秒ごとに発現します。ただし、デフォルト以外の --syncdelay
設定で実行されている mongod
インスタンスでは、チェックポイントの頻度が増減する可能性があります。
不正なシャットダウン後に統計を復元するには、mongod
の各コレクションに対して validate
を実行します。
不正なシャットダウン後:
レプリカセット ノードの状態の制限
レプリカセット ノードでdbStats
操作を実行するには、ノードがPRIMARY
またはSECONDARY
状態である必要があります。 ノードがSTARTUP2
などの別の状態にある場合、操作はエラーになります。
例
Scale Output Values
値をキロバイト単位で返すには、スケールを1024
に設定します。
db.stats(1024)
注意
スケール係数は、値を整数に丸めます。
単一の値を返す
indexSize
などの単一の値を返すには、フィールド名をdb.stats()
に追加します。
db.stats().indexSize db.stats(1024).indexSize
出力には、元の値とスケーリングされた値の差が表示されます。
118784 116
コレクションに割り当てられた空き領域に関する情報を返す
コレクションに割り当てられた空き領域に関する情報を返すには、 freeStorage パラメータを db.stats()
に渡します。
次の例では、indexFreeStorageSize
をキロバイト単位で返します。
db.stats( { freeStorage: 1, scale: 1024 } ).indexFreeStorageSize