Reference no: EM132110140
NoSQL Database Assignment Using MongoDB
Background
Movie Maniacs is a site which lists top charts of movies and have put an emphasis in follower engagement. They are active on Facebook and Twitter and share the latest updates and news to their followers. However, they have recently decided to create a page where viewers can rate the movies on the list and leave comments for others to see. They have asked you to come up with a database using MongoDB to be able to store their movie lists and allow viewers to easily rate and review the movies.
Movie Details
- Every movie has a unique identifier
- Some movies have a series title
- Every movie has at least one Director and a list of leading actors
- Some movies have won Oscars
- Movies can have multiple reviews, one review or no reviews made
- Reviews are made by anyone, who only need to supply a name
- Reviews consist of a rating out of 10 and any comments
There are two parts to this assignment. Part A is the creation of the database in MongoDB and Part B is the report.
Part A - Database
- Create a MongoDB database using the data provided to you in the MovieData_Task2.xls spreadsheet. (There should only be one collection movies with each movie as a single document).
- Insert data from the provided .xlsx file into MongoDB using the insert command
- Create indexes which you think will be needed and beneficial
- Create the following queries (all output should be displayed in a formatted way):
o List all the movies in the collection
o List the movies that are from Japan
o List just the directors name(s) for every movie
o List the distinct names of every director
o Count the number of movies in the list
o Return only the movies that have won at least one Oscar
o List the movies that were released before 1980
o Return the title and average rating of each movie
o Return the title of movies that have had no ratings or comments
- Update the title of movie 6 to "E.T."
- Add a new field called notes to the following movies:
o 12 Terminator and Terminator 2 are rated together
o 18 The trilogy consists of the three movies
Part B - Report
For the report you are required to explain the structure of the database you created. This includes justifying the indexes you created. You need to describe how the relationships were handled in the database. In your report, discuss potential alternatives to how the relationships could have been modeled and implemented in MongoDB and the benefits/issues of each. Provide recommendations to Movie Maniacs for any additional functionality for the database.
Specific Instructions
For Part A you are to submit a single plain text file, named
<studentNumber>_mongoDB.txt.
In this file you are to include all the commands for your implementation. For Part B you are to submit a report in a word document or PDF.
Attachment:- Assignment.rar