

Building our own tracking engine with MongoDB - martian
http://engineering.thumbtack.com/2011/05/03/building-our-own-tracking-engine-with-mongodb/

======
jacques_chester
OK, all jokes about "web scale" aside, why is MongoDB necessary for a measly
average 2.4 TPS?

~~~
enaeseth
We're storing complex, loosely-structured data, which perfectly fits MongoDB's
schemaless document model. The fact that it will easily scale up with us is
just icing on the cake.

~~~
jacques_chester
Thanks for the quick reply.

Did you look into the schemata of other tracking tools for inspiration, or was
this an _ab initio_ analysis?

~~~
enaeseth
We came up with our model of tracking independently, but I found out later
that Mixpanel has an eerily similar tracking API (see
<http://mixpanel.com/api/docs/tour>). I think it's a fairly natural design,
though, and wasn't surprised to see that someone else had thought of it.

Mixpanel does deal with funnels differently, however. With their API, you
explicitly define events as being some numbered step in a funnel; in ours, the
events are agnostic about what funnels they participate in, and we piece them
together in a post-processing step.

