I’ve started a django project that will include an analytics app. I want that app to use either couchDB or mongoDB for storing data.
The initial idea was (since the client already is using Google Analytics) to once a day/week/month grab data from GA, and store store it locally as values in database. Which would ultimately build a database of entries – one entry per user per month – with summed values like
{"date":"11.2011""clicks": 21, "pageviews": 40, "n": n},
for premium users there could be one entry per user per week or even day.
The question would be:
grab analytics from GA, do a sum entries for clicks, visits etc.
or
store clicks and whatever values locally and once a month do sums for display ?
Right, old question but I’ve just finished the project so I’ll just write what I did.
Since I didn’t need concurrency and wanted more speed approach, I found that mongodb is better for that.
The final document schema that I’ve used is
The scope of my local analytics is monthly, so I create one entry in mongdb per user per month, and update it each day. As said just now, I update data daily, and store only summaries and averages of those.
What else. Re: Jamie’s answer… The system is using GA events, so I’ve got access to all data that i need.
Hope someone may find it interesting.
cheers and thanks for ideas !