insertMany与Mongoose中的collection.insert有什么不同?

时间:2016-08-04 08:23:21

标签: node.js mongodb mongoose

我四处寻找找到使用Mongoose将大量文档插入MongoDB的正确解决方案。

我目前的解决方案如下:

MongoClient.saveData = function(RecordModel, data, priority, SCHID, callback){
    var dataParsed = parseDataToFitSchema(data, priority, SCHID);
    console.log("Model created. Inserting in batches.");
    RecordModel.insertMany(dataParsed)
    .then(function(mongooseDocuments) {
         console.log("Insertion was successful.");
    })
    .catch(function(err) {
        callback("Error while inserting data to DB: "+err);
        return;
    })
    .done(function() {
       callback(null);
       return;
    });
}

但在我看来还有其他提供的解决方案。像这个: http://www.unknownerror.org/opensource/Automattic/mongoose/q/stackoverflow/16726330/mongoose-mongodb-batch-insert

使用collection.insert。这与Model.insertMany

有何不同?

同样适用于更新,我之前的问题:What is the right approach to update many records in MongoDB using Mongoose

询问如何使用由_id定义的Mongoose更新大块数据。答案建议使用collection.bulkWrite,而我的印象Model.insertMany也可以这样做。

0 个答案:

没有答案