Reentrancy and Scoping for Multitenant Rule Engines

Kennedy Kambona, Thierry Renaux, Wolfgang De Meuter

2017

Abstract

Multitenant web systems can share one application instance across many clients distributed over multiple devices. These systems need to manage the shared knowledge base reused by the various users and applications they support. Rather than hard-coding all the shared knowledge and ontologies, developers often encode this knowledge in the form of rules to program server-side business logic. In such situations, a modern rule engine can be used to accommodate the knowledge for tenants of a multitenant system. Existing rule engines, however, were not conceptually designed to support or cope with the knowledge of the rules of multiple applications and clients at the same time. They are not fit for multitenant setups since one has to manually hard-code the modularity of the knowledge for the various applications and clients, which quickly becomes complex and fallible. We present Serena, a rule-based framework for supporting multitenant reactive web applications. The distinctive feature of Serena is the notion of reentrancy and scoping in its Rete-based rule engine, which is the key solution in making it multitenant. We validate our work through a simulated case study and a comparison with a similar common-place approach, showing that our flexible approach improves computational efficiency in the engine.

References

  1. Agrawal, R., Borgida, A., and Jagadish, H. V. (1989). Efficient management of transitive relationships in large data and knowledge bases. SIGMOD Rec., 18(2):253- 262.
  2. Aït-Kaci, H., Boyer, R., Lincoln, P., and Nasr, R. (1989). Efficient implementation of lattice operations. ACM Trans. Program. Lang. Syst., 11(1):115-146.
  3. Allen, J. F. (1983). Maintaining Knowledge about Temporal Intervals. Commun. ACM, 26(11):832-843.
  4. Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al. (2010). A view of cloud computing. Communications of the ACM, 53(4):50-58.
  5. Brooks, Jr., F. P. (1987). No silver bullet: Essence and accidents of software engineering. Computer, 20(4):10- 19.
  6. Chu, E., Beckmann, J., and Naughton, J. (2007). The case for a wide-table approach to manage sparse relational data sets. In Proceedings of the 2007 ACM SIGMOD International Conference on Management of Data, SIGMOD 7807, pages 821-832, New York, NY, USA. ACM.
  7. Cohen, U. (2004). Inside GigaSpaces XAP-Technical overview and value proposition. New York, NY: GigaSpace Technologies Ltd.
  8. Copeland, G. P. and Khoshafian, S. N. (1985). A decomposition storage model. SIGMOD Rec., 14(4):268-279.
  9. Fiaidhi, J., Bojanova, I., Zhang, J., and Zhang, L. J. (2012). Enforcing multitenancy for cloud computing environments. IT Professional, 14(1):16-18.
  10. Fiege, L., Cilia, M., Muhl, G., and Buchmann, A. (2006). Publish-Subscribe Grows Up: Support for Management, Visibility Control, and Heterogeneity. IEEE Internet Computing, 10(1):48-55.
  11. Giurca, A. and Pascalau, E. (2008). JSON rules. Proceedings of the of 4th Workshop on Knowledge Engineering and Software Engineering, KESE, 425:7-18.
  12. Grund, M., Schapranow, M., Krueger, J., Schaffner, J., and Bog, A. (2008). Shared table access pattern analysis for multi-tenant applications. In Advanced Management of Information for Globalized Enterprises, 2008. AMIGE 2008. IEEE Symposium on, pages 1-5.
  13. Guo, C. J., Sun, W., Huang, Y., Wang, Z. H., and Gao, B. (2007). A framework for native multi-tenancy application development and management. In The 9th IEEE International Conference on E-Commerce Technology and The 4th IEEE International Conference on Enterprise Computing, E-Commerce and E-Services (CEC-EEE 2007), pages 551-558.
  14. Habib, M. and Nourine, L. (1994). Bit-vector encoding for partially ordered sets. In Orders, Algorithms, and Applications, pages 1-12. Springer.
  15. Hay, D., Healy, K. A., Hall, J., et al. (2000). Defining business rules - What are they really? Final Report.
  16. Hill, E. F. (2003). Jess in Action: Java Rule-Based Systems. Manning Publications Co., Greenwich, CT, USA.
  17. Jacobs, D., Aulbach, S., et al. (2007). Ruminations on multi-tenant databases. In BTW, volume 103, pages 514-521.
  18. Lim, L. and Conan, D. (2014). Distributed event-based system with multiscoping for multiscalability. In Proceedings of the 9th Workshop on Middleware for Next Generation Internet Computing, MW4NG 7814, pages 3:1-3:6, New York, NY, USA. ACM.
  19. Nayak, P., Gupta, A., and Rosenbloom, P. S. (1993). The Soar Papers. chapter Comparison of the RETE and TREAT Production Matchers for Soar (a Summary), pages 621-626. MIT Press, Cambridge, MA, USA.
  20. Newell, A. (1973). Production systems: Models of control structures. Technical report, DTIC Document.
  21. Pal, S., Mandal, A. K., and Sarkar, A. (2015). Application multi-tenancy for software as a service. SIGSOFT Softw. Eng. Notes, 40(2):1-8.
  22. Pathirage, M., Perera, S., Kumara, I., and Weerawarana, S. (2011). A multi-tenant architecture for business process executions. In 2011 IEEE International Conference on Web Services (ICWS), pages 121-128.
  23. Proctor, M. (2012). Drools: A rule engine for complex event processing. In Proceedings of the 4th International Conference on Applications of Graph Transformations with Industrial Relevance, AGTIVE'11, Berlin, Heidelberg. Springer-Verlag.
  24. Yaish, H., Goyal, M., and Feuerlicht, G. (2011). An elastic multi-tenant database schema for software as a service. In Dependable, Autonomic and Secure Computing (DASC), 2011 IEEE Ninth International Conference on, pages 737-743.
  25. Zahariev, A. (2009). The Google App Engine. Helsinki University of Technology.
Download


Paper Citation


in Harvard Style

Kambona K., Renaux T. and De Meuter W. (2017). Reentrancy and Scoping for Multitenant Rule Engines . In Proceedings of the 13th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST, ISBN 978-989-758-246-2, pages 59-70. DOI: 10.5220/0006283400590070


in Bibtex Style

@conference{webist17,
author={Kennedy Kambona and Thierry Renaux and Wolfgang De Meuter},
title={Reentrancy and Scoping for Multitenant Rule Engines},
booktitle={Proceedings of the 13th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,},
year={2017},
pages={59-70},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006283400590070},
isbn={978-989-758-246-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 13th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,
TI - Reentrancy and Scoping for Multitenant Rule Engines
SN - 978-989-758-246-2
AU - Kambona K.
AU - Renaux T.
AU - De Meuter W.
PY - 2017
SP - 59
EP - 70
DO - 10.5220/0006283400590070