An MDE Approach to Generate Schemas for Object-document Mappers

Diego Sevilla, Severino Feliciano, Jesús García-Molina

2017

Abstract

Most NoSQL systems are schemaless. This lack of schema offers a greater flexibility than relational systems. However, this comes at the cost of losing benefits such as the static checking that assure that stored data conforms to the database schema. Instead, developers must be in charge of this task that is time-consuming and error-prone. Object-NoSQL mappers are emerging to alleviate this task and facilitate the development of NoSQL applications. These mappers allow the definition of schemas, which are used to assure that data are correctly manipulated. In this article, we present an MDE approach that automatically generates schemas and other artefacts for mappers. As proof of concept, we have considered Mongoose, which is a widely used mapper for MongoDB, but the solution is mapper-independent. Firstly, the schemas are inferred from stored data by using an approach defined in a previous work. Then, NoSQL schema models are input to a two-step model transformation chain that generates schemas, validators and updating procedures, among other Mongoose artefacts. An intermediate metamodel has been defined to ease the implementation of the transformations. This work shows how MDE techniques can be applied in the emerging “NoSQL Data Engineering” field.

References

  1. Compass (2016). Mongodb Compass Web Page. https:// www.mongodb.com/products/compass. Accessed: November 2016.
  2. Daniel, G., Sunyé, G., and Cabot, J. (2016). UMLtoGraphDB: Mapping Conceptual Schemas to Graph Databases, pages 430-444. Springer International Publishing, Cham.
  3. DbSchema (2016). DbSchema Web Page. http:// www.dbschema.com. Accessed: November 2016.
  4. Doctrine (2016). Doctrine Web Page. http://docs. doctrine-project.org/projects/doctrine-mongodb-odm/ en/latest/. Accessed: November 2016.
  5. ER-Studio (2016). ER-Studio Web Page. https:// www.idera.com/er-studio-enterprise-data-modelingand-architecture-tools. Accessed: November 2016.
  6. ERWin (2016). CA ERwin Web Page. http://erwin.com/ products/data-modeler. Accessed: November 2016.
  7. Fowler, M. (2013). Schemaless Data Structures. http:// martinfowler.com/articles/schemaless/.
  8. GraphViz (2016). GraphViz Web Page. http:// www.graphviz.org/. Accessed: November 2016.
  9. Hernández, A., Sevilla Ruiz, D., and García-Molina, J. (2016). Visualization of Inferred Versioned Schemas from NoSQL Databases. SiriusCon 2016. http://www.slideshare.net/Obeo corp/siriuscon2016- visualization-of-inferred-versioned-schemas-fromnosql-database
  10. Holmes, S. (2013). Mongoose for Application Development. PACKT Publishing.
  11. Klettke, M., Scherzinger, S., and St örl, U. (2015). Schema Extraction and Structural Outlier Detection for JSONbased NoSQL Data Stores. In BTW.
  12. Mandango (2016). Mandango Web Page. mandango.org/. Accessed: November 2016.
  13. MongoDB (2016). MongoDB Web Page. https:// www.mongodb.com/. Accessed: November 2016.
  14. Mongoose (2016). Mongoose Web Page. mongoosejs.com. Accessed: November 2016.
  15. NoSQL-Market (2016). NoSQL Market. https:// www.alliedmarketresearch.com/NoSQL-market. Accessed: November 2016.
  16. NoSQL Ranking (2016). NoSQL Ranking. http:// db-engines.com/en/ranking. Accessed: November 2016.
  17. PlantUML (2016). PlantUML Web Page. plantuml.com. Accessed: November 2016.
  18. Sadalage, P. and Fowler, M. (2012). NoSQL Distilled. A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley.
  19. Sevilla Ruiz, D., Feliciano Morales, S., and García Molina, J. (2015a). Inferring Versioned Schemas from NoSQL Databases and its Applications. In ER, pages 467- 480.
  20. Sevilla Ruiz, D., Feliciano Morales, S., and García Molina, J. (2015b). Model Driven NoSQL Data Engineering. In JISBD, Santander.
  21. Wang, L., Hassanzadeh, O., Zhang, S., Shi, J., Jiao, L., Zou, J., and Wang, C. (2015). Schema Management for Document Stores. In VLDB Endowment, volume 8.
  22. Xtend (2016). Xtend Main Web Page. www.eclipse.org/xtend/. Accessed: May 2016.
  23. Xtext (2016). Xtext Main Web Page. http:// www.eclipse.org/Xtext/. Accessed: November 2016.
Download


Paper Citation


in Harvard Style

Sevilla D., Feliciano S. and García-Molina J. (2017). An MDE Approach to Generate Schemas for Object-document Mappers . In Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-210-3, pages 220-228. DOI: 10.5220/0006279102200228


in Bibtex Style

@conference{modelsward17,
author={Diego Sevilla and Severino Feliciano and Jesús García-Molina},
title={An MDE Approach to Generate Schemas for Object-document Mappers},
booktitle={Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2017},
pages={220-228},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006279102200228},
isbn={978-989-758-210-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - An MDE Approach to Generate Schemas for Object-document Mappers
SN - 978-989-758-210-3
AU - Sevilla D.
AU - Feliciano S.
AU - García-Molina J.
PY - 2017
SP - 220
EP - 228
DO - 10.5220/0006279102200228