2015-05-03 127 views
-2

该系统的需求是存储有关用户的信息并对其进行报告。所以......用户成为一个单独的文档是有意义的,并且可能在该用户上有一个“事件”或“标签”数组,并且可以执行一个查询来返回所有具有特定事件的用户......这就是精细。但是 - 我担心这里的表现。一段时间后,这些数据将非常快速地变大。用于用户标记系统的MongoDB

比方说,我们有一个非常活跃的用户 - 它拥有数十亿的事件和特定用户文档的尺寸接近千兆字节。在这种情况下,简单的拖动该文档的行为将需要一段时间...并更新然后发送回去也需要一段时间(尽管我猜个别属性可以单独更新...)

管理这个的方法是什么?

+0

“使用什么工具”的问题是题外话题,你的问题已经得到了5票中的3票,所以我编辑它以使其成为话题。 – Philipp

回答

0

大小接近千兆字节的文件已经是技术上是不可能的,因为MongoDB的文档上放16MB的限制。

当你有随时间增长的文件,它通常是更好地把不断增长的数据在一个单独的集合作为单独的文档。原因在于,当文档超出其初始大小时,MongoDB需要将文档不时移动到另一个文件位置,这会大大降低更新速度。