<div>I'm sure if it'll fit what you need, but I've got a Redis-backed stats library which has been in production use where I work for about 10 months now. It might be worth some of your time to check out: <a href="https://github.com/jimeh/redistat">https://github.com/jimeh/redistat</a><div><br></div><div><br></div><div>-jim</div></div>
<div></div>
<p style="color: #A0A0A8;">On Friday, 23 September 2011 at 11:37, Neil Middleton wrote:</p>
<blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
<span><div><div>I'm building an app that needs to store a fair amount of events that the users carry out. (Think LOTS as in millions per month).<br><br>I need to report on the these events (total of type x in the last month, etc) and need something resilient and fast.<br><br>I've toyed with Redis etc to store aggregates of the data, but this could just mean that I'm building up a massive store of single figure aggregates that aren't rebuildable.<br><br>Whilst this isn't a bad solution, I'm looking at storing the raw event data in tables that I can then query on a needs basis, and potentially generate aggregate counters on a periodic basis. This would thus give me the ability to add counters over time, and also carry out ad-hoc inspections on what is going on, something which aggregates don't allow.<br><br>Question is, how is best to do this? I obviously don't want to have to create a model for each table (which is what Rails would prefer), so do I just create the tables and interact with raw SQL on a needs basis, or is there some other choice for dealing with this sort of data?<br><br>It would be interesting to know what thoughts you guys have.<br><br>Cheers<br><br>Neil<br><br>_______________________________________________<br>Chat mailing list<br><a href="mailto:Chat@lists.lrug.org">Chat@lists.lrug.org</a><br><a href="http://lists.lrug.org/listinfo.cgi/chat-lrug.org">http://lists.lrug.org/listinfo.cgi/chat-lrug.org</a><br></div></div></span>
</blockquote>
<div>
<br>
</div>