ある mongoDB サーバーから別の mongoDB サーバー (約 100 GB) にデータベースをコピーしようとすると、mongo デーモン プロセスが使用可能な RAM (Windows 64 ビット 16 GB) の 99% を使用します。その結果、システムは非常に遅くなり、時には不安定になります。
それを回避する方法はありますか?
モンゴDB 2.0.6
アルバート。
MongoDB はまさに「in ram」アプリケーションです。Mongo はすべてのデータベース メモリを使用できるようにマップしていますが、通常は最近使用されたデータのみが RAM (ワーキング セットと呼ばれます) にあり、mongo は必要に応じて RAM にないデータを取得するためにページ アウトします。通常、mongo の動作は、必要なだけ RAM に格納することですが、DB コピーのようなことを行うと、すべてのデータが必要になるため、mongod がすべての RAM を消費します。
これに対する理想的な解決策はありませんが、どうしても必要な場合は、WSRM http://technet.microsoft.com/en-us/library/cc732553.aspxを使用して、プロセスが消費する RAM の量を制限してみてください。これにより、コピーに時間がかかり、他の問題が発生する可能性があります。