Indexing RETE's Working Memory: Catering to Dynamic Changes of the Ruleset

Printer-friendly version

Publication Type:

Conference Paper

Source:

REBLS: Workshop on Reactive and Event-based Languages & Systems '15 (2015)

URL:

http://soft.vub.ac.be/Publications/2015/vub-soft-tr-15-11.pdf

Keywords:

Dynamic Ruleset, indexing, rete

Abstract:

<p><span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px;">Complex Event Processing systems are used to detect patterns in large streams of events. These patterns are described by rules. Due to changing requirements or updated security policies for example, these rules need to be frequently updated at runtime. Changing the ruleset at runtime, however, is a costly operation because the events that occurred in the past need to be re-evaluated. In this paper we present an extension to the pattern-matching algorithm called RETE. Our extension aims to improve the performance of the re-evaluation of events when the ruleset is modified. More specifically, we optimise the addition of rules that match events by means of the inequality operators &gt;, ≥, &lt; and ≤. We do this by introducing indexes to order the events that are stored in the working memory. Afterwards, we measure our performance improvements on targeted micro-benchmarks.</span></p>