5

新しいプロジェクトに mongodb を使用したいと考えています。問題は、mongo が事前割り当てファイルを使用することです。

各データファイルは、特定のサイズに事前に割り当てられています。データベースの最初のファイル名は .0 で、次に .1 のようになります。.0 は 64MB、.1 は 128MB のようになり、最大 2GB になります。ファイルのサイズが 2GB に達すると、後続の各ファイルも 2GB になります。したがって、最後に存在するデータファイルがたとえば 1GB である場合、そのファイルが最近作成された場合、そのファイルは 90% が空である可能性があります。

ここから: http://www.mongodb.org/display/DOCS/Excessive+Disk+Space

そして、何も入っていない2GBのファイルがたくさんあるのは普通のことです。このファイルを 512MB に制限する --smallfiles スイッチがあります。

--smallfiles => 初期ファイル サイズ (16MB) と最大サイズ (512MB) を小さくする

smallfiles の使用が本番環境に適していることを知りたいですか? そしてその欠点は何ですか。

prealloc スイッチはありませんが、本番環境には適していません。しかし、小さなファイルについてのメモはありません。

4

2 に答える 2

6

通常、多数のデータベースを作成している場合は smallfiles のみを使用します。少数のデータベースのみを操作している場合は、いじるのに十分な節約にはなりません。

非常に多くの DBS を使用している (そして実際には小さなファイルの恩恵を受けている) 顧客にとって、パフォーマンス上の問題は見られませんでした。ただし、それらのアクティビティ レベルは通常、他のインストールに比べてやや低いです。Mongo が行っていることに基づいて、いくつかの操作を実行するのが少し遅くなる可能性がありますが、気付くことはないと思います。

于 2012-07-23T15:16:52.917 に答える
1

さらに、AWS クラウドで実行し、SSD で m3.small インスタンスを使用する場合、ストレージは 4GB に制限されます。このオプションを設定すると、SSD でバックアップされた小さな mongodb ノードを持つことができます。小さなタスクには十分かもしれません

于 2014-07-31T22:30:34.033 に答える