COMP643 Advanced Database Management
Assignment 3
PART 1 – QUERYING AND UPDATING THE DOCUMENT DATABASE (50 POINTS)
MongoDB is an open-source document-oriented database that is designed to store large scale data. It is categorised asa NoSQL (Not only SQL) database because the storage and retrieval of data in the MongoDB is not in the form. of tables and querying does not have to be done using SQL. Additional learning materials for MongoDB can be found on COMP643 LEARN Page.
In Assignment 2, Part 2, you used a database to process orders for roses. A subset of this database have been converted to MongoDB. You can download the JSON file (“rosesdb.json”) for creating this database in your local machine.
Based on this document database, write queries in MongoDB for each of the following tasks. Submit the queries in a text file, each query MUST be labelled with the question number (e.g, 1a).
a. Display the customer id and customer name of all customers with a balance of $0.00 and who are not from “Christchurch” sorted by customer id. (4 points)
b. Display the customer id, customer name, customer city and customer balance of all customers sorted by customer name in ascending order. (3 points)
c. Display the product name and product price for every product in the system. Sort the results by product name. Duplicates should be removed. (3 points)
d. Display the product name and total for all orders made by customer number 1001 sorted by total in descending order. (4 points)
e. Display the product name and product price for all products that cost greater than or equal to $50.00. (3 points)
f. For each customer, display the customer’s name, the number of order and the order total. (5 points)
g. Display the number of distinct products in the system. (3 points)
h. Display the product name and the product price for the product with highest price. (4 points)
i. Display the customer name for all customers who have never ordered a product. (2 points)
j. Display all cities customers are based in and the number of customers in each city. (3 points)
k. Display the product name and total for all the product(s) ordered by “John” . (3 points)
l. Display the product name and the number of times each product has been ordered. (3 points)
m. Insert a new customer, (10013, “Hans”, “Dunedin”, 0.00) . (5 points)
n. Insert a new order for Hans, (“Wenlock”, 40, 3, 120.00) and update the customer balance for Hans to 120.00. (5 points)
PART 2 – EVALUATIONS OF THE DOCUMENT DATABASE (30 POINTS)
Lincoln Rose Farm is expanding to 20 different cities in New Zealand. The plan is to have a collection of 1,000 roses in each location and to cater for over 20,000 customers nationwide. Write a one-page summary (excluding references) to discuss the suitability of a document database to store and manage customer orders. Your discussion should consider three factors. These factors may include data model (schema flexibility), usability and performance, data integrity and accuracy, functionality, security and cost. All references must follow APA 7th Edition reference format.
Submit your discussion as a PDF.
Part 3 Marking Criteria
Description
|
Marks
|
Discussion of suitability of a document database using each of the three selected factors.
|
24
|
Spelling, punctuation, grammar and references
|
6
|
Total
|
30
|