【发布时间】:2013-01-06 02:29:36
【问题描述】:
我在 Linux 上运行 MongoDB (2.2),我有几个问题。
我的架构包含许多字段 + 子字段和该字段的一个索引。
- 在索引上完成更新/删除的速度有多快 - 我每秒大约有 3 次更新/删除等。
- 是否有规则,例如在 10,000 次更新后您必须压缩或重建索引?
- 字段中的更改是否在索引中立即可见?如果没有,此更新/删除是否有延迟或临时表?
提前致谢 - 布兰登
【问题讨论】:
-
是的,索引与数据同步更新。没有延迟。
-
索引会立即更新,但是当您删除 mongodb 中的数据时,如果您不执行 db.repair() 命令,则释放的数据将不会释放到操作系统请注意:@ 987654321@
-
如果将索引发送到后台,它们可能会延迟。发布的数据将被发送到一个 $deletedlist 桶中,每个桶代表已删除文档的可能大小。当插入或更新一个新文档并且它需要移动时,MongoDB 将搜索大约 30 个(或类似的)这些存储桶,以判断是否适合新的记录大小。使用持续增长的文档可能会导致使用此方法产生碎片,但是您可以在文档上使用 2 种尺寸的填充来降低移动的风险。
标签: performance mongodb indexing dml