3 ms·
EventReduce is a simple algorithm. It does not care or affect how you handle propagation of writes or how you handle your events, transactions or conflicts. Se
by eventreduce 6y ago
EventReduce is a simple algorithm. It does not care or affect how you handle propagation of writes or how you handle your events, transactions or conflicts.
See it as a simple function that can do oldResults+event=newResults like shown in the big image on top of the readme.
- danpalmer 6y agoThis means then that if you run multiple application servers, which most do, that you’ll need to implement a data distribution mechanism of some sort. I must admit, with limitations like this I’m struggling to figure out the use cases for this. Edit: so I guess this is easier using the change subscriptions you mention in other comments. That does mean many subscribers, but hopefully that’s minimal load. This has the trade-off that it’s now eventually consistent, but I suppose that’s not a problem for many high read applications. I’m still feeling like this could be solved in a simpler way with just simple data structures and a pub sub mechanism. Now I think of it, we do a similar thing with Redis for one service, and a custom Python server/pipeline in another, but we’ve never felt the need for this sort of thing. Do you have more details about specific applications/use cases, and why this is better than alternatives?
- eventreduce 6y agoI think the best example for why this is useful is described by david glasser at his talk about the oplog driver used in meteor.js https://www.youtube.com/watch?v=_dzX_LEbZyI https://www.youtube.com/watch?v=_dzX_LEbZyI