Implementing and Assessing Change Requests

CST8276 – Advanced Database Topics

Assignment 2: Implementing and Assessing Change Requests (10%)

This assignment relates to the following Course Learning Requirements:

CLR 1 – Plan for and install a database management system (including the creation of a database)

CLR 2 – Administer a DBMS using knowledge of SQL, database security features, globalization and database architecture (storage, memory and processes)

CLR 6 – Build database systems that directly support internationalization and globalization

CLR 7 – Explore and gain practical experience in current advanced database technology

Objectives of the Assignment

First you will install MongoDB, and MongoDBCompass applications. Then you will create a new database and import a csv provided (Inventory).

The focus of this assignment is to draft a detailed change request form to update a MongoDB database. This change request form (PDF file) will also include the steps for implementing the change. You are not expected to do detailed programming for MongoDB. Keep your procedures and programming scripts at a high level.

Instructions

Examine these resources and determine from a high level how MongoDB works.

MongoDB manual — https://www.mongaodb.com/docs/manual/contents/

Tutorial – https://docs.mongodb.com/manual/tutorial/

Overview – https://youtu.be/pWbMrx5rVBE

Cluster Sharding

https://youtu.be/l1XRggQQ3NM

https://youtu.be/Rwg26U0Zs1o

Shell methods – https://docs.mongodb.com/manual/reference/method/

Install MongoDB. https://www.mongodb.com. Do not use Mongo Atlas.

Note: Using MongoDB is mostly done using CMD (command line mode) – MongoDBCompass is a GUI interface but most of the following ‘shell’ code will need to be done in CMD mode.

Mongo installation location by default in your Program Folder.

Go to your Control Panel. Type “Control Panel” in your search bar located at the bottom left of your Windows screen.

then Hit enter.

Search for System. Type “System” in your search bar located a the upper right corner of your Control Panel. Hit enter.

Click “Edit the system environmental variables” under System

Click “Environmental Variables” in the System Properties Window.

Click on PATH and choose NEW to add a new ‘path’

Add the PATH (see my C:/Program Files…..)

Create a ‘db’ folder in the Mongo installation folder

Install MongoDBCompass — https://www.mongodb.com/try/download/compass

Under the C:Program FilesMongoDB folder (on my laptop, this is the location)

Use the

From the START menu, open MongoDBCompass application and create a connection….

Now, once you have a successful connection, you can begin to create your new database.

https://www.mongodb.com/basics/create-database

https://www.freecodecamp.org/news/learn-mongodb-a4ce205e7739/

You will need to create your new database and create/populate a new collection – INVENTORY table

Create a database called INVENTORY. (screenshot and paste in box provided).

Create an inventory table/collection – pull the file from Brightspace called INVENTORY_ITEMS.csv to import. (screenshot and paste in box provided).

Use one shell method and provide a screen shot showing the use of that method (screenshot and paste in box provided).

Determine if the collection is fixed (capped) or dynamic. Provide a screenshot showing how determined what your new collection – INVENTORY is.

(screenshot how you determined the type of collection and paste in box provided).

If fixed, how would you change the size?

If dynamic, is there a maximum size limit? You will need to understand these concepts and limitations to complete the assignment.

(type in the box below the answers to the above two questions).

The size of the collection can change because we never determined the size when we first created it. If we want to change the size, we must run the convertToCapped command and specify the new size. The maximum size limit varies depending on things like the number of shards, but it can be as large as 1TB to 32TB.

Research shards and clusters on how they work. Type a brief explanation of what each of these things are.

(screenshot and paste in box provided).

Shards are used to divide data into smaller pieces, while clusters can be used to spread data out across multiple servers, making it easier to scale up.

Create your change request form based on what you learned from the activities covered in Modules 4, 5, and 6.

(Submit as a separate document – Change Request Form)

Your Change Request should include the following sections. This means each section in your change request has the following information. This change request form covers how the business and the technology will change. This is not a change request for a project. A project would be setup based on this change request.

Change Request – Initial Request. For this section assume the request is made by the sales team. They notice that their inventory collection has gotten really big and accessing it is extremely slow. They want to double the table size and double the performance for accessing. This is a high priority request to improve worker productivity. Use examples from the readings in the module’s content.

Change Request Analysis. Provide a detailed technical explanation of what needs to be changed and why. Determine why the performance is an issue based on your understanding of how MongoDB works.

Database Current State. Provide screen shots of all current database settings that will be changed per this change request.

Specify which settings will be changed. Use one shell method for the database, one shell method for the collection, and one shell method for the collection size. Provide screen shots of using these methods and what the results of these methods show.

Change Procedure. Specify the high-level steps required to implement the change. DO NOT go deep into MongoDB coding.

Specify the shell methods and how to best use them to support your high-level procedure. Provide the results of each shell method.

Roll Back Procedure. Specify the high-level steps required to reverse the change.

Specify the shell methods and how to best use them to support your high-level procedure. Different versions of MongoDB may not have a rollback method. If the version of MongoDB you downloaded doesn’t have that method you will need to provide a script that undoes the change by recreating the database environment.

Change Request Completed. Provide screen shots of the database’s new settings, emphasizing only those settings that changed.

Change Request Submission. Submit your Change Request Report as a separate document.

Submission Requirements:

To submit this assignment, submit this completed file along with your Change Request Form, using the assignment upload tool in Brightspace. To access this, navigate to the Activities/Assignments link in the left-hand sidebar, and select Assignment 2 – Implementing and Assessing Change Requests.

Please note: Algonquin College has a policy regarding Plagiarism. The consequences are immediate zeroes for assignments and potentially an instant fail for the whole course. It is only natural for students to work together to complete assignments.

DO NOT PLAGIARIZE each other’s work.

Assignment 2 Grading Rubric (10%)

Table 1 – Assignment 2 Grading Rubric

Exemplary

Accomplished

Developing

Incomplete

Criteria

3

2

1

0

Change Request Form

Included sections that would be used by IT and Business customers.

Included sections that would be used by IT customers.

Included all sections specified in the assignment.

Not completed

Change Request Submission

Included at least 75% of the information standard for this section.

Included at least 50% of the standard information for this section.

Included less than 50% of the information required.

Not completed

OR

Excluded any information that was provided in this assignment

Change Request Analysis

Included a detailed and concise explanation of how the requested change impacts the database structures.

Included at the most part a straight forward explanation of how the requested change will impact the database.

Included a vague or meandering explanation of how the requested change will impact the database.

Not completed

OR

Excluded analysis regarding database structures

Database Current State

Included all screen shots of database settings that will be changed.

Included 75% of all the database settings that will be changed.

Included less than 75% of the database settings to be changed.

Not completed

OR

Specific settings to be changed were not identified

Change Procedure

Included at least 80% of the steps for the change. Each step is clearly titled, easily understood and included scripts that can be copied / pasted to be executed.

Included at least 60% of the steps for the change. Each step is titled, understood, and included scripts that can be copied / pasted to be executed.

Included less than 60% of the steps for change

OR

steps are not easily understood

OR

Excluded scripts

Not completed

Roll Back Procedure

Included at least 80% of the steps for the change. Each step is clearly titled, easily understood and included scripts that can be copied / pasted to be executed.

Included at least 60% of the steps for the change. Each step is titled, understood, and included scripts that can be copied / pasted to be executed.

Included less than 60% of the steps for change

OR

steps are not easily understood

OR

Excluded scripts

Not completed

Change Completed

Included all screen shots of database settings that were changed.

Included 75% of all the database settings that were changed.

Included less than 75% of the database settings that were changed.

Not completed

OR

Specific settings changed were not identified

End of Assignment