【发布时间】:2014-04-17 17:52:10
【问题描述】:
我对文档的过期 TTL 设置有疑问。
我的用例:
我的应用程序是一种聚合服务。它为每个源创建一个新集合。来源可能来来去去(读死)。我的数据访问模式是更少的读取次数和更多的写入次数。虽然某些核心集合(不会更改)已编入索引,但应用程序根据源创建的集合未编入索引。通常会从该集合中获取整个数据或数据的部分子集(例如仅 10 条记录),因此实际上不需要索引。
问题:
那些来自源的动态集合越来越大,经过一段时间后,我们不需要这些集合中的旧文档。所以我正在考虑申请“expire TTL settings”。但是,我对此几乎没有任何疑问。
问题:
- 它是否真的创建了有助于搜索的索引。我的意思是我不希望这些文档被索引。目前,我只是从集合中获取所有内容。那是我们的用例。
- 当集合中的所有文档都过期时,它是否也会删除集合。这可能是内部细节,但我认为对此有所了解会有所帮助
【问题讨论】:
-
这不会减少写入次数,但是您可以将所有这些源存储在同一个集合中,使用“upsert”来“存储”它们并有一个删除旧的后台作业.看看aggregate reports use case。