< Back to previous page

Publication

Object to NoSQL Database Mappers (ONDM): A systematic survey and comparison of frameworks

Journal Contribution - Journal Article

Context: Software applications frequently interact with database systems to persist and retrieve objects. Object mapping frameworks address (i) the bi-directional conversion of data between object and target database and (ii) provide a programmatic interface for querying and storing data. The rise of NoSQL databases poses challenges beyond object-relational mapping (ORM) frameworks to abstract from various data models and non-standardized API’s, but also take into account the different database capabilities (e.g. unsupported query operators, data ordering). Objective: A systematic survey study of existing Object-NoSQL data mapping (ONDM) frameworks. Specific focus is given to the level of abstraction of data and operations to multiple database technologies, as a means to limit vendor and technology lock-in and an enabler for multi-store and polyglot architectures. Additional attention is paid to mapping strategies that are specific to NoSQL databases (e.g. object embedding, schema flexibility). Method: A systematic search methodology identifies all relevant object mapping frameworks (in total 341 frameworks). Subsequently, a subset of ONDM frameworks is selected and systematically compared in terms of criteria of: database support, interface and query functionality, architecture and software coupling. Secondly, we provide an in-depth comparison of object-oriented mapping strategies for classes, inheritance, relationships, and attribute types to NoSQL data models. Results: ONDM frameworks are most prevalent in Java, Node.JS, Python, and overall 54 frameworks support multiple (NoSQL) databases. Interfaces are frequently standardized and commonly feature a uniform query language and even native DB query mapping. However, database portability may be hindered due to non-uniform abstractions. As for mapping strategies, current frameworks do not fully exploit NoSQL’s modeling potential, such as (i) the embedding of relationship data within referring objects’ records, (ii) mapping at the individual object-level vs. class-level, and (iii) lacking collection normalization despite being supported for associations or when using relational databases. Conclusion: The study consolidates knowledge on available ONDM frameworks, and applied object-document, object-graph, and object-column mapping patterns. The study can guide practitioners in framework selection, and pinpoints areas of future development and research in this domain, most notably towards improved support for flexible, NoSQL-aware mapping strategies.
Journal: Information Systems
ISSN: 0306-4379
Volume: 85
Pages: 1 - 20
Publication year:2019
BOF-keylabel:yes
IOF-keylabel:yes
BOF-publication weight:1
CSS-citation score:1
Authors from:Higher Education
Accessibility:Open