Abstract
Incremental Graph Pattern Matching (IGPM) offers an elegant approach to find patterns in graph-based models, reporting newly added and recently removed pattern matches. However, analyzing these matches w.r.t. temporal and causal dependencies can in general only be done by extending not just the IGPM engine but also the underlying model, which often is impractical and sometimes even impossible. Therefore, we transform the stream of pattern matches to a stream of events and employ Complex Event Processing (CEP) to detect such dependencies and derive more complex events from them. For this purpose, we introduce GrapeL as a textual language to specify and generate integrated solutions using both IGPM and CEP to benefit from the synergy of both approaches, which we present in the context of a flight and booking scenario. Finally, we show that our solution can compete with an optimized hand-crafted version without GrapeL and CEP while offering a specification that yields a less tedious and error-prone design process.
This work has been funded by the German Federal Ministry of Education and Research within the Software Campus project MEMIK at TU Darmstadt, funding code 01IS12054.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Apama - http://www.apamacommunity.com.
- 2.
GrapeL - https://github.com/eMoflon-CEP/GraPEL.
- 3.
eMoflon - https://emoflon.org/.
- 4.
- 5.
Akka - https://www.akka.io.
- 6.
Apama EPL reference - https://documentation.softwareag.com/onlinehelp/Rohan/Apama/v10-3/apama10-3/apama-webhelp/.
- 7.
- 8.
eMoflon::IBeX-GT - https://github.com/eMoflon/emoflon-ibex.
- 9.
Xtext - https://www.eclipse.org/Xtext/.
- 10.
IBeX-GT tutorial and documentation - https://bit.ly/2WjXGZI.
References
Barquero, G., Burgueño, L., Troya, J., Vallecillo, A.: Extending complex event processing to graph-structured information. In: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems. MODELS 2018, pp. 166–175. Association for Computing Machinery, New York (2018). https://doi.org/10.1145/3239372.3239402
Dávid, I., Ráth, I., Varró, D.: Foundations for streaming model transformations by complex event processing. Softw. Syst. Model. 17(1), 135–162 (2016). https://doi.org/10.1007/s10270-016-0533-1
Forgy, C.L.: Rete: a fast algorithm for the many pattern/many object pattern match problem. Artif. Intell. 19(1), 17–37 (1982). https://doi.org/10.1016/0004-3702(82)90020-0
Gillani, S., Picard, G., Laforest, F.: Continuous graph pattern matching over knowledge graph streams. In: Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems. DEBS 2016, pp. 214–225. Association for Computing Machinery, New York (2016). https://doi.org/10.1145/2933267.2933306
Gulisano, V., Jerzak, Z., Voulgaris, S., Ziekow, H.: The debs 2016 grand challenge. In: Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems. DEBS 2016, pp. 289–292. Association for Computing Machinery, New York (2016). https://doi.org/10.1145/2933267.2933519
Hewitt, C., Bishop, P., Steiger, R.: A universal modular actor formalism for artificial intelligence. In: Proceedings of the 3rd International Joint Conference on Artificial Intelligence. IJCAI 1973, pp. 235–245. Morgan Kaufmann Publishers Inc. (1973)
Jayasinghe, M., et al.: Continuous analytics on graph data streams using WSO2 complex event processor. In: Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems. DEBS 2016, pp. 301–308. Association for Computing Machinery, New York (2016). https://doi.org/10.1145/2933267.2933508
Larrosa, J., Valiente, G.: Constraint satisfaction algorithms for graph pattern matching. Math. Struct. Comput. Sci. 12(4), 403–422 (2002). https://doi.org/10.1017/S0960129501003577
Luckham, D.: The Power of Events. 1 edn. Addison-Wesley, April 2002
Martin, A., Brito, A., Fetzer, C.: Real-time social network graph analysis using StreamMine3G. In: Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems. DEBS 2016, pp. 322–329. Association for Computing Machinery, New York (2016). https://doi.org/10.1145/2933267.2933514
Mayer, R., Mayer, C., Tariq, M.A., Rothermel, K.: Graphcep: real-time data analytics using parallel complex event and graph processing. In: Proceedings of the 10th ACM International Conference on Distributed and Event-Based Systems. DEBS 2016, pp. 309–316. Association for Computing Machinery, New York (2016). https://doi.org/10.1145/2933267.2933509
Varró, D., Bergmann, G., Hegedüs, Á., Horváth, Á., Ráth, I., Ujhelyi, Z.: Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Softw. Syst. Model. 15(3), 609–629 (2016). https://doi.org/10.1007/s10270-016-0530-4
Varró, G., Deckwerth, F.: A rete network construction algorithm for incremental pattern matching. In: Duddy, K., Kappel, G. (eds.) ICMT 2013. LNCS, vol. 7909, pp. 125–140. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38883-5_13
Zündorf, A.: Graph pattern matching in PROGRES. In: Cuny, J., Ehrig, H., Engels, G., Rozenberg, G. (eds.) Graph Grammars 1994. LNCS, vol. 1073, pp. 454–468. Springer, Heidelberg (1996). https://doi.org/10.1007/3-540-61228-9_105
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
1 Electronic supplementary material
Below is the link to the electronic supplementary material.
Supplementary material 1 (mp4 145311 KB)
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Ehmes, S., Fritsche, L., Altenhofen, K. (2020). GrapeL: Combining Graph Pattern Matching and Complex Event Processing. In: Babur, Ö., Denil, J., Vogel-Heuser, B. (eds) Systems Modelling and Management. ICSMM 2020. Communications in Computer and Information Science, vol 1262. Springer, Cham. https://doi.org/10.1007/978-3-030-58167-1_13
Download citation
DOI: https://doi.org/10.1007/978-3-030-58167-1_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58166-4
Online ISBN: 978-3-030-58167-1
eBook Packages: Computer ScienceComputer Science (R0)