چكيده به لاتين
The dynamicity of the world around us causes numerous alterations in our surroundings in a rapid manner. These include exchange rate fluctuations, weather changes, and many other examples. Such changes are perceptible through the concept of Events. In fact, we try to understand them by taking into account a sequence of events, then we perceive them, and after analyzing them, we take actions. This kind of processing is referred to as Complex Event Processing.With the ever scaling of the event sources, event generation rates have increased enormously. Therefore centralized approaches cannot perform well because of the bottlenecks and eventually not be able to provide the required resources for processing the events and eventually being forced to utilize more processing resources. Also, since the processing needs to be done in a real-time manner and with a desirable response-time, it is not possible to store the events on disk storages due to the high rate of inputs and the need for quick action. Considering this fact, Event Processing Systems are required to provide high availability. Our goal in this research is to propose a mechanism to distribute the rules among processing nodes to achieve high availability and considering resource utilization. This mechanism uses the Bin Packing algorithm based on an estimation of the resource requirements for rules and the existing resources on nodes and also the rule similarities to distribute them among the nodes and in addition, utilizes the rule duplication method to provide high availability while maintaining the appropriate resource utilization. After distributing the rules and duplicating them, we use the Active Standby method to recover them, and while both the primary rule and its duplicate are processed simultaneously, only the primary rule’s output is taken into consideration. In fact, by using this mechanism, we try to prevent inappropriate behaviors like unavailability of processing nodes which prevents us from getting results based on the corresponding rule. Our results show that leveraging the rule distribution and replication mechanism will increases the high-availability of rules and leads to a more efficient resource utilization.