大量のデータを削除した後、MongoDBのストレージ容量を減らすには?
MongoDBでデータ削除後にストレージ容量を解放する方法
MongoDBでは、大量のドキュメントを削除しても、ディスク上のストレージ領域は自動的に解放されません。削除されたデータ分の領域は「再利用可能な空きスペース」として内部に保持されるためです。この未使用領域を実際に解放してストレージ容量を減らすには、repairDatabase() メソッドを使用します。
1. 現在のデータベースを確認する
ここでは「test」というデータベースを例に説明します。まず、現在接続しているデータベースを確認しましょう。以下のコマンドを実行します。
> db;
実行すると、次のような出力が得られます。
Test
2. repairDatabase()でストレージを圧縮する
大量のデータを削除した後、次のコマンドを実行することで、MongoDBのストレージ容量を削減できます。
> db.repairDatabase()
処理が正常に完了すると、以下のような出力が表示されます。
{ "ok" : 1 }コマンド実行後、削除済みデータが占めていたディスク領域が解放され、ストレージ使用量が実際に減少します。
注意点:新しいバージョンでの代替コマンド
db.repairDatabase() はMongoDB 4.4以降で非推奨(deprecated)となっている点に注意が必要です。最新のバージョンでは、コレクション単位でデータの断片化を解消し、領域を圧縮する compact コマンドの使用が推奨されています。
> db.runCommand({ compact: "コレクション名" })WiredTigerストレージエンジンを使用している環境では、compactコマンドによって未使用領域をOSへ返還できる場合があります。ただし、これらの操作はリソースを大きく消費する可能性があるため、本番環境で実行する前には必ずデータのバックアップを取得し、負荷の低い時間帯に行うことをおすすめします。
-
データ消失後に写真を復元する完全ガイド|失われた思い出を取り戻す方法
コンピューターのデータには、画像、動画、音声、ドキュメント、圧縮ファイルなど、デジタルで保存されるあらゆるファイルが含まれます。SDカードやUSBメモリ、ハードディスクなどに大切に保存していたデータが一瞬で失われてしまう「データ消失」は、誰にとっても深刻なトラブルです。この記事では、特に写真・画像データの消失に焦点を当て、失われた大切な思い出を取り戻すための復元方法を詳しく解説します。 削除された写真の復元作業を始める前に、まず写真データが消失するさまざまなケースを理解しておきましょう。消失の原因は、カメラのSDカード、USBメモリ、外付けハードディスクなど、保存媒体によって異なる場合がありま
-
個人ファイルを削除せずにPCのストレージ容量を回復する方法
パソコンのストレージ容量が不足している場合、大量のファイルやフォルダを整理して空き容量を確保する必要があります。ハードディスクの大部分を占めるのは個人ファイルですが、それ以外にも一時的なゴミファイルや、使わなくなった古いアプリなどが知らず知らずのうちに容量を圧迫しています。これらのファイルを手動で一つずつ特定して削除するのは現実的ではありません。そこで活用したいのが「Advanced PC Cleanup」のようなクリーンアップツールです。 個人ファイルを削除せずにストレージ容量を回復する方法 PCのストレージを空けるために削除できる不要ファイルは、大きく分けて5種類あります。Advanced