Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

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
タイプ
説明
数値

任意。 さまざまなサイズ データの増やす ファクター。scaleのデフォルトは 1 で、サイズ データをバイト単位で返します。 バイトではなくキロバイトを表示するには、 scaleの値を1024に指定します。

整数以外のスケール係数を指定した場合、MongoDB は指定された係数の整数部分を使用します。たとえば、スケール係数を 1023.999 に指定すると、MongoDB はスケール係数として 1023 使用します。

バージョン 4.2 以降では、出力にサイズ値を増やすのに使用される scaleFactor が含まれるようになりました。

数値

任意。コレクションに割り当てられた空き領域の詳細を返すには、freeStorage を 1 に設定します。

インスタンスに多数のコレクションまたはインデックスがある場合、空き領域の使用状況データを取得すると、処理が遅れる可能性があります。空き領域の詳細なしで db.stats() データを収集するには、freeStorage を 0 に設定するか、パラメーターを含めないでください。

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などの別の状態にある場合、操作はエラーになります。

値をキロバイト単位で返すには、スケール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

戻る

db.shutdownServer