问题标签 [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.

0 投票
3 回答
43 浏览

mongodb - 过滤掉空元素文档

我们有一个商店系列如下。
我们需要将所有'shop'没有批次的 UNIQUE 返回为空([])。

由于这是聚合中的一个阶段 - 它无法利用索引。
所以我们需要找到最有效的方法来完成上述工作。

预期结果:第四季度

0 投票
1 回答
35 浏览

aggregation-framework - 条件聚合阶段

我们有 3 个系列来跟踪一家机械车间。
PARTS根据 shopID 给出总物品
我们需要确认物品的总和是否INPROCESS等于REJECT商店的计数PARTS

但是,我们将研究REJECT- 仅当INPROCESS不等于 count 时,从而节省查找。

如何实现这一点。

0 投票
1 回答
34 浏览

mongodb - Mongo 写客户端连接

mongostat中的MongoDB_ActiveClientsWriting_指标是指什么?

如果我在同一连接上从应用程序执行多次写入 - 它是否会作为单个活动客户端进行审核?
在那种情况下 - 连接是否表示线程 - 单个写入漏斗?
或者 Mongo 是否有固有的工作线程来分叉连接上的并行写入。

如果是这样,标记一次写入的活动线程的指标/配置是什么。
我们正在使用 Mongo 4.xx

0 投票
1 回答
37 浏览

mongodb - 聚合上的聚合

我们有一个如下的集合 -(0,1,2 etc)以块的形式批量运行作业。
每个批次将有多个具有作业的块/文档。

我们需要汇总每个批次的作业。
此后,每个批次的作业计数需要从批次的作业计数中减去'0'

结果将是每个批次与批次 0 的作业计数差异的数组/集合。
如果有 'x' 个批次,则数组的大小显然是 x-1。

这可以在单个聚合操作中完成吗?

预期输出:

0 投票
0 回答
1280 浏览

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国旗

0 投票
1 回答
39 浏览

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 的值没有解决?什么是正确的语法?是否有另一种过滤文档的方法?

0 投票
2 回答
48 浏览

mongodb - 为什么用 $out 聚合两个集合永远不会结束?MongoDB

好的,所以,我有两个系列。其中一个有 6M 文档,另一个有 25M 文档。我希望他们在一个新的集合中:

集合 1 示例:

电影

集合 2 示例:

特点

所以我想要一个新的集合,比如:

我试过:

但它永远不会结束 :( (我的意思是 10 小时后它仍在思考)如果我在没有 $out 的情况下执行它,它可能会在 10 分钟内显示结果。

我在 $out 上做错了吗?

感谢您的任何建议。

0 投票
0 回答
20 浏览

mongodb - MongoDB v4 explain() 不返回扫描文档的数量(与以前的版本不同)。怎样成为?

我正在阅读“MongoDB in Action”一书,并且有一个该explain()方法的示例。

外壳命令:db.values.find({}).sort({close: -1}).limit(1).explain()

结果:

我已经在我的 shell 上试​​过了,结果如下:

}

我的 Mongo 版本号超过了书籍之一(我使用的是 v4)。

我很好奇如何获取有关 MongoDB v4 中扫描文档的信息

为什么不再提供这些数据explain()?这不再相关或得到了一些替代品吗?

0 投票
1 回答
55 浏览

python - 在 Pymongo 中将聚合中间结果字段作为 python 函数参数传递

使用 MongoDB 4.0 我必须根据现有字段计算一个新字段。mycollection 中的文档示例:

我的python代码,连接到数据库后:

请注意,myJoin这里只是举例。在实际使用场景中,此功能非常复杂(自定义加密计算和字节操作)。

但是在数据库中我看到:

但我想要:

目前我正在使用管道聚合。但也欢迎其他策略。

0 投票
1 回答
21 浏览

mongodb - 获取特定键表 3 不同集合的平均值

我有 3 个有很多记录的集合。他们每个人都有一些关键,如价格,名称,......

c如您所见,与其他集合不同的是,在集合中提交的价格是在data.detail字段中。

我想根据name.

最终结果应该是计算价格的产品阵列。是否可以?

我想得到这个结果: