そのため、mongodb に入力する必要がある「ピン」を含むファイルがあります。これらは というファイルに含まれてpins.txt
おり、データは改行で区切られています。
A4DS24SD2
DF234SDF2
HFFGHFG45
JDRSDFG35
...
インポートする必要があるピンは約 70,000 あります。
各ピンには、次のデフォルトused
ステータスもあります。false
したがって、このような膨大な数のピンをインポートするために、nodejs/mongoose (アプリに組み込まれている) を使用してこれを作成しました。
fs.readFile './data/pins-test.txt', 'utf8', (err,data)->
if err
console.log err
codes = data.split('\n')
codes.forEach (code)->
pin = new Pin()
pin.pinid = code
pin.save()
数百ピンのテストでは問題なく動作しますが、70,000 ファイルを試すとマシンのメモリが不足し、次のエラーが表示されます。
FATAL ERROR: CALL_AND_RETRY_2 Allocation failed - process out of memory
それで、私の質問は、これほど多くのデータをインポートする最良の方法は何ですか? これらを一度に 1 つずつ実行するには、async.js を使用する必要がありますか?