草庐IT

r - 长时间使用 mongo.find.all (rmongodb) 导入数据

我尝试使用以下方法将数据从mongodb导入到r:mongo.find.all(mongo,namespace,query=query,fields=list('_id'=0,'entityEventName'=1,context=1,'startTime'=1),data.frame=T)该命令适用于小型数据集,但我想导入1,000,000个文档。使用system.time并在命令中添加limit=X,我将时间作为要导入的数据的函数进行测量:system.time(mongo.find.all(mongo,namespace,query=query,fields=list('_id'

java - 如何使用 mongo Java 驱动程序 3.0+ 检查集合中是否存在文档

使用新的3.0+javadriver从mongo中检查文档是否存在于集合中的最佳方法是什么。我看过here并试图做类似的事情。我只做到了这一点:FindIterableiterable=collection.find(eq("code","abcdefg")).projection(Projections.include("_id")).limit(1);这会返回一个FindIterable但您如何检查它是否找到了任何东西?如果可以,请提供代码示例。我试过:if(!iterable.first().isEmpty()){System.out.println("RESILTISFOUND

mongodb - 在mongo中插入具有数组大小的字段

我在mongodb中有一个文档,其中包含一些数组。现在我需要一个字段,其中包含该数组的一些项目。所以我需要更新文档添加这个字段。只是我认为这会起作用:db.myDocument.update({"itemsTotal":{$exists:false},"items":{$exists:true}},{$set:{itemsTotal:{$size:"$items"}}},{multi:true})但它以“notokForStorage”结束。我也尝试进行聚合,但它抛出异常:"errmsg":"exception:invalidoperator'$size'","code":15999,

java - mongo-hadoop 连接器 :how to query data

我在java(spark应用程序)中使用hadoopmongo连接器。我已经通过设置此配置读取了mongodbConfigurationmongodbConfig=newConfiguration();mongodbConfig.set("mongo.job.input.format","com.mongodb.hadoop.MongoInputFormat");mongodbConfig.set("mongo.input.uri","mongodb://localhost:27017/MyCollectionName.collection");我可以添加什么来查询数据(比如.limi

mongodb - Mongo 查询 - 约束数量与速度(和索引!)

假设我在数据库中有100万个条目,数据库中有10个字段/(“列”)。在我看来,我搜索的列越多,查询速度就越快-例如:db.items.find({$and:[{field1:x},{field2:y},{field3:z}]})快于:db.items.find({$and:[{field1:x},{field2:y}]})虽然我很想说“太棒了,这对我来说完全有意义”——但事实并非如此。我只知道它发生在我的特殊情况下,想知道这是否真的总是如此。如果是这样,理想情况下,我想知道为什么。此外,在创建多字段索引时,以任何顺序排列它们是否有帮助。例如,假设我添加了一个compoundindex:

mongodb - 查询 Mongo 的 NumberLong

我正在使用mongo2.4。我有一个包含这两个条目的集合:>db.collection.find({domain:"pow.com"}){"_id":ObjectId("577ee9ec6f66304109769855"),"domain":"pow.com","mImp":NumberLong(38),"oImp":NumberLong(38),"vImp":NumberLong(120),"date":"ThuJul07201616:46:52GMT-0700(PDT)","id":NumberLong(3847146)}{"_id":ObjectId("577ef4c44df54

mongodb - 需要一些建议 dockerizing MongoDB

我正在使用MongoDB和Docker,此时我正在尝试创建一个有用的图像供自己在工作中使用。我创建了以下Dockerfile:FROMmongo:2.6VOLUME/data/db/data/configdbCMD["mongod"]EXPOSE27017我已将它添加到我的docker-compose.yml文件中:version:'2'services:###PHP/ApacheContainerphp-apache:container_name:"php55-dev"image:reynierpm/php55-devports:-"80:80"environment:PHP_ERR

c# - Mongo C# - FindOne 在哪里?

我无法理解如何执行findOne在MongoC#2.4驱动程序中运行。我收藏了超过910万份平面文档。当我执行findOne在Robomongo中,查询耗时0秒,返回我想要的结果。在C#中,这大约需要7-8秒。目前我正在实现这样的查找:varresult=await_collection.Find(filterDefinition).SingleAsync();这需要7到8秒。Mongo查询-查找一个-0秒.findOne({ipFrom:{$lte:1436497981},ipTo:{$gte:1436497981}});Mongo查询-查找-7.4秒.find({ipFrom:{$

mongodb - 查询连续值的范围mongo

我有一个包含number字段的文档。一个进程添加那些number值不在集合中的文档,但首先,它检查是否存在具有该number的文档。考虑number从0到234、number从653到667和number从10543到22000的文档集合。间隙存在对于number从235到652和668到10542的文件需要导入。是否可以构建一个查询来返回集合中存在的连续值的范围?(即0到234和653到667以及10543到22000)有了这些信息,我会立即知道在235到652和668到10542之间填写缺失的文档,然后在22001继续...... 最佳答案

regex - "not match"或反向的 Mongo 正则表达式

这个问题在这里已经有了答案:HowcanIuse'NotLike'operatorinMongoDB(2个答案)关闭2年前。我的mongo文档都包含一个名为templateName的字段。有几个文档包含该值:a_SystemDefaultTemplate、b_SystemDefaultTemplate、c_SystemDefaultTemplate等。我想找到那些templateName不以(或包含)SystemDefaultTemplate结尾的文档我知道可以使用$not运算符来完成,如下所示:db.collection.find({templateName:{$not:/.*Sys