Current we update sliding window per event received Most Engines support updating the window in batches (e.g. once every second for time window, once every 10 messages length window). Also mentioned in 8 Rules paper of Stonebreaker. Thing is if you have 3 months window, you are generally OK with 10 mins accuracy.
I think we should support this as this provide huge performance improvements (bigger the batch, faster). Reason is following. When we define windows, most of the time, we calculate aggregates only. Those can be calculated on the fly, so we do not need to store the events. But there is a catch, we need to events to handle when events expire and remove the values from aggregates. However, if we update only in batches, then we can keep aggregated value for is batch (e.g. for sum, we can just keep sum for each batch only). We will also need to do this for Distributed CEP in the future. -- ============================ Srinath Perera, Ph.D. Director, Research, WSO2 Inc. Visiting Faculty, University of Moratuwa Member, Apache Software Foundation Research Scientist, Lanka Software Foundation Blog: http://srinathsview.blogspot.com/ Photos: http://www.flickr.com/photos/hemapani/ Phone: 0772360902
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
