如何通过JavaScript插入MongoDB来改变写入问题

时间:2014-07-22 19:33:34

标签: node.js mongodb

我想用write concern = 0来测试插入率。但是不知道在哪里更改JavaScript代码。

db.testData.insert( 
        {"global_node_id": 1,
        "some_node_id": 1,
        "data": "data"})

这是js中要插入的一行。我不明白将{w:0}放在哪里。

连接数据库时是否指定了写入问题?或者在insert命令中?

我尝试了以下内容:

conn = new Mongo()
db = conn.getDB("myDatabase",{w:0});

没有弹出错误,但速度不快。这是正确的语法吗?

2 个答案:

答案 0 :(得分:1)

假设通过" js code"你的意思是"在mongo shell"中,因为这是你的代码所暗示的,你在插入操作中指定了未确认的写入问题,如下所示:

> db.test.insert({a: 1}, {writeConcern: {w: 0}})
WriteResult({ })

答案 1 :(得分:0)

简短版

db.testData.insert( { 'global_node_id': 1, 'some_node_id': 1, 'data': 'data' }, { writeConcern: {w:0} } )

长版

我假设(给出你的代码和node.js标签)你实际上在使用MongoDB的NodeJS驱动程序而不是mongo shell。

insert的语法是:

collection.insert(docs[[, options], callback])

(可以在the docs中看到)。

所以,你有一个可选的第二个参数代表选项。您可以在选项中传递写入问题,如图所示。