草庐IT

mongodb.driver

全部标签

php - 在 Yii2 中同时使用 Redis 和 MongoDB ActiveRecords

我有MongoDB事件记录(模型),我想知道是否可以使用Redis从Redis的存储中自动设置/获取/删除模型。例如,如果我要运行:MyModel::find()->where(["id"=>1])->one();有没有办法让Redis存储结果并在我下次运行相同代码时返回它?此外,如果我要使用id=1更新模型,我希望Redis会使缓存失效。这一切都可能吗? 最佳答案 使用哪个数据库并不重要。它是关于如何实现它们的。Yii在配置文件中设置了这两个组件:db:在需要时使用的数据库连接,如ActiveRecord表示模型的类或QueryB

mongodb - 在 MongoDB 中缓存查询结果

我将处理一个变化缓慢的大型数据集,因此我想通过使用缓存机制来优化查询结果时间。例如,如果我想查看有关过去360天数据的一些指标,我不需要再次查询数据库,因为我可以重复使用上次查询结果。MongoDBnative支持缓存还是我必须使用另一个数据库,例如提到的Redishere编辑:我的问题不同于CachingrepeatingqueryresultsinMongoDB因为我询问了有关外部缓存系统的问题,而在后期问题中的回答是特定于使用MongoDB和Tornado 最佳答案 Motor(MOngo+TORnado)包的作者在此处提供了

node.js - 如何确定文档在 MongoDB 更新期间是否实际更改

我在NodeJS中使用Mongoose驱动程序。我有一个非常简单的更新调用,其目的是将外部session源同步到我的数据库:collection.update({meeting_id:doc.meeting_id},newDoc,{upsert:true})返回的对象确定是否发生了更新或插入。这非常有效。我的问题是我必须确定是否发生了实际更改。当您用自身更新文档时,MongoDB会以完全相同的方式处理它,就好像所有字段都已更改一样。所以我的问题是:有什么好方法可以判断是否真的发生了变化?我可以搜索每个文档然后手动比较每个字段,但这似乎是一个糟糕(且缓慢)的解决方案。

mongodb - Symfony 返回 "MongoId Class not found"错误

我正在使用Symfony3,并且在我的应用程序中使用了mongodb。我在composer.json文件中包含了以下内容"doctrine/mongodb-odm":"^1.0@dev","doctrine/mongodb-odm-bundle":"^3.0@dev",我尝试了几个来自互联网的解决方案,但出现了以下错误Fatalerror:Class'MongoId'notfoundin/var/www/vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/Id/AutoGenerator.phponline34

mongodb - Mongoose 查找一个字段的多个值

Select*fromtable_namewheresport_typeLIKE('Cricket','Football');我正在尝试使用find查找板球和足球的sport_typetable.find({sport_type:"Cricket"})谁能帮帮我 最佳答案 尝试使用$或:table.find({$or:[{'sport_type':'Cricket'},{'sport_type':'Football'}]},function(err,docs){//dosomething});

node.js - 如何使用 MongoDB Geospatial 选择查询中的字段?

我将MongoDBGeospatial与node.js和express结合使用,以查询特定点附近最近的街道。在我的结果中,我只想选择“名称”和“地址”字段。我已经尝试了下面的这段代码,但它不起作用,我收到了这个错误:“未处理的拒绝错误:无法将$select与数组一起使用。”谢谢。Street.find({'location':{$near:{$geometry:{type:'Point',coordinates:coords},$maxDistance:1000},$select:{_id:0,name:1,address:1}}}) 最佳答案

mongodb - 数组中的文档与序列匹配

考虑以下3个文档(简化):{"name":"AlexHam","opponents":[{"location":"west","position":5},{"location":"north","position":7},{"location":"east","position":2}]},{"name":"JohnFlex","opponents":[{"location":"north","position":9},{"location":"north","position":4},{"location":"south","position":2}]},{"name":"AdamW

node.js - 使用 MongoDB 在 Node.js 中扩展,我应该什么时候一次查询所有 ID,还是并行查询每个 ID?

假设我有一个处理N个用户的脚本。该脚本可能看起来是两种方式之一,假设资源充足,哪种方式更快?我可以使用Promise.all或async.parallel。选项1functionprocessUsers(userIds){monog.find({_id:{$in:userIds},(userDocs)=>{consttasks=userDocs.map((userDoc)=>processUser(userDoc))async.parallel(tasks,(err,results)=>console.log('finished'))});}选项2functionprocessUser

javascript - 尝试使用带有 mongodb 的 node.js 实现 Multi-Tenancy 系统时出现问题

我们有不同的客户,我们的想法是在同一个应用程序中将他们的数据彼此分开。我们将node.js与mongodb一起使用,并使用mongoose进行查询。这是模型目录中的“index.js”文件varmongoose=require('mongoose');varfs=require('fs');varconnectionUrl='mongodbserverlink/';varcompanies=[{db:'comp1_db',comp_id:'com1'},{db:'com2_db',comp_id:'com2'},{db:'com3_db',compa_id:'com3'}];varco

mongodb - 无法从 AWS EC2 实例连接到 Mlab.com 数据库

我正在尝试连接到我在http://mlab.com上托管的MongoDB实例来自AWSEC2实例。$mongods023495.mlab.com:23495/db-uusername-ppasswordMongoDBshellversion:2.6.10connectingto:ds023495.mlab.com:23495/db2016-11-29T08:01:14.014+0000Error:18{ok:0.0,errmsg:"authfailed",code:18}atsrc/mongo/shell/db.js:1287exception:loginfailed但如果我尝试从我的