草庐IT

mongodb-cluster

全部标签

node.js - 什么最适合使用 docker 容器的 mongodb Node 应用程序?

对于使用docker容器的带有mongodb的Node应用程序来说,什么是最好的?node和mongodb都在同一个docker容器中,或者nodeApp和mongodb的单独容器相互链接?我已经尝试了这两种方法,它们都对我有用。对于第一种情况,我采用了基于ubuntu的镜像并使用Dockerfile安装了node和mongodb,并启动了在同一容器中具有两个环境的容器。对于第二种情况,我使用了node和mongodbbase-images并作为单独的容器运行。但对我应该选择哪种方法感到困惑? 最佳答案 在单独的容器中使用两者的方法

node.js - 观看使用 MongoDB Streams 创建文档

每次将特定类型的数据插入集合时,我想使用MongoDB流来触发事件。我已经找到了与我正在寻找的大致相似的东西,但它只适用于更改流,而不适用于插入。知道如何完成这项工作吗?我正在使用Mongodb驱动程序和Nodejs来完成这项工作,所以我的代码应该是这样的:constMongoClient=require('mongodb').MongoClient;consturi='mongodb://localhost:27017/?replicaSet=rs0';MongoClient.connect(uri,function(err,client){constdb=client.db('my

MongoDB 聚合嵌套分组

我有Assets集合,其中包含类似的数据{"_id":ObjectId("5bfb962ee2a301554915"),"users":["abc.abc@abc.com","abc.xyz@xyz.com"],"remote":{"source":"dropbox","bytes":1234}{"_id":ObjectId("5bfb962ee2a301554915"),"users":["pqr.pqr@pqr.com",],"remote":{"source":"google_drive","bytes":785}{"_id":ObjectId("5bfb962ee2a30155

Mongodb groupby on Dictionary inside dictionary

我有一个集合,其中包含如下文档:文档1:{"company":"ABC""application":{"app-1":{"earning_from_src_A":50,"earning_from_src_B":43},"app-2":{"earning_from_src_A":10,"earning_from_src_B":13}}}文件2:{"company":"ABCD""application":{"app-1":{"earning_from_src_A":150,"earning_from_src_B":413},"app-2":{"earning_from_src_A":11

mongodb - MongoDB 中的条件 $ 查找?

我在MongoDB3.6中有两个集合:users:[{name:"John",allowedRoles:[1,2,3]},{name:"Charles",allowedRoles:[1]},{name:"Sarah",isAdmin:true}]roles:[{_id:1,name:"Foo",description:"Thisroleallowstofootheblargs"},{_id:2,name:"Bar",description:"..."},{_id:3,name:"Doh",descripcion:"..."}]我是MongoDB的新手;我刚刚想出了如何使用$lookup

node.js - Mongodb查询文档数组字段长度而不获取数组

假设我有一个带有数组字段的集合:{title:String,users:[String],}现在我需要从集合中查询文档列表,只使用每个文档中users的长度,而不使用users数组中的实际元素(因为它可能很大,不值得从数据库中获取它们并计算长度):Collection.find({}).sort({_id:-1})这可能吗? 最佳答案 您可以使用$size用于查找users数组长度的聚合运算符db.collection.aggregate([{"$project":{"userLength":{"$size":"$users"}}}

javascript - 基于数组集的mongodb唯一索引

说如果我有文件:{accounts:[1,2]}我应该无法添加新文档{accounts:[2,1]}但我应该可以添加{accounts:[1,3]}有什么方法可以创建这样的唯一索引吗?我目前的解决方案是检查它的子集是否尚未定义。 最佳答案 您可以利用$all运算符构建您的查询条件,db.col.update({accounts:{$not:{$all:[2,1]}}},{$push:{accounts:{$each:[2,1]}}})//willreturnnomatch同时db.col.update({accounts:{$not

node.js - 在 mongodb 中查找日期

我在Mongo中有一个模型(vehicleData),它存储了一些数据,这些数据:型号:constVehicleDataSchema=newmongoose.Schema({carStatus:String},{timestamps:true})样本数据{"_id":ObjectId("5c177d2b6f3b4565ccb0aaf2"),"status":"DRIVING","createdAt":"2018-12-17T08:47:57.788Z","updatedAt":"2018-12-17T08:47:57.788Z","__v":0}我正在尝试在Node应用程序中按大于日期

javascript - 如何通过 http 从 mongoDB 发送大量文档?

我有一个mongoDB数据库,我希望能够一次获取数百万个文档,而不会崩溃,避免游标错误。我想使用express(nodeJS)通过http发送数据。我的收藏有成千上万的文档,每个文档都有一个包含数千个较小文档的字段。我收藏的当前大小是500MB。您知道这个大数据案例的最佳实践吗?我应该实现基于限制/跳过的解决方案吗?如果是,能否请您提供代码示例?我已经尝试过文档流,这似乎更可靠,但我仍然遇到同样的光标问题。(未找到光标)app.get("/api/:collection",(req,res)=>{constfilter=JSON.parse(req.query["filter"]||"

node.js - 我可以在 MongoDB 中的单个查询中更新不同的文档吗?

我想用一个查询更新MongoDB中的不同文档。我现有的数据库集合如下所示:[{"_id":"1","name":null,"Age":null},{"_id":"2","name":null,"Age":null},{"_id":"3","name":null,"Age":null}]我有以下JSON:[{"_id":"1","name":"Arav","Age":"25"},{"_id":"2","name":"Mohan","Age":"64"},{"_id":"3","name":"Nishant","Age":"23"}]我想知道是否可以通过单个查询使用来自上述JSON的相应数