An Open-Source Object-Graph-Mapping Framework for Neo4j and Scala: Renesca

  • Felix Dietze
  • Johannes Karoff
  • André Calero Valdez
  • Martina Ziefle
  • Christoph Greven
  • Ulrik Schroeder
Conference paper

DOI: 10.1007/978-3-319-45507-5_14

Part of the Lecture Notes in Computer Science book series (LNCS, volume 9817)
Cite this paper as:
Dietze F., Karoff J., Calero Valdez A., Ziefle M., Greven C., Schroeder U. (2016) An Open-Source Object-Graph-Mapping Framework for Neo4j and Scala: Renesca. In: Buccafurri F., Holzinger A., Kieseberg P., Tjoa A., Weippl E. (eds) Availability, Reliability, and Security in Information Systems. CD-ARES 2016. Lecture Notes in Computer Science, vol 9817. Springer, Cham

Abstract

The usage and application of graph databases is increasing. Many research problems are based on understanding relationships between data entities. This is where graph databases are powerful. Nevertheless, software developers model and think in object-oriented software. Combining both approaches leads to a paradigm mismatch. This mismatch can be addressed by using object graph mappers (OGM). OGM adapt graph databases for object-oriented code, to relieve the developer. Most graph database access frameworks only support table-based result outputs. This defeats one of the strongest purposes of using graph databases. In order to harness both the power of graph databases and object-oriented modeling (e.g. type-safety, inheritance, etc.) we propose an open-source framework with two libraries: (1) renesca, which is a graph database driver providing graph-query-results and change-tracking. (2) renesca-magic, a macro-based ER-modeling domain specific language (DSL). Both were tested in a graph-based application and lead to dramatic improvements in code size (factor 10) and extensibility of the code, with no significant effect on performance.

Keywords

Graph databases Scala Neo4j REST API Object-graph-mapper OGM 

Copyright information

© IFIP International Federation for Information Processing 2016

Authors and Affiliations

  • Felix Dietze
    • 1
  • Johannes Karoff
    • 2
  • André Calero Valdez
    • 1
  • Martina Ziefle
    • 1
  • Christoph Greven
    • 3
  • Ulrik Schroeder
    • 3
  1. 1.Human-Computer Interaction CenterRWTH Aachen UniversityAachenGermany
  2. 2.RWTH Aachen UniversityAachenGermany
  3. 3.Learning Technologies Research GroupRWTH Aachen UniversityAachenGermany

Personalised recommendations