Mysql – How to Automate MongoDB schema design from existing MySQL Database and Logs

database-designmongodbMySQLnosqlschema

I am working on the project which will automatically generate sample MongoDB schema analyzing existing MySQL database and logs. I am looking for help regarding the below questions. Please, share your thoughts,some links or references.

1) What are the MySQL parameters which can help me to automate the process?

2) What are the criteria to design the idle MongoDB database? What I should keep in mind while designing MongoDB database? Example MongoDB schema for any MySQL database would be great help.

3) How denormalizing the database will help?

4) Is there any existing opensource application/tool which can help automation process?

Best Answer

I would not recommend doing automatic migrations from any relational databases (or other that differs in logic) to MongoDB. Of course it can be done, but the database performance might not be (and will most probably not be) good.

Now, answering your questions directly:

1) what do you mean by MySQL parameters?

2) Check the official docs page about the topic: Data Modeling in MongoDB

3) This question has already been answered in StackOverflow - Embed vs Reference. Nevertheless, here is where automatic migration rules will most probably fail. You need to decide this based on your use cases and necessities. Also, be aware that mongoDB doesn't support joins (meaning you will have to do it manually on the client side).

4) Only know MongoHub - it has an import/export tool that supports mysql