草庐IT

mongodb.driver

全部标签

MongoDB 编辑数组中的对象(如果存在) - 否则推送一个新对象

对于集合“users”中的以下文档:{_id:ObjectId(1234),name:"JoeBloggs"events:[{date:1378335600,//timestamprepresentingthestartofdayvenues:[,,...]},{date:1378249200//thepreviousdayvenues:[]}]}问题:我想在给定日期将新的venue_id推送到venues数组。但是,如果不存在具有相应日期的事件对象,则会将新的事件对象推送到具有新日期的事件数组,并将地点推送到field数组。当前解决方案:尝试更新日期,如果失败,则我们知道需要创建新的

c# - MongoDB C# foreach BsonElement

我有一个C#类,我将其实例化并用于在集合中执行CRUD操作publicclassProperty{[BsonId]publiclongid{get;set;}[BsonElement("address_line")]publicstringaddress_line{get;set;}[BsonElement("city")]publicstringcity{get;set;}[BsonElement("zip")]publicstringzip{get;set;}}我希望能够使用foreach循环并使用$set构造更新命令而不指定每个元素,如下所示:varupdateValues=ne

javascript - javascript/mongodb/mapreduce 中的全局变量

我知道这个问题在互联网上被问过无数次,但我不知道这是怎么回事,我已经用头撞墙好几个小时了。这个有效:inmyscript.js:obj='hello';varf=function(){printjson('obj='+obj);}f();$mongomyscript.jsobj=你好这行不通:date1="2013-09-03T00:00:00Z";date2="2013-09-04T00:00:00Z";varmapIntensities=function(){emit(this.unit,this.intensity);};varreduceIntensities=function

java - MongoDB 游标中的内存泄漏 (OutOfMemory)?

这就是我读取大型MongoDB表的方式(每个对象的属性中都有非常大的数据block):DBCursorcursor=collection.find(/*myquery*/);while(cursor.hasNext()){DBObjectobject=cursor.next();doSomething(object);//nodatastaysinmemory}cursor.close();我得到:java.lang.OutOfMemoryError:Javaheapspaceatjava.lang.StringCoding$StringDecoder.decode(UnknownSo

mongodb - 恢复数据库备份如何影响操作日志?

我有一个独立的MongoDb实例。它里面有很多数据库。我虽然只关心备份/恢复其中一个数据库,但我们称它为DbOne。使用(http://www.mongodb.com/blog/post/dont-let-your-standalone-mongodb-server-stand-alone)中的说明,我可以在此独立服务器上创建一个oplog。使用工具Tayra,我可以记录/存储操作日志条目。能够创建增量备份是我在独立实例上启用oplog的主要原因。我打算每天使用命令进行一次完整备份mongodump--dbDbOne--oplog据我了解,此备份将包含我的数据库的时间点快照。假设我想放

node.js - 在 MongoDB 中搜索(来自 NodeJS)

我有一个MongoDB数据库,每天会有5到10次插入,每天。将要插入的数据结构如下所示:{question:'texthere',date:'01/01/200001:01',title:'Sometitle',client:'name',assigned_to:['name1','name2','name3'],answers:[{answer:'blabla'},{answer:'blabla'},{answer:'blabla'}]}我需要在所有文本字段(问题、标题和所有答案)中搜索一个词或一系列词。我一直在寻找,这是我到目前为止所发现的。有3种解决方案:a)$regexpb)E

mongodb - 使用 $elemMatch 更新 mongodb 嵌入式文档

我有一个包含嵌入式文档数组的模型。varCourseSchema=mongoose.Schema({invitations:[InvitationSchema],total:Number});varInvitationSchema=newmongoose.Schema({token:{type:String,required:true},email:String});想通过匹配请求中嵌入的邀请数组的token来更新/增加邀请总数,这里我遵循了http://diogogmt.wordpress.com/2012/03/23/update-elementmatch-and-the-posi

mongodb - 仅查询Mongodb中的字段名

考虑Mongodb中的文档,例如:{name:"Josh","address":{"street_no":34,"district":"Gurgaon","pincode":"1234xyz"}}如何通过查询获取字段名称(而不是值)?可能吗?例如,我需要编写一个查询,它将返回“name”、“address”、“street_no”、“district”和“pincode”作为Mongodb文档中的字段。 最佳答案 另一种获取模式的有趣方法是将文档的元数据存储在自身中:例如{_id:1field1:'test'field2:[]fie

mongodb - Mongoose 的mapreduce函数错误

我正在尝试执行MapReduce函数,但是,我不知道为什么,它会返回下一个错误:{[MongoError:exception:assertionsrc/mongo/db/commands/mr.cpp:424]name:'MongoError',errmsg:'exception:assertionsrc/mongo/db/commands/mr.cpp:424',code:0,ok:0}我的代码:O.query={userto:id,userfrom:{$exists:true}};//"id"isavarO.map=function(){emit(this.userfrom[0],

MongoDB: "Malformed geo query"多边形上有 $geoIntersect

我在一个集合中有事件,每个事件都包含一个所需的位置,设置一个GeoJSON多边形。我在另一个集合中也有服务提供商,也有一个GeoJSON多边形,指示他们可以交付的区域。对于给定的服务提供商,我试图列出兼容区域中的所有事件。但是,我得到这个错误:Malformedgeoquery:{$geoIntersects:{$geometry:{type:"Polygon",coordinates:[[[-31.59327575763251,115.8574693000001],[-31.59676306691357,115.9162469300458],[-31.60715789289806,1