Background Movie Maniacs is a site which lists top charts of movies and have put an emphasis in…
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):
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
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
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 movie
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
_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.
Submission
The completed assignment is to be submitted to Blackboard by the due date.
The assignment will be assessed according to the marking sheet. Late submission will be penalised according to the policy in the course outline. Please note Saturday and Sunday are included in the count of days late.
Appendix A
Marking Sheet for ICT704 Task 2
Student Name: Student ID:
Items
Maximum Marks
Marks Obtained PART A: Database Implementation (65 marks made up of)
– Create a MongoDB database (5 marks)
– Insert data into MongoDB using the insert command (5 marks)
– Create indexes (5 marks)
– Create the queries and other actions (50 marks total)
65
PART B: Report (35 marks made up of) o Database description (10 marks) o Alternative modeling discussed (10 marks) o Justification of indexes chosen (10 marks) o Recommendations (5 marks)
35
Total =
100
/40%

