问题标签 [mongo-collection]

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 投票
1 回答
159 浏览

arrays - 如何查找文档并使用聚合在 mongodb 中查找属性?

我在一个集合中有数千个文档。下面是一个示例文档

现在我想找到在 7 月份创建的汽车并聚合以找到带有 abs 刹车的汽车

以下是我的查询:

当我尝试运行上述查询时,出现错误。这是应该怎么做还是有更好的方法?

0 投票
0 回答
80 浏览

c# - 如何在特定时间范围内删除 C# 中的所有 mongo 文档

我正在尝试从 C# 中的特定集合中删除 mongo 文档

我现在的尝试是

在这里我正在尝试获取所有文档并一一删除,但是会有很多文档要删除它会影响性能所以有没有办法直接删除 mongo 文档而不是在 c# 中获取和删除

0 投票
0 回答
356 浏览

mongodb - MongoDB 分区

MongoDB中是否有任何语义,如集合分区?我的数据非常庞大,每天记录超过 100 000 行数据。为了检索报告,所选设备需要一些时间。如果每天都记录数据,性能会很慢。如何优化,我创建了一个索引来提高性能。

0 投票
1 回答
179 浏览

java - 在 mongo-java-driver 3.12 的 MongoCollection.deleteMany 中使用 WriteConcern

我正在使用 mongo-java-driver-3.12.X 版本。我想更改已弃用的 API

  1. 有没有办法指定 WriteConcern?
  2. 如果未指定 WriteConcern,默认行为是什么?
0 投票
2 回答
136 浏览

mongodb - 带有通配符的 Mongodb shell drop 集合

我有一堆具有相同前缀的集合,例如 data_user_1、data_user_2 等。还有一些我想保留并跳过它们之间的集合。

所以我寻找解决方案

a) 删除所有排除特定 b) 删除所有 data_user_*

我搜索了文档,但似乎没有允许任何这些操作的参数。谢谢

0 投票
1 回答
146 浏览

mongodb - 没有mongod的错误mongo在win 10中首先在本地运行

我在我的 win 10 中安装了这个 mongo.zip。

我已经用 bin 设置了环境路径。

不知何故,每当我启动命令行时,如果没有mongod ,我的 mongo就无法启动。

但如果我mongod之前运行mongo,mongo 运行良好。

所以,我的问题是:我如何在mongo没有mongod本地运行的情况下运行。

PS。我的指南针正在运行并且可以连接到 AWS 云。

如果可以,请提供图片。

谢谢!

0 投票
1 回答
82 浏览

vb.net - '未找到类型'MongoCollectionImpl(Of BsonDocument)'上的公共成员'Find'。

我正在尝试从与给定 ID 匹配的 mongodb 集合中查找特定用户。Folliwng 是我的 VB.Net 代码。但是,我不断收到错误'Public member 'Find' on type 'MongoCollectionImpl(Of BsonDocument)' not found.'

0 投票
1 回答
281 浏览

mongodb - MongoDB 查找算法复杂度

MongoDB 查找操作的大复杂度是多少?
假设我的MongoDB集合'A'中
有n条记录,集合'B'中有n条记录,每个B的文档都有A的外部_id和一个特定的标签,例如"preOrder","directOrder", "pendingOrder" ...

案例 1:
如果我使用一些过滤器在集合“A”上添加匹配查询,并使用 B 集合添加查找。
我得到了一个 B 的数据对象数组,我循环遍历每个对象的每个数组以执行一些操作并计算每个标签的计数

案例2:
在集合'A'上添加匹配查询,过滤器
循环遍历每个结果并在循环中查询匹配B的记录

mongo 服务器上的时间和负载会有什么不同?

0 投票
1 回答
42 浏览

mongodb - 构建多个索引,其中一个在 Mongo 中是唯一的

这是一次构建多个索引的延续,我目前正在使用以下命令

我想了解将其转换为要在服务器上执行的单个命令的正确方法是什么。我的失败尝试如下:

0 投票
2 回答
62 浏览

mongodb - 为什么我们在 Mongo 中需要一个带有复合索引的附加 LIMIT 阶段

我正在使用 Mongo 4.2(坚持这一点)并且有一个集合说“product_data”,其中包含具有以下架构的文档:

案例1:有了这个,我有以下集合索引:

  1. _id:Regular - 唯一
  2. uIdHash:散列

我试图执行

这些是结果的阶段:

1

当然,我可以意识到有一个额外的复合索引来避免 mongo 内存中的“排序”阶段是有意义的。

案例 2:现在我尝试使用现有的索引添加另一个索引 3. {uIdHash:1 , userTS:-1}: Regular and Compound

出乎我的意料,这里的执行结果能够在排序阶段进行优化:

2



到目前为止一切都很好,现在我正在寻找在此查询之上构建分页。我需要限制查询的数据。因此查询进一步转化为

现在每个案例的结果如下:

案例1限制结果在此处输入图像描述

内存中排序的工作量较少(36 个而不是 50 个)并返回预期的文档数量。很公平,在阶段进行了良好的底层优化。

案例2限制结果在此处输入图像描述 令人惊讶的是,在使用索引和查询数据的情况下,处理中增加了一个额外的限制阶段!

我现在的疑惑如下:

  1. 当我们已经从 FETCH 阶段返回了 10 个文档时,为什么我们需要一个额外的 LIMIT 阶段?
  2. 这个额外的阶段会有什么影响?鉴于我需要分页,我应该坚持使用案例 1 索引而不使用最后一个复合索引吗?