Recent Question/Assignment

Non-Relational Database Systems
Task 2
NoSQL Database Assignment
Using MongoDB

Assessment and Submission Details
Marks: 40% of the Total Assessment for the Course
Due Date: Week 12
Submit your assignment in the link under Assessment- Task 2 on Blackboard. The submission link will be open a week before the due date. Please follow the submission instructions provided.
The assignment will be marked out of a total of 100 marks and forms 40% of the total assessment for the course. ALL assignments will be checked for plagiarism by SafeAssign system provided by Blackboard automatically.
Refer to your Course Outline or the Course Web Site for a copy of the “Student Misconduct, Plagiarism and Collusion” guidelines.
Assignment submission extensions will only be made using the official Faculty of Arts & Business Guidelines.
Requests for an extension to an assignment MUST be made to the course coordinator prior to the date of submission and requests made on the day of submission or after the submission date will only be considered in exceptional circumstances.
Comic Crusaders are a new Comic Book retailer to hit the online market. They pride themselves in having the latest and greatest comics from the UK and US. As they are new to the market they have put an emphasis in customer service and engagement. They are active on Facebook and Twitter and share the latest releases and news to their followers. However, they have recently decided to create a page where customers can rate the comics and leave comments for potential customers to see. They have asked you to come up with a database using MongoDB to be able to store their comic book details and allow customers to easily rate and review the comics.
Comic Details
• Every comic has a unique identifier
• Some comics have a series title
• Most comics have a number of keywords for topics
• English is currently the only language, but this may change in the future
• Each comic has an associated publisher and publisher details
• Comics can have multiple reviews, one review or no reviews made
• Reviews are made by customers who only 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
ComicData_Assignment.xls spreadsheet. (There should only be one collection comics with each comic 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:
o List all of the comics in the collection o Find the records that are published by Panini UK o List just the publishers name for every comic o List the distinct names of every publisher o Count the number of comics in the collection
o Return only the records that have both a title and a series title o List the comics that have science fiction in their topics o Return the title and average rating of each comic
o Return the title of comics that have had no ratings or comments
• Update the title of comic 17118168 to “Batman and Superman” • Update all “Titan Comics” publisher to “Titan Comics Incorporated” • Add a new field called notes to the following comics:
o 16556832 Designed to be pulled apart and filed in special binders o 17035085 A free gift accompanies each issue o 17593604 Each issue is accompanied by gifts
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 Comic Crusaders 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.
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 which you think will be needed and beneficial (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 (15 marks) o Recommendations (10 marks) 35
Total = 100