2013-11-23 35 views
0

事件我们有一个游戏,每天发送约50万个事件到我们的服务器(事件有一个动作,日期,金额和用户id)。 我们希望对这些事件进行分析。是否有可能每天插入5000万行到mongodb,然后对其执行分析?我们应该使用一个单一的集合吗? mongodb是这种事情的正确选择吗?分析使用MongoDB的 - 数百万次

+0

50百万/日= 578 /秒,所以是的,这是可能的。执行分析?没有人知道您的分析意味着什么,因此这个问题没有答案。同样的答案是另外两个问题。还有一次 - 问清楚你的研究的详细问题,你会得到详细的答案。 –

回答

1

只需将5000万条记录写入数据库(MongoDB或任何其他数据)是非常容易的部分,难题在于构造数据的方式使得您可以轻松回答问题(即查询)问它。

一两件事,MongoDB的可以让你很快做得相当到位,这使得它可以预先计算的一些“分析”你事先知道你需要所有的时间更新计数器。一个例子可能是“每天有多少用户做过X”或“在特定日期完成了多少动作”。当每个事件到来时,将其插入到一个集合,但也增加了基于天,动作,用户等

各种其他的计算可以使用聚合框架全额征收作出适当的计数器。它可以让你聚合包括各种过滤器,分组等在内的大量数据。

在Google Group for MongoDB用户的一个线程中有针对MongoDB的a discussion of making just these sorts of queries,我建议你看看它有多接近它符合您的要求。