问题标签 [mongodb4.0]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - 过滤掉空元素文档
我们有一个商店系列如下。
我们需要将所有'shop'
没有批次的 UNIQUE 返回为空([]
)。
由于这是聚合中的一个阶段 - 它无法利用索引。
所以我们需要找到最有效的方法来完成上述工作。
预期结果:第四季度
aggregation-framework - 条件聚合阶段
我们有 3 个系列来跟踪一家机械车间。
PARTS
根据 shopID 给出总物品
我们需要确认物品的总和是否INPROCESS
等于REJECT
商店的计数PARTS
。
但是,我们将研究REJECT
- 仅当INPROCESS
不等于 count 时,从而节省查找。
如何实现这一点。
mongodb - Mongo 写客户端连接
mongostat中的MongoDB_ActiveClientsWriting_
指标是指什么?
如果我在同一连接上从应用程序执行多次写入 - 它是否会作为单个活动客户端进行审核?
在那种情况下 - 连接是否表示线程 - 单个写入漏斗?
或者 Mongo 是否有固有的工作线程来分叉连接上的并行写入。
如果是这样,标记一次写入的活动线程的指标/配置是什么。
我们正在使用 Mongo 4.xx
mongodb - 聚合上的聚合
我们有一个如下的集合 -(0,1,2 etc)
以块的形式批量运行作业。
每个批次将有多个具有作业的块/文档。
我们需要汇总每个批次的作业。
此后,每个批次的作业计数需要从批次的作业计数中减去'0'
。
结果将是每个批次与批次 0 的作业计数差异的数组/集合。
如果有 'x' 个批次,则数组的大小显然是 x-1。
这可以在单个聚合操作中完成吗?
预期输出:
linux - 失败:dbName.collectionName:从 collectionName.bson 恢复时出错:读取 bson 输入:意外 EOF
尝试在 MongoDB 中恢复 32GB 数据库时出现错误。我已经尝试了以下命令,但它们都不起作用:
mongorestore --db prod --drop --dir backup-cloud-server/20200221020001/prod --batchSize=1
mongorestore --db prod --drop --dir backup-cloud-server/20200221020001/prod --batchSize=10
mongorestore --db prod --drop --dir backup-cloud-server/20200221020001/prod --batchSize=100
mongorestore --db prod --drop --dir backup-cloud-server/20200221020001/prod --batchSize=1000
我还尝试根据此建议https://groups.google.com/forum/#!msg/mongodb-user/Ms2MXCajreg/OsW6ixcSCgAJ将wiredTiger cachedSize 更改为4GB,但它没有奏效。
有什么建议吗?
我的机器/环境:
操作系统:MAC OS X 10.14.6
内存:32GB
可用磁盘:80GB
蒙戈版本:v4.2.2
mongorestore 版本:r4.2.2
编辑:这里有--noIndexRestore
国旗
mongodb - 无法通过 $match MongoDB 中的另一个子节点值过滤节点
环境:Mongo 4.2.2。从 Compass 1.20.5 调用
我$unwind
将数组(单个文档)的 2 个元素放入 2 个单个文档中:
和
在我$group
再次将它们按 id 1 放入一个文档之前,我希望使用$match
文档中的 lang 属性相同的文档进行过滤。静态提供字符串ara
,按预期删除第二个文档。
如果我尝试ara
用节点的值替换termTrg.lang
,它不会删除任何文档。
为什么termTrg.lang
's 的值没有解决?什么是正确的语法?是否有另一种过滤文档的方法?
mongodb - 为什么用 $out 聚合两个集合永远不会结束?MongoDB
好的,所以,我有两个系列。其中一个有 6M 文档,另一个有 25M 文档。我希望他们在一个新的集合中:
集合 1 示例:
电影
集合 2 示例:
特点
所以我想要一个新的集合,比如:
我试过:
但它永远不会结束 :( (我的意思是 10 小时后它仍在思考)如果我在没有 $out 的情况下执行它,它可能会在 10 分钟内显示结果。
我在 $out 上做错了吗?
感谢您的任何建议。
mongodb - MongoDB v4 explain() 不返回扫描文档的数量(与以前的版本不同)。怎样成为?
我正在阅读“MongoDB in Action”一书,并且有一个该explain()
方法的示例。
外壳命令:db.values.find({}).sort({close: -1}).limit(1).explain()
结果:
我已经在我的 shell 上试过了,结果如下:
}
我的 Mongo 版本号超过了书籍之一(我使用的是 v4)。
我很好奇如何获取有关 MongoDB v4 中扫描文档的信息?
为什么不再提供这些数据explain()
?这不再相关或得到了一些替代品吗?
python - 在 Pymongo 中将聚合中间结果字段作为 python 函数参数传递
使用 MongoDB 4.0 我必须根据现有字段计算一个新字段。mycollection 中的文档示例:
我的python代码,连接到数据库后:
请注意,
myJoin
这里只是举例。在实际使用场景中,此功能非常复杂(自定义加密计算和字节操作)。
但是在数据库中我看到:
但我想要:
目前我正在使用管道聚合。但也欢迎其他策略。
mongodb - 获取特定键表 3 不同集合的平均值
我有 3 个有很多记录的集合。他们每个人都有一些关键,如价格,名称,......
c
如您所见,与其他集合不同的是,在集合中提交的价格是在data.detail
字段中。
我想根据name
.
最终结果应该是计算价格的产品阵列。是否可以?
我想得到这个结果: