ICT704 - Movie Maniacs: NoSQL Database Systems Using MongoDB

Verified

Added on  2023/06/04

|6
|1148
|389
Report
AI Summary
This report outlines the implementation of a NoSQL database for the 'Movie Maniacs' website using MongoDB. It discusses the structure of the database, highlighting the flexibility of NoSQL in handling unstructured data. The database features a 'movie' collection with details like title, director, actors, and Oscar counts, along with an embedded array for user reviews. The report explains the use of indexing on 'MovieID' and 'Reviews' fields to optimize data retrieval. It also justifies the use of the embedding technique over referencing for establishing relationships between collections. Recommendations include creating separate collections for actors and directors, storing user information for reviews, and adding movie posters for enhanced user experience. The report concludes that MongoDB offers scalability and performance benefits for the 'Movie Maniacs' database, suggesting a balanced approach to embedding and referencing for optimal database design.
Document Page
Running head: MOVIE MANIACS
Movie Maniacs
Name of the student:
Name of the University:
Author note:
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
MOVIE MANIACS
Table of Contents
Introduction................................................................................................................................2
Structure of the database............................................................................................................2
Indexes.......................................................................................................................................3
Relationships..............................................................................................................................3
Recommendations......................................................................................................................4
Conclusion..................................................................................................................................4
Document Page
MOVIE MANIACS
Introduction
A NoSQL database is the need of the hour for any online based business organization.
NoSQL database allows the database to be more scalable and perform with better speed, and
accuracy. There are many options available that allows the use of NoSQL database structures
to implement special data models. Mongo DB is one such platform. Mongo DB allows
programmers to shape data into unstructured data units within its database. Mongo DB helps
in the project to be focused majorly upon reliability, performance and consistency. This
discourages the use of relational database systems or RDBMS which tend to show drawbacks
when it comes to large volumes of data. This proves that RDBMS structures showcase poor
performance when it comes of vertical scalability.
Structure of the database
The structure of a NoSQL database is easy to be explained. It can be preferably stated
that a NoSQL database has got no such specific structure. The movie collection in this
MovieManiacs database is the only collection that has been implemented into the database.
The collection holds various information about each document or entry, which uniquely
represent a movie. Mongo DB through the concept of NoSQL allows the collection to be
implemented in any possible fashion that is there needs not be any pre-defined specific
structure for the collection. This feature has been thoroughly utilised in this application. The
movie collection has a unique id, title, names of director and actors and also Oscar counts.
However, it is not necessary that all documents within the collection needs to have these
fields. This is the special feature of the mongo DB database. The details about the reviews
made by the users of the database or the reviewers have been recorded into a special array
data structure as a separate field for the specific documents only. This array holds all the
necessary review information from reviewer name, data, and rating to the comments that
Document Page
MOVIE MANIACS
have been made. This helps in the process of accumulating interesting and crucial data
analysis results about the reviews of the different movies.
The data has been primarily imported from a group of excel sheets. These excel sheets
had separate collection of data for the movies and the review details. Using a special
converter tool, the .xlxs file was converted into .json content and the same was inserted into
the database. In addition, the contents of the reviews spreadsheet was carefully converted into
array forms based on the movie id and then they were written into the insert statement of each
movie document as and when needed.
Indexes
Indexes are specially designed data structures within a database, which can store a
collection's dataset in such a form such that it becomes easier to be traversed and retrieved
from. In this movie collection the MovieID field and the Reviews array field has been termed
as the index keys. This allows the collection to be easily traversed during searching for
specific data. The unique identity field MovieID when indexed will allow to segregate the
data easily as most of the operations on a database are ID centric furthermore, the Reviews
array index will also encourage the easy understanding and accessibility of the reviews of
each movie with a review comment or rating.
Relationships
The database uses the embedding technique to establish relationships between two
possibly separate collections. The Reviews collection and the Actors or Directors data could
have been segregated as a different collection and then linked to the parent movie collection
with the help of referencing technique. This is more of a relational database approach and is
hence not preferred. The embedding technique allows faster resolution of problems and
allows better accuracy in the retrieval of data.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
MOVIE MANIACS
Recommendations
The MovieManiacs database should hold separate collections to store the details about
the actors and directors. It would allow the database to be enriched with more information
and the use case domain will also increase. Furthermore, the database can also allow the
storage of user information and hence allow users of the database to register for the
application with their personal information and access the database data, put up reviews and
also allow better data analysis to the business end. One final appreciated implementation into
the database would be to store poster images of the movies that they highlight. This will
allow the users to have a well framed graphical image of the movie that they are browsing
and hence enhance their interest into the same.
Conclusion
It can hence be concluded that the use of a NoSQL Mongo DB database will prove to
be extremely fruitful for the Movie Maniacs database. It will be more scalable and rich in
performance oriented functionalities. Furthermore, even though the embedding technique can
be used for better performance in Mongo DB, however it is sometimes necessary to use
referencing technique to place separate collection of other entities and then link them with
characteristic relationships using references.
Document Page
MOVIE MANIACS
Bibliography
Chodorow, K., 2013. MongoDB: The Definitive Guide: Powerful and Scalable Data Storage.
" O'Reilly Media, Inc.".
McCreary, D. and Kelly, A., 2014. Making sense of NoSQL. Shelter Island: Manning, pp.19-
20.
Vera, H., Wagner Boaventura, M.H., Guimaraes, V. and Hondo, F., 2015, September. Data
modeling for NoSQL document-oriented databases. In CEUR Workshop Proceedings (Vol.
1478, pp. 129-135).
Boicea, A., Radulescu, F. and Agapin, L.I., 2012, September. MongoDB vs Oracle--database
comparison. In 2012 third international conference on emerging intelligent data and web
technologies (pp. 330-335). IEEE.
Kanade, A., Gopal, A. and Kanade, S., 2014, February. A study of normalization and
embedding in MongoDB. In Advance Computing Conference (IACC), 2014 IEEE
International (pp. 416-421). IEEE.
Ruiz, D.S., Morales, S.F. and Molina, J.G., 2015, October. Inferring versioned schemas from
NoSQL databases and its applications. In International Conference on Conceptual
Modeling (pp. 467-480). Springer, Cham.
chevron_up_icon
1 out of 6
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]