

Databases Migration From RDBMS To NoSQL -
Part 2 Language Parsing
The Goal
Given an RDBMS that was migrated to a Graph database (Part I of this project), the
goal is to give the user a simple web UI and only a few steps, for translating SQL
queries about the old database into queries in Cypher that yield the same results.
Main Objectives
Parse
-
Convert a subset of SQL query language to an internal instruction set.
Compose
-
Translate the internal instruction set to a Cypher query.
Block Design
Konstantin Lazarev, Yoni Maymon
Advisor: Dr. Dganit Armon
Software Engineering
The System Modules
The Product
With any modern browser the user logs in with his credentials, and displayed with the
man control panel page.
By selecting “Start Full Automated Migration” you are welcomed with the new project
registration panel. Entering the correct connection info for SQL data base and Neo4j
and pressing “Next” will start the migration process. Progress data is visible in the
next page
Query translation of a MySQL DB to a Graph DB by:
- Parsing (SQL) queries from the relational DB
- Mapping the queries to the new migrated database
(Neo4j)
- Outputting Cypher language queries that perform
the same action
User
Login/Registers
Web UI
Manual
query input
SQL query
integrity
validation
SQL Parse
to abstract
syntax tree
Compose AST
to Cypher
&
POST BACK
Web UI
File
Output/Textbox
Load Neo4j DB
scheme
(from Part 1 of
the project)
Query process
Main application server
User connects via
Web Browser.
Translator Server
REST
API
Db migration process
Project part 1
IIS web service
Migration server
Cloud
Translator Controller
SQL Parser Composer Module
Web page title
http://www.url.comEmail Password
Verification
When the second
phase is at 100%,
you can start your
query translation for
your new DB. Enter
the translate page,
select the relevant
project and input
the SQL query.
The new Cypher
queries will appear
at the text box
below or in a
downloadable file.