2017-01-04 13 views
0

私は挿入を行うにはbashスクリプトを使用:MongoDBの挿入失敗「文書を挿入エラー:新しいファイルアロケーション失敗」を

for i in *.json 
do 
    mongoimport --db testdb --collection test --type json --file $i --jsonArray 
done 

今私のデータベースtestdbが5.951ギガバイトで、端子は私にエラー

を与え続けます

文書を挿入エラー:新しいファイルアロケーション失敗

データは、私は1つのコレクションに保持することができますどのくらい?これを処理するための最良の方法は何ですか?私は現在20GBのデータを持っていますが、追加する40GBのデータがもう1つあります。

-UPDATE-

ここに私のulimitのステータスがあります:

core file size   (blocks, -c) 0 
data seg size   (kbytes, -d) unlimited 
scheduling priority    (-e) 0 
file size    (blocks, -f) unlimited 
pending signals     (-i) 31681 
max locked memory  (kbytes, -l) 64 
max memory size   (kbytes, -m) unlimited 
open files      (-n) 4096 
pipe size   (512 bytes, -p) 8 
POSIX message queues  (bytes, -q) 819200 
real-time priority    (-r) 0 
stack size    (kbytes, -s) 8192 
cpu time    (seconds, -t) unlimited 
max user processes    (-u) 31681 
virtual memory   (kbytes, -v) unlimited 
file locks      (-x) unlimited 

答えて

0

モンゴは1つのコレクション内のドキュメント数十億を扱うことができますが、ドキュメントの最大サイズは16mです。 あなたが彼のサイズを設定することができ、コレクションを作成する場合:あなたは、コレクション内の倍数文書を挿入する必要がある場合

db.createCollection("collection-name", { capped: true, size: 100000 }) 

モンゴは、バルクのAPIを提供します。bulk-write-operations

+0

を私がチェックし、すべての私のファイルが16メートル少ないします。 23Gデータを挿入した後、それは拒否を開始し、そのエラーを返します – user3669481

+0

UNIXオペレーティングシステムまたはOSXを使用していますか?そうであれば、あなたは[ulimit restriction](https://docs.mongodb.com/manual/reference/ulimit/#recommended-settings)を持っている可能性があります – NotBad4U

+0

ulimitステータスを表示するように投稿を更新しました。オープンファイルまたは最大ユーザープロセスで問題になるのでしょうか? – user3669481

関連する問題