University project at the course of Data Managment for Data Science for an hands on in relation database like MySQL and NoSQL database as MongoDB.
The first section of the project is divided in two parts:
- find a dataset and build a database on MySQL in order to:
- formulate a set of SQL queries over the relational schema we built;
- execute such queries over the database and analyze the results.
- identify possible SQL queries that pose performance problems to the DBMS and optimizing them adding integrity constraints to one or more tables, rewriting the SQL query (without changing its meaning), adding indices to one or more tables, modifying the schema of the database, adding views or new (materialized) tables derived from the existing database tables.
The second section of the project was to start from database developed in the first part and use a NoSQL tool, we choose MongoDB, in order to learn how to manage typical relational data in different setup highlighting the differences with respect to a standard (SQL) relational database system, traslating the query in the new system.
MySQL folder contains three files:
- Table.sql: sql file used to create the relation table for the schema
- MySQL_Query.sql: sql file which store the different query we create
- MySQL_presentation.pdf: a brief introductory presentation of the dataset and how we handled it in MySQL
MongoDB folder contains five files:
- Change_DataTypes.js, Create_Collection.js, Create_Index.js: js file in order to adapt and store the dataset in the new system
- MongoDB_query.js: js file which store the different query we adapt for MongoDB
- MongoDB_presentation.pdf: a brief presentation about how we handled the migration from relational database system to MongoDB