Tag: node mongodb native

cursor batchSize如何在node-mongodb-native驱动程序中工作?

我使用的是mongodb-native-driver,我不太明白为什么他们总是在doc示例中设置batchSize = 1。 http://mongodb.github.io/node-mongodb-native/2.0/api/AggregationCursor.html#each 根据官方文档,不应使用等于1的batchSize: https ://docs.mongodb.org/v3.0/reference/method/cursor.batchSize/ 如果我设置了batchSize = 1,会发生什么? 每次检索文档时都会强制转到数据库吗? 这听起来真的很奇怪…这两个引用是官方消息来源,所以我想我错过了一些东西。

mongodb使用json更新同一行的多个字段

我正在使用node.js mongodb本地驱动程序。 比方说,我有一个称为任务的mongodb集合,每个任务看起来像 {date:'29th jan', desc:'xxx', status:'incomplete'} 从用户input,我得到一个JSON对象的“newData”的forms {desc:'yyy',status:'complete'} 我用这个newData更新我的mongodb行的方式就像 db.tasks.update({_id:newData.id},{$set:{desc:newData.desc,status:newData.status}}) 这里只有两个字段,所以在newData的每一对上使用$ set是可以的,但是我的问题是我可以更新行,而不必在ne​​wData的每一对上写$ set,只需提一次newData。 (显然,我会保持在newData中的对键与那些是mongodb行一样)

如何在Node.js中的MongoDB mapReduce函数中处理ISOdate戳

我在Node.js应用程序的mapReduce函数中使用了Date函数。 在下面的map函数中,我首先将ISOdatestring转换为Date对象。 然后获取date的年份,这将被用作关键。 预期的结果是输出集合中的_id是“2013”​​。 但实际上,_id是NaN(types是Double)。 看来在mapReduce函数内使用的Date函数与普通的JS Date函数不同。 我如何在下面的map函数中使用正常的JS Date函数? 如果不可能,如何在map函数内处理ISOdatestring? 。 var mongodb = require('mongodb'); var map = function() { var date = new Date("2013-03-19T08:27:58.001Z"); // Convert ISO date string to Date object var year = date.getFullYear(); // Get the year of the date. emit(year, this); }; var reduce = function(key, values) { if (values.length) […]

如何使用节点和expression式从search表单中查询mongodb

我想制作一个HTML表单来查询MongoDB。 我如何编写逻辑来忽略空白字段? 例如,我有两个search参数。 如果姓氏字段为空,我将如何编写查询来忽略该字段? router.post('/auth/search', auth, function(req,res){ var db = req.db; console.log(req.body); db.users.find({ 'firstname': req.body.firstname, 'lastname' :req.body.lastname // if this field is blank in the form how can I ignore it? }, function(err, docs){ if (err) return err; console.log(docs); res.send(docs); }); }); 感谢任何帮助。 谢谢!

如何知道mongodb nodejs native的当前池大小?

我正在做一些关于维护mongodb连接的研究。 请帮助我如何知道mongodb nodejs native的当前池大小。

我怎样才能使用蓝鸟Promiseify节点的游标和/或集合'toArray()mongodb模块?

相关软件包: "dependencies": { "mongodb": "1.4.x", "bluebird": "2.3.x" } 我看过: 我如何使用蓝鸟promisify MongoDB原生的Javascript驱动程序? 蓝鸟Promisfy.each,for循环和if语句? https://stackoverflow.com/a/21733446/438992 蓝鸟的promisification文件 其他一些地方 我困在findAsync({}) 。 我更喜欢一个游标,但是很less有我想要调用toArray() 。 这也是可能的,我完全错了。 MongoClient.connectAsync('mongodb://127.0.0.1:27017/sr') .then(function(_db) { db = _db; return db.collectionAsync('posts'); }) .then(function(colPosts) { return colPosts.findAsync({}); }) .then ( A MIRACLE OCCURS ) .catch(function(e) { console.log(e); }) .finally(function() { if (db) db.close(); }); 在奇迹发生的地方,我想要迭代游标结果或数组集合。 我在解决如何解决这个问题方面遇到困难。

NodeJS / MongoDB中用于集合的不同数据库

在一个项目中,我正在使用node-mongodb-native连接到具有一些集合的数据库。 现在有另一个数据库包含另一个需要的集合。 我想从同一个项目中查询这个集合,用最less量的代码改变。 我知道MongoEngine这个很漂亮。 在NodeJS中是否有这样做的标准方式,例如使用node-mongodb-native驱动程序?

node-mongodb-native或Mongoose

我们将开发一个可以和MongoDB一起工作的应用程序。 应用程序的用户将在GUI的帮助下创build自定义实体,所以在开发应用程序时我们没有任何预定义的实体。 我们应该与MongoDB本地或使用mongoose? 谢谢。

MongoJS增加池大小

我正在通过MongoJS驱动程序使用Node.js和MongoDB构build一个简单的应用程序。 我正在瞄准一些沉重的负担(在10分钟内约10000名用户,约30秒的会话) 我正在使用连接池,默认情况下,mongojs创build5个连接,预计将被共享。 我想放大这个值来提高效率,否则一堆请求会等待一个非常不希望的连接。 我发现这解释了如何使用本地驱动程序来增加池大小http://technosophos.com/content/nodejs-connection-pools-and-mongodb 我知道mongojs是本地驱动程序的包装,但有没有办法在mongojs中设置连接池大小? 或者是你必须从驱动程序做的事情..但如果是这样,你怎么能同时使用驱动程序和mongojs? 任何人都可以指向正确的方向吗? 非常感谢。

如何从节点mongo本机驱动程序获得数据库的实例?

考虑一下,我在主app.js文件中打开了MongoDB连接,下面的代码放在callbackapp.js : mongodb.connect('MongoDBUrlGoesHere', function (err, db) { app.listen(app.get('port'), function AppListnCB() { console.log("Server listening on port " + app.get('port')); }); }); 这完全是为了在整个应用程序中只有一个数据库实例。 现在,如果我们在另一个external.js文件中,并且需要一个已连接的同一个db对象。 如果我们使用蒙古语或mongoose,这可以很容易地完成 有人可以帮助我find如何使用本地驱动程序可以做到这一点?