问题标签 [capped-collections]

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 回答
361 浏览

ruby - Mongoid 封顶系列

我正在尝试使用 Mongoid 创建一个有上限的集合。我有一个定义如下:

我一直在参考文档,但无法弄清楚如何在这部分代码中创建一个上限集合。我试过删除store_in线并更换它session.command(create: "customers", capped: true, size: 10000000, max: 1000)无济于事。session应该换成什么东西?还是我做错了?

0 投票
1 回答
766 浏览

javascript - 如何在 MongoDB 中使用 64 位长的自增计数器

我正在使用 MongoDB 实现一个记录器数据库。上限集合将包含从网络上的多个来源收集的日志消息。因为我想$lte/$gte在之后进行查询,_id所以我需要一个_id作为单调函数增长的函数。

为了实现这一点,我实现了本文http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/中描述的自动递增计数器

我的代码如下所示:

它工作得很好,但我读过默认情况下,MongoDB 中使用的数字字段实际上是浮点数。问题是我的数据库是一个有上限的日志条目集合,它将有很多条目。此外,由于这是一个上限集合,旧条目将被覆盖,但计数器将继续增长。将计数器作为浮点数,我不能保证系统会在几年后继续工作。我的问题是在这种特殊情况下如何强制 MongoDB 使用 64 位计数器。

请提供一些代码示例。

0 投票
1 回答
1026 浏览

node.js - Mongoose:如何从 express.js 应用程序中的上限集合中获取数据?

我想收听一个 MongoDB 上限集合,将其用作日志记录工具。
我使用 node、express.js、mongo(和 mongoose)。

这是我到现在为止的(简化)代码:

我的问题是,在调用 myRoutingMethod() 之前,我得到:

所以,我从来没有得到

我可能遗漏了一些关于将stream()上限Log集合与express.js...集成的内容

有什么线索吗?

0 投票
2 回答
1230 浏览

javascript - Mongodb:如何在有上限的集合上创建“tail -f”视图?

capped我想在我的 Mongo 数据库上的集合(用作日志表)上创建一种“仪表板” 。这就是我创建集合的方式:

collection.find()用选项tailable:true、、awaitdata:truenumberOfRetries:-1(无限重试)做一个 , 。

令我困惑的是,我希望 find().each() 循环等待新数据(消息)......相反(几秒钟后)它会出错(带有No more documents in tailed cursor...... :-()

这是我正在使用的代码:

我想念什么?

更新

直到现在还没有收到任何确凿的答案,我推断MongoDb tailable collections还没有准备好迎接黄金时段...... :-(((

可悲的是放弃了更经典和更强大的 fs 日志记录解决方案......

0 投票
1 回答
70 浏览

mongodb - 是否可以将 MongoDb capped collection 与 phalcon Collection 模型一起使用

我对日志使用了一些 mongoDb 集合,所以我想使用 MongoDb 上限集合。

我可以使用 paclon Collection 来执行此操作,还是应该在我的日志模型中编写日志轮换代码?

0 投票
1 回答
971 浏览

mongodb - 在 MongoDB 的上限集合中添加一个字段

我创建了一个上限集合来存储我的日志数据,其中包含几个字段。由于某些要求,我想在此集合中添加一个名为“createAt”的附加字段。

这是抛出以下错误:

如何将一些字段添加到上限集合中?

0 投票
1 回答
1576 浏览

mongodb - 如何将 MongoDb 的上限集合转换为非上限集合?

由于某些特定的业务需求,我们将数据存储到 MongoDB 的上限集合中,但现在整个需求发生了变化,我们不想保留该集合中的所有记录。

我能够找到“convertToCapped”命令,但没有找到任何命令来执行反之亦然的操作。

如何将其转换回无上限集合?

0 投票
0 回答
341 浏览

mongodb - 带有TTL的mongodb上限集合

我有一个允许用户与其他用户聊天的应用程序,

我只想为每个对话存储 X 条消息,并且每条消息必须在创建后 1 个月后删除(TTL)

MongoDB 支持带有 TTL 的上限集合?

文档说: https ://docs.mongodb.org/manual/core/capped-collections/#automatically-remove-data-after-a-specified-period-of-time

我认为没有,那么,有什么替代方法可以实现吗?

谢谢

0 投票
1 回答
756 浏览

mongodb - 上限集合和 _id 自动索引

默认情况下,为 _id 字段设置上限集合的自动索引的基本原理是什么?我们可以在文档中找到:

如果没有这种索引开销,上限集合可以支持更高的插入吞吐量。

有一篇关于封顶集合插入性能的帖子,我自己的测试也表明,对于插入封顶集合没有索引是最快的选择,然后是普通集合,最慢的选项是带索引的封顶集合。那么为什么在 2.2 版本中自动索引与 _id 字段一起添加,如果它达到性能,而在某些情况下,上限集合被提议作为普通集合的快速替代品呢?

0 投票
2 回答
547 浏览

mongodb - 封顶集合与队列

我试图了解上限集合是什么,特别是在 MongoDB 的上下文中,与队列相比有什么区别?