草庐IT

query-performance

全部标签

performance - 带排序的 MongoDB 地理空间查询 - 性能问题

我有查询(非常慢~2,5s):db.markers.find({latlng:{'$within':{'$box':[[-16,-140],[75,140]]}}}).sort({_id:-1}).limit(1000)当我为这个查询运行explain时,我得到了{"cursor":"GeoBrowse-box","isMultiKey":false,"n":1000,"nscannedObjects":242331,"nscanned":242331,"nscannedObjectsAllPlans":242331,"nscannedAllPlans":242331,"scanAnd

node.js - 使用 .where() Query with .update() 通过 Mongoose ?

如何在mongoose中使用.where()和.update()?查询条件是传递给.update()的第一个参数。我是否应该将查询条件的null传递给.update()并在其后跟一个.where('_id',id)?另外,我也可以将其应用于.findByIdAndUpdate()/.findOneAndUpdate()吗?如果没有,是否有一个Query方法,在该方法中我可以仅使用更新文档来.update()并通过其他.where()链中的方法? 最佳答案 在Model类上调用where返回一个Query对象,该对象具有您所询问的那种

performance - 尽管设置了索引,但简单的 MongoDB 查询非常慢

我有一个MongoDB集合,其中包含大约1亿个文档。文档基本上是这样的:_id:ObjectId("asd1234567890")_reference_1_id:ObjectId("fgh4567890123")_reference_2_id:ObjectId("jkl7890123456")name:"Test1"id:"4815162342"created_time:Date(1331882436000)_contexts:["context1","context2"]...设置了一些索引,这是db.mycoll.getIndexes();的输出[{"v":1,"key":{"_i

performance - 如何减少 MongoDB 中第一个查询的查询响应时间?

我在MongoDB中有一个包含2000万个文档的集合,并为该集合创建了一个索引。我已经确认find()查询使用索引(col_1_col_2)(使用解释确认)。但是,我注意到一天中的第一个find()查询需要5-10秒,但所有后续查询都需要不到100毫秒。更新的数据库统计数据:数据库..统计()纳斯。计数20135438尺寸5694.57mavgObjSize296.55146314672存储尺寸7109.57mnumExtents35n索引4lastExtentSize1188.86m填充因子1旗帜1totalIndexSize3044.69mindexSizes{“id”:65331

performance - mongodb更新导致读取速度极慢

我对mongoDB比较陌生。我设置了一个带有2个副本集的分片mongo集群;每个集合在一个碎片中。->4个mongo守护进程守护进程分布在2个WIN服务器,每个8gbram。我有一个包含10个mio文档(~600字节/doc)的测试集合,并使用c#驱动程序连接到mongos(primaryPreferred)现在,如果我在分片键上运行数千个单次读取查询,我可以看到mongo占用越来越多的内存并在7.2GB左右停止。几乎没有页面错误,查询速度极快。好的!与对不同文档属性的更复杂查询相同(存在这些查询的组合索引)但是如果我只执行几个更新查询,我的内存使用量就会大幅下降......就像mon

performance - 如何解决和改进这个运行缓慢的查询?

我希望微调我在Mongo上使用的字符串搜索查询。在SQLServer世界中,我想相信我对索引的工作原理以及如何构建正确的索引有一定的了解。我试着用Mongo试一试,但我不认为我的方法不对。我的收藏大约有430万份文件。文档结构如下所示:{"_id":{"$oid":"527027456239d1212c07a621"},"ReleaseId":2451,"Status":"Accepted","Title":"HardRhythmicMotions","Country":"US","MasterId":"35976","Images":[{"Type":"primary","URI":

mongodb - 用户断言 : 1: Update query failed -- RUNNER_DEAD

我们正在使用MongoDB(v2.6.4)来处理一些数据,一切都很好,除了偶尔,我们会遇到一个奇怪的RUNNER_DEAD异常...MongoDB.Driver.WriteConcernException:WriteConcerndetectedanerror'Updatequeryfailed--RUNNER_DEAD'.(Responsewas{"lastOp":{"$timestamp":NumberLong("6073471510486450182")},"connectionId":49,"err":"Updatequeryfailed--RUNNER_DEAD","code

MongoDB count with query 返回的记录多于 count all

我注意到MongoDB的一个奇怪行为,我试着猜测可能是什么问题:我有一个MongoDB,在一个集合中有很多文档。我运行了以下查询:db.mydocuments.count({_id:{$lte:newObjectId("549010c9e4b06c2f044f27f4")}});结果是66.579.389个文档比我运行以下:db.mydocuments.count();令人惊讶的是我得到了以下总数:32.606.242这怎么可能?集合的总计数如何小于查询计数?至少它需要等于查询计数。db.mydocument.stats()是:{"ns":"mydb.documents.photos"

performance - 我们如何改进MongoDB MapReduce函数,该函数需要很长时间才能检索数据并导致内存不足错误?

从mongo检索数据花费的时间太长,即使对于小数据集也是如此。对于更大的数据集,我们会得到javascript引擎的内存不足错误。我们尝试了几种模式设计和几种检索数据的方法。如何优化mongodb/mapreduce函数/mongowire以更快地检索更多数据?我们对MongoDB还不是很有经验,因此不确定我们是否遗漏了优化步骤,或者只是使用了错误的工具。1。背景为了绘图和回放,我们希望随着时间的推移存储多个对象的更改。目前我们每个项目有几十个对象,但我们需要存储数千个对象。对象可能每秒更改一次,也可能长时间不更改。delphi后端通过mongowire和superobjects对mo

c# - Mongodb In Query 对每条记录都有限制

我有一个id的authorIds=["1","2",3","4"]数组。我有另一个数组保存对authorId的引用。例如:book=[{bookId:"abcd",authorId:"1"},{bookId:"def",authorId:"1"}{bookId:"ghi",authorId:"2"}{bookId:"kjl",authorId:"1"}];现在我想使用In查询(mongodbC#drvier),但想将每位作者的书籍数量限制为5本书。谁能告诉我该怎么做。 最佳答案 您可以使用Limit选项来实现这一点:varbuild