MongoDBでデータベースのデータサイズを取得する方法
MongoDBでデータベースのデータサイズを確認するには、db.stats()メソッドを使用します。このメソッドを実行すると、データサイズだけでなく、ストレージ使用量やインデックスサイズなど、データベースに関する詳細な統計情報を一度に取得できます。
db.stats()メソッドの基本構文
db.stats();
現在のデータベースを確認する
まず、現在接続しているデータベースを確認しましょう。ここでは例として「test」データベースを使用します。以下のコマンドでカレントデータベースを確認できます。
> db
実行結果:
test
testデータベースの統計情報を取得する
続いて、db.stats()メソッドを使って「test」データベースのデータサイズを取得します。
> db.stats()
実行結果:
{
"db" : "test",
"collections" : 114,
"views" : 0,
"objects" : 391,
"avgObjSize" : 83.0076726342711,
"dataSize" : 32456,
"storageSize" : 3211264,
"numExtents" : 0,
"indexes" : 120,
"indexSize" : 2494464,
"fsUsedSize" : 126172377088,
"fsTotalSize" : 199229435904,
"ok" : 1
}
出力結果の主なフィールドの意味
- db: データベース名
- collections: コレクションの総数
- objects: ドキュメント(オブジェクト)の総数
- avgObjSize: ドキュメントの平均サイズ(バイト)
- dataSize: データの実サイズ(バイト)
- storageSize: ディスク上のストレージ使用量(バイト)
- indexes: インデックスの総数
- indexSize: インデックスの合計サイズ(バイト)
データベースのデータサイズに該当するのは「dataSize」の値です。上記の例では32,456バイトであることがわかります。なお、単位を指定したい場合は、db.stats(1024)のように引数を渡すことで、KB単位などで表示することも可能です。
別のデータベース(sample)に切り替えて確認する
次に、「sample」データベースに切り替えて、同様の手順で確認してみましょう。データベースの切り替えにはuseコマンドを使用します。
> use sample
switched to db sample
再度、dbコマンドで現在のデータベース名を確認します。
> db
実行結果:
sample
sampleデータベースのデータサイズを取得する
「sample」データベースに対しても、同じくdb.stats()メソッドを実行してデータサイズを確認します。
> db.stats();
実行結果:
{
"db" : "sample",
"collections" : 25,
"views" : 0,
"objects" : 67,
"avgObjSize" : 85.32835820895522,
"dataSize" : 5717,
"storageSize" : 626688,
"numExtents" : 0,
"indexes" : 24,
"indexSize" : 610304,
"fsUsedSize" : 126173016064,
"fsTotalSize" : 199229435904,
"ok" : 1
}
このように、db.stats()メソッドを使えば、どのデータベースでも簡単にデータサイズを含む統計情報を取得できます。出力結果の「dataSize」フィールドを確認することで、そのデータベースが保持している実際のデータサイズを把握できるので、容量管理やパフォーマンスチューニングの際にぜひ活用してください。
-
データベース言語の種類と役割を徹底解説!DDL・DML・DCL・TCLの違いとは
データベース言語とは、データベース内のデータを読み取り、更新、操作、保存するために使用される言語の総称です。SQL(Structured Query Language)をはじめとするデータベース言語は、その目的に応じて以下の4種類に分類されます。データ定義言語(DDL:Data Definition Language)データ操作言語(DML:Data Manipulation Language)データ制御言語(DCL:Data Control Language)トランザクション制御言語(TCL:Transaction Control Language)それでは、それぞれの言語について詳しく見て
-
MySQLデータベースのテーブルサイズを取得・確認する方法
MySQLデータベース内の各テーブルのサイズを確認したい場合、システムが標準で提供している「information_schema.TABLES」を利用するのが最も手軽な方法です。このスキーマには、すべてのデータベースとテーブルに関するメタ情報(データ長、インデックス長など)が格納されており、SQLクエリだけで簡単に容量を調べることができます。全テーブルのサイズを一覧表示するSQL構文以下のクエリを実行すると、指定したデータベースに含まれるすべてのテーブルのサイズをMB単位で一覧取得できます。 SELECT TABLE_NAME AS `ALLTABLESNAME`, ROUND((DATA_L