草庐IT

query-optimization

全部标签

mongodb - 这两个 mongo "queries"有什么区别?

给定具有这种结构的产品集合:{product:"SuperDuper-o-phonic",price:100000000000,reviews:[{user:"fred",comment:"Great!",rating:5},{user:"tom",comment:"IagreewithFred,somewhat!",rating:4}]};需要查找所有价格超过10,000且评级为5或更高的产品。这是我的解决方案(这是不正确的):db.catalog.find({$and:[{price:{$gt:10000}},{"reviews.rating":{$gte:5}}]});这是正确的

javascript - 最好使用包含大量对象或大量文档的文档?

所以我有一些关于公司里很多人的数据,比如他们的名字,年龄和性别。我要把他们的信息储存在MongoDB中。对我来说,将他们的信息存储在大量文档中还是作为一堆独立的对象存储在一个文档中更好?是否有任何性能或内存问题会使一种方法优于另一种方法?存储数据的示例方法:很多文件{_id:ObjectId('1'),name:'Bart',age:10,gender:'Male'},{_id:ObjectId('2'),name:'Lisa',age:8,gender:'Female'}一个文档中有很多对象{_id:ObjectId('1'),'Bart':{age:10,gender:'Male'

Spring 数据 mongodb : Optional @Query parameter no longer works

升级到springdatamongodb1.10.1后,我在运行查询时遇到如下错误:@Query("{$and:["+"{$or:[{$where:'?0==null'},{'field1':?0}]},"+"{$or:[{$where:'?1==null'},{'field2':?1}]},"+"]}")publicPagefindAll(Stringparam1,Stringparam2)检查错误,我看到where子句中的参数没有被引用,结果我得到:org.springframework.data.mongodb.UncategorizedMongoDbException:Quer

spring - 如何使用@Query 在日期之间选择 Spring 数据 MongoDB

我将Spring数据与MongoDB一起使用,我需要在实际日期和提前7天之间查找。我已经使用@Query注释创建了repsoitories,不喜欢使用Criteria类。你知道如何在@Query之间使用吗?提前致谢。 最佳答案 您可以尝试以下查询。使用@Query注解@Query(value="{'date':{$lt:?0,$gt:?1}}")ListfindByDateBetween(Instantfrom,Instantto);或者使用存储库支持的关键字ListfindByDateBetween(Instantfrom,Ins

c# - MongoDB 规范 : query nested objects using Expando

我看到了这个问答MongoDBNormquerynestedobjects,但它似乎只适用于强类型对象。有没有办法在Expando对象(https://github.com/atheken/NoRM/wiki/expando)上查找或更新嵌套字段?基本上,我有一个简单的JSONCMS工具,可以让开发人员在服务器上存储文档对象,然后将其提供给Flash客户端。我需要提供一个简单的服务,开发人员可以在其中创建JSON对象、保存它、进行嵌套查询以及更新这些对象。由于数据结构未知,我认为这将是使用MongoDB的完美场所。不幸的是,.Net似乎更适合强类型数据结构。有什么想法吗?谢谢!

ruby-on-rails - MongoDB/Mongoid : Can one query for ObjectID in embedded documents?

郑重声明,对于Rails和MongoDB,我还是个新手。我正在使用Rails+Mongoid+MongoDB构建一个应用程序,我注意到Mongoid出于某种原因将ObjectID添加到嵌入式文档中。有什么方法可以通过ObjectID查询集合中的所有文档,包括主文档和嵌套文档?如果我运行这个命令db.programs.findOne({_id:ObjectId("4d1a035cfa87b171e9000002")})我得到这些结果是正常的,因为我在根级别查询ObjectID。{"_id":ObjectId("4d1a035cfa87b171e9000002"),"created_at"

performance - 显示 MongoDB 的执行计划/统计信息

有没有办法让我看到MongoDB如何执行查询,即它使用了哪些索引、它扫描了多少block、花费了多少时间等等?类似于AUTOTRACE在SQL*PlusforOracle中向您显示的内容吗? 最佳答案 http://www.mongodb.org/display/DOCS/Explain 关于performance-显示MongoDB的执行计划/统计信息,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

mongodb - 蒙戈 : Using $dayOfWeek in a $match clause when query has also a $groupy

我有一个mongo文档,其中一些寄存器存储有日期,例如以非常简化的方式:{"vehicleId":"vehicle4","telemetryDate":ISODate("2013-06-22T05:00:00Z"),"alarmsTotal":9}{"vehicleId":"vehicle5","telemetryDate":ISODate("2013-06-20T05:00:00Z"),"alarmsTotal":2}我需要按vhicleId执行分组,汇总警报总数。不过,可以选择是否排除周末(周六、周日)。我一直在用Mongo寻找这个问题的答案,但没有成功。我的查询在不考虑正常工作的

mongodb - Mongo - 选择具有最大子文档数的父文档,更快的方法?

我是mongo的新手,正在尝试按照查询开始工作。并且工作也很好,但是需要更多时间。我想我做错了什么。集合parent中有很多文档,接近6000个。每个文档都有一定数量的childs(childs是另一个集合,里面有40000个文档).parents&childs通过文档中名为parent_id的属性相互关联。请看下面的代码。以下代码执行查询大约需要1分钟。我不认为mongo应该花那么多时间。functiongetChildMaxDocCount(){varmaxLen=0;varbigSizeParent=null;db.parents.find().forEach(function(

mongodb - MongoRepository findByThisAndThat 带有多个参数的自定义@Query

我正在尝试运行此查询{campaignId:ObjectId('5a6b11e806f0252e1408e379'),'options.path':'NT'}它在Compass中完美运行,但是当我尝试添加如下所示的MongoRepository接口(interface)时:@Query("{'campaignId':ObjectId(?0),'options.path':?1})")publicDialogfindByCampaignIdAndPath(StringcampaignId,Stringpath);我得到这个异常:nestedexceptioniscom.mongodb.u