我有一个不断下载数据的脚本,我正在将数据保存到MongoDB中。 每个文档都有一个关联的 ID。 如果我收到相同的文档,我只更新一部分。 如果 id 是新的,我会添加整个文档。
现在的问题是,当MongoDB中没有文档时,它运行流畅,但是当我在mongo中有大约30k个文档时,性能开始下降。
var batch = database_object.collection(channel_basic_data_collection).initializeUnorderedBulkOp({useLegacyOps: true});
batch.find(query).upsert().updateOne(update_OPERTATION);
if (count > 1000 )
{
batch.execute(function (err, result) {
if (err){
errorLog(err)
operation_started = false
return
}
batch = database_object.collection(channel_basic_data_collection).initializeUnorderedBulkOp({useLegacyOps: true});
});
}
我需要插入 1.5M 个文档,对于每个新文档,我需要搜索整个集合。
在用于查询的字段中创建索引。