Artigo Acesso aberto

A Middleware Model for SQL to NoSQL Query Translation

2022; Indian Society for Education and Environment; Volume: 15; Issue: 16 Linguagem: Inglês

10.17485/ijst/v15i16.2250

ISSN

0974-6846

Autores

Basant Namdeo, Ugrasen Suman,

Tópico(s)

Distributed systems and fault tolerance

Resumo

Objectives: To propose a suitable model for RDBMS SQL to NoSQL query translation, which works as a middleware between legacy applications and the NoSQL database. This model is expected to translate the SQL queries into NoSQL queries, and forward them to the NoSQL database for execution, and after the execution, the result received from NoSQL should be transferred to the legacy application. Methods: The proposed model is implemented in Java programming language for MySQL (RDBMS) to MongoDB document database query translation. The prototype translates the insert, update, delete, and select SQL queries into equivalent NoSQL query format for MongoDB document database. The middleware transforms the SQL queries to NoSQL query format, and returns the result to the legacy application, which they are expecting from the database. Performance of our model has been evaluated by executing SQL queries such as select, insert, update, delete (with simple and join queries) in Studio 3T, UnityJDBC driver for MongoDB, and our model SQLNo- QT. Findings: The study shows that the proposed model SQL to NoSQL Query Translation Model (SQL-No-QT) performs better in some cases. This model takes 7.5% less time compared to Studio3T, and 38.19% less time compared to UnityJDBC driver in executing select queries, and 78.82% less time compared to Studio3T in executing delete queries in big size database. This model also can execute the join SQL queries for insert, update and delete, which are not available in UnityJDBC driver for MongoDB. Novelty: This model works as a middleware between a legacy application and a NoSQL database, and it removes the need of developing whole new software for legacy application. Keywords: Database reengineering; database; Query translation; NoSQL; RDBMS

Referência(s)