News for hackers. Stuff that matters.
Re:Call me maybe: Aerospike by phamilton on Tuesday May 05, 2015 @10:45PM (#9496326)
A better example is frequency capping. Ever watch something on Hulu and see the same ad 4 times in a twenty-minute commercial? Or even, worse, back to back?

With a real-time data stack you can avoid the duplicated ad a good percent of the time. Better experience for buyers, for publishers, and for users.

Re:Call me maybe: Aerospike by jmalicki on Wednesday May 06, 2015 @12:53AM (#9496645)
Or you could just store that in a cookie.
Re:Call me maybe: Aerospike by phamilton on Wednesday May 06, 2015 @01:38AM (#9496750)
Store what in the cookie? Every ad the user has seen across the entire web, along with how many times they've seen it in the last N minutes/hours/days/weeks?

A cookie won't fit all that data and a more traditional database generally won't work. In memory k/v stores like Redis won't work due to data size (TBs of data). Hbase/Cassandra/etc sort of work with latency in the 5ms range. That's fairly expensive in a 90ms SLA, but you can make it work. It does limit the amount of work you are able to do.

Re:Call me maybe: Aerospike by vtuulos on Wednesday May 06, 2015 @03:28AM (#9497065)
We (Adroll) have been very happy with DynamoDB for use cases like this. Works fine with ~500B keys, while maintaining very low, and consistent, latencies.
Re:Call me maybe: Aerospike by nkohari on Wednesday May 06, 2015 @10:01AM (#9498638)
+1 -- we also used DynamoDB at Adzerk for the same use case.
Re:Call me maybe: Aerospike by easytiger on Wednesday May 06, 2015 @02:50AM (#9496945)
The alst 4 ads
Re:Call me maybe: Aerospike by phamilton on Wednesday May 06, 2015 @10:23AM (#9498811)
Even then we need a fast lookup. 4 ads means 4 advertisers, 4 creative, 4 potentisl clicks, imps, mids/ends (video), conversions/ etc. There are also multiple cookies depending on which exchange the ad came from. Having to map them on the fly requires a fast and large datastore.
Re:Call me maybe: Aerospike by hurin on Tuesday May 05, 2015 @10:59PM (#9496369)
> A better example is frequency capping. Ever watch something on Hulu and see the same ad 4 times in a twenty-minute commercial? Or even, worse, back to back?

Yeah, but when that happens I usually don't think, oh hey they are lacking an optimal in memory distributed database solution.

I think, well... their engineers suck. Or they don't care. Pick one.

edit: His point is vague, so there is nothing technical to respond to. I am very much interested in a good technical example - but the things mentioned so far are by all appearances relatively straight-forward and linear, hence lack of effort or bad engineering are the only reasonable assumptions left.

Re:Call me maybe: Aerospike by cwyers on Tuesday May 05, 2015 @11:14PM (#9496411)
I don't get your point here. He's explaining why it works the way it does. You're saying you don't think about it as a user. That doesn't invalidate or even respond to his point.
Re:Call me maybe: Aerospike by phamilton on Wednesday May 06, 2015 @01:46AM (#9496772)
Volume and latency requirements make it more difficult to track individuals on the web. It's an easier problem to solve in 50ms. It's also much easier to solve when it's only a million individuals rather than a couple hundred million individuals.

Like most problems, scale makes it hard.

Re:Call me maybe: Aerospike by hurin on Wednesday May 06, 2015 @03:07PM (#9501055)
It's simply not a difficult problem: there are no consensus requirements between individuals, so scaling can't be made any harder by increasing N.