Skip to main content
Log in

Bringing SQL databases to key-based NoSQL databases: a canonical approach

  • Published:
Computing Aims and scope Submit manuscript

Abstract

Big Data management has brought several challenges to data-centric applications, like the support to data heterogeneity, rapid data growth and huge data volume. NoSQL databases have been proposed to tackle Big Data challenges by offering horizontal scalability, schemaless data storage and high availability, among others. However, NoSQL databases do not have a standard query language, which bring on a steep learning curve for developers. On the other hand, traditional relational databases and SQL are very popular standards for storing and manipulating critical data, but they are not suitable to Big Data management. One solution for relational-based applications to move to NoSQL databases is to offer a way to access NoSQL databases through SQL instructions. Several approaches have been proposed for translating relational database schemata and operations to equivalent ones in NoSQL databases in order to improve scalability and availability. However, these approaches map relational databases only to a single NoSQL data model and, sometimes, to a specific NoSQL database product. This paper presents a canonical approach, called SQLToKeyNoSQL, that translates relational schemata as well as SQL instructions to equivalent schemata and access methods of any key-oriented NoSQL database. We present the architecture of our layer focusing on the mapping strategies as well as experiments that evaluate the benefits of our approach against some state-of-art baselines.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

Notes

  1. Some authors, like [7], use the terms extensible record stores, wide column stores or simply columnar as synonyms to column-oriented databases.

  2. https://www.w3.org/XML/.

  3. https://www.w3.org/DOM/.

References

  1. Abadi DJ (2009) Data management in the cloud: limitations and opportunities. IEEE Data Eng Bull 32(1):3–12

    MathSciNet  Google Scholar 

  2. Apache (2017) White paper: apache phoenix. http://phoenix.apache.org/. Accessed 24 Aug 2018

  3. Arnaut DE, Schroeder R, Hara CS (2011) Phoenix: a relational storage component for the cloud. In: 2013 IEEE SICCC 0

  4. Atzeni P, Bugiotti F, Rossi L (2012) Sos (save our systems): a uniform programming interface for non-relational systems. In: Proceedings of the 15th international conference on extending database technology. ACM, New York

  5. Banerjee S, Goto T, Debnath NC, Sarkar A (2017) Ontology driven query language for nosql databases. In: 2017 IEEE 15th international conference on industrial informatics (INDIN), pp 951–956

  6. Bisbal J, Lawless D, Wu B, Grimson J (1999) Legacy information systems: issues and directions. IEEE Softw 16(5):103–111

    Article  Google Scholar 

  7. Cattell R (2011) Scalable SQL and NoSQL data stores. SIGMOD Rec 39(4):12–27

    Article  Google Scholar 

  8. Chung WC, Lin HP, Chen SC, Jiang MF, Chung YC (2014) Jackhare: a framework for SQL to NoSQL translation using mapreduce. Autom Softw Eng 21(4):489–508

    Article  Google Scholar 

  9. dos Santos Ferreira G, Calil A, dos Santos Mello R (2013) On providing DDL support for a relational layer over a document NoSQL database. In: IIWAS. ACM, New York

  10. Egger D (2009) SQL in the cloud. Ph.D. thesis, Master Thesis ETH Zurich

  11. Fielding RT (2000) Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California, Irvine

  12. Hamouda S, Zainol Z (2017) Document-oriented data schema for relational database migration to NoSQL. In: 2017 International conference on big data innovations and applications (innovate-data), pp 43–50

  13. Kim HJ, Ko EJ, Jeon YH, Lee KH (2018a) Migration from RDBMS to column-oriented NoSQL: lessons learned and open problems. In: Lee W, Choi W, Jung S, Song M (eds) Proceedings of the 7th international conference on emerging databases. Springer Singapore, pp 25–33

  14. Kim HJ, Ko EJ, Jeon YH, Lee KH (2018b) Techniques and guidelines for effective migration from RDBMS to NoSQL. J Supercomput. https://doi.org/10.1007/s11227-018-2361-2

    Article  Google Scholar 

  15. Lawrence R (2014) Integration and virtualization of relational SQL and NoSQL systems including MySQL and MongoDB. In: CSCI, vol 1

  16. Liu ZH, Hammerschmidt BC, McMahon D (2014) JSON data management: supporting schema-less development in RDBMS. In: ICMD, SIGMOD

  17. Mishra P, Eich MH (1992) Join processing in relational databases. ACM CSUR 24(1):63–113

    Article  Google Scholar 

  18. Papakonstantinou Y, Garcia-Molina H, Widom J (1995) Object exchange across heterogeneous information sources. In: 11th CDE. IEEE

  19. Rith J, Lehmayr PS, Meyer-Wegener K (2014) Speaking in tongues: SQL access to NoSQL systems. In: 29th ACM SAC, New York

  20. Rocha L, Vale F, Cirilo E, Barbosa D, Mouro F (2015) A framework for migrating relational datasets to NoSQL1. Procedia Comput Sci 51(C):2593–2602

    Article  Google Scholar 

  21. Sadalage PJ, Fowler M (2012) NoSQL distilled: a brief guide to the emerging world of polyglot persistence. Pearson Education, London

    Google Scholar 

  22. Schreiner GA, Duarte D, dos Santos Mello R (2015) SQLtoKeyNoSQL: a layer for relational to key-based NoSQL database mapping. In: iiWAS, ACM, New York

  23. Vathy-Fogarassy G, Hugyk T (2017) Uniform data access platform for SQL and NoSQL database systems. Inf Syst 69(C):93–105

    Article  Google Scholar 

  24. Vilaça R, Cruz F, Pereira J, Oliveira R (2013) An effective scalable SQL engine for NoSQL databases. In: Dowling J, Taïani F (eds) 13th IFIP, DAIS, Springer, Berlin

    Chapter  Google Scholar 

  25. Xu J, Shi M, Chen C, Zhang Z, Fu J, Liu CH (2016) ZQL: a unified middleware bridging both relational and NoSQL databases. In: 2016 IEEE 14th ICD, ASC, 14th ICPIC, 2nd CyberSciTech, pp 730–737

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Geomar A. Schreiner.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Schreiner, G.A., Duarte, D. & dos Santos Mello, R. Bringing SQL databases to key-based NoSQL databases: a canonical approach. Computing 102, 221–246 (2020). https://doi.org/10.1007/s00607-019-00736-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-019-00736-1

Keywords

Mathematics Subject Classification

Navigation