102015-03-24 , 法政大学大学院情報科学研究科
This paper describes a query processing engine for multiple XML streams, in which series of correlated data continuously come. First, this paper formulates stream processing in algebra expressions, in which stream filtering, union, activation, decomposition and partition are formally modeled. Second, this paper designs a query language, called QLMXS, over XML streams for CEP. The QLMXS supports all functions of the algebra expressions in a SQL-like form. Finally, QLMXS queries are converted into a visibly pushdown automaton, called VPA, which analyzes complex event data from the XML streams. The VPA engine is required to concurrently process multiple XML data in multiple levels, so that it is very important to tune the performance of the engine up. Therefore, this paper proposes four optimization methods to improve the performance, utilizing VPA and XML features. They are VPA-state reduction, VPA unification, delayed evaluation and elimination of superfluous XML processing. Experimental results showed that the VPA unification makes the processing speed of VPA engine 1.6 times faster and the total performance reaches that speed 2.6 times faster.