SQL2Neo: Uma Interface de Acesso SQL para o Neo4j
Resumo
Com a necessidade proeminente de diversas aplicações para manipular grandes volumes de dados de forma rápida e constante, os Bancos de Dados (BDs) NoSQL vêm se consolidando como uma escolha. Em um cenário no qual aplicações desejam migrar dados relacionais para BDs NoSQL, desenvolvedores são desafiados a lidar com diferentes linguagens ou métodos de acesso entre diferentes tecnologias de BD. Dado este contexto, este trabalho propõe uma solução para o mapeamento da interface de acesso SQL para BDs NoSQL orientados a grafos com foco no sistema de gerência de BD Neo4j. Diferente dos trabalhos relacionados, esta proposta realiza o mapeamento das principais instruções SQL DDL/DML para a linguagem Cypher do Neo4j, apresentando também regras de mapeamento entre os modelos de dados relacional e orientado a grafo. Experimentos demonstram que a solução proposta é viável e permite a manipulação de dados no Neo4j sem a necessidade de modificação da interface de acesso SQL para Cypher por parte da aplicação.
Palavras-chave:
SQL, NoSQL, bancos de dados orientados a grafos, Neo4j, mapeamento relacional-grafo
Referências
Abadi, D. (2009). Data Management in the Cloud: Limitations and Opportunities. IEEE Data Eng. Bull., 32:3–12.
Alotaibi, O. and Pardede, E. (2019). Transformation of Schema from Relational Database (RDB) to NoSQL Databases. Data, 4(4):148.
Boudaoud, A. et al. (2022). Towards a Complete Direct Mapping from Relational Databases to Property Graphs. In 11th Int. Conference on Model and Data Engineering (MEDI), volume 13761 of LNCS, pages 222–235. Springer.
Gueidi, A. et al. (2021). Towards Unified Modeling for NoSQL Solution Based on Mapping Approach. In Knowledge-Based and Intelligent Inf. & Eng. Systems (KES), volume 192 of Procedia Computer Science, pages 3637–3646. Elsevier.
Li, S. et al. (2021). SQL2Cypher: Automated Data and Query Migration from RDBMS to GDBMS. In 22nd Int. Conference on Web Information Systems Engineering (WISE), Proceedings, Part II, volume 13081 of LNCS, pages 510–517. Springer.
Megid, Y. A. et al. (2018). Using Functional Dependencies in Conversion of Relational Databases to Graph Databases. In 29th Int. Conf. on DB and Expert Systems Applications (DEXA), Proceedings, Part II, volume 11030 of LNCS, pages 350–357. Springer.
Orel, O. et al. (2017). Property Oriented Relational-To-Graph Database Conversion. Automatika, 57(3):836–845.
Sadalage, P. J. and Fowler, M. (2012). NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Pearson Education.
Sayeb, Y. et al. (2017). From Relational Database to Big Data: Converting Relational to Graph Database, MOOC Database as Example. J. Ubiquitous Syst. Pervasive Networks, 8(2):15–20.
Schreiner, G. A., Duarte, D., and dos Santos Mello, R. (2020). Bringing SQL Databases to Keybased NoSQL Databases: A Canonical Approach. Computing, 102(1):221–246.
Stoica, R. et al. (2019). On Directly Mapping Relational Databases to Property Graphs. In 13th Alberto Mendelzon Int. Workshop on Foundations of Data Management (AMW), volume 2369 of CEUR Workshop Proceedings. CEUR-WS.org.
Virgilio, R. D. et al. (2013). Converting Relational to Graph Databases. In 1st Int. SIGMOD/PODS Workshop on Graph Data Management Experiences and Systems (GRADES), pages 1–6. ACM.
Alotaibi, O. and Pardede, E. (2019). Transformation of Schema from Relational Database (RDB) to NoSQL Databases. Data, 4(4):148.
Boudaoud, A. et al. (2022). Towards a Complete Direct Mapping from Relational Databases to Property Graphs. In 11th Int. Conference on Model and Data Engineering (MEDI), volume 13761 of LNCS, pages 222–235. Springer.
Gueidi, A. et al. (2021). Towards Unified Modeling for NoSQL Solution Based on Mapping Approach. In Knowledge-Based and Intelligent Inf. & Eng. Systems (KES), volume 192 of Procedia Computer Science, pages 3637–3646. Elsevier.
Li, S. et al. (2021). SQL2Cypher: Automated Data and Query Migration from RDBMS to GDBMS. In 22nd Int. Conference on Web Information Systems Engineering (WISE), Proceedings, Part II, volume 13081 of LNCS, pages 510–517. Springer.
Megid, Y. A. et al. (2018). Using Functional Dependencies in Conversion of Relational Databases to Graph Databases. In 29th Int. Conf. on DB and Expert Systems Applications (DEXA), Proceedings, Part II, volume 11030 of LNCS, pages 350–357. Springer.
Orel, O. et al. (2017). Property Oriented Relational-To-Graph Database Conversion. Automatika, 57(3):836–845.
Sadalage, P. J. and Fowler, M. (2012). NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Pearson Education.
Sayeb, Y. et al. (2017). From Relational Database to Big Data: Converting Relational to Graph Database, MOOC Database as Example. J. Ubiquitous Syst. Pervasive Networks, 8(2):15–20.
Schreiner, G. A., Duarte, D., and dos Santos Mello, R. (2020). Bringing SQL Databases to Keybased NoSQL Databases: A Canonical Approach. Computing, 102(1):221–246.
Stoica, R. et al. (2019). On Directly Mapping Relational Databases to Property Graphs. In 13th Alberto Mendelzon Int. Workshop on Foundations of Data Management (AMW), volume 2369 of CEUR Workshop Proceedings. CEUR-WS.org.
Virgilio, R. D. et al. (2013). Converting Relational to Graph Databases. In 1st Int. SIGMOD/PODS Workshop on Graph Data Management Experiences and Systems (GRADES), pages 1–6. ACM.
Publicado
25/09/2023
Como Citar
PASSOS, Pablo Vicente; DE OLIVEIRA, Lucas Santos; SCHREINER, Geomar André; MACHADO, Vanessa Lago; MELLO, Ronaldo dos Santos.
SQL2Neo: Uma Interface de Acesso SQL para o Neo4j. In: SIMPÓSIO BRASILEIRO DE BANCO DE DADOS (SBBD), 38. , 2023, Belo Horizonte/MG.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2023
.
p. 179-191.
ISSN 2763-8979.
DOI: https://doi.org/10.5753/sbbd.2023.232478.