0% found this document useful (0 votes)
27 views

Assignment 1 (30 Points)

The document describes 6 different data models: hierarchical, network, relational, entity relationship, object oriented, and NoSQL. For each model, it provides a description, at least 2 advantages, and at least 2 disadvantages. It cites sources for each model description. The models are hierarchical, network, relational, entity relationship, object oriented, and NoSQL.

Uploaded by

Ryan Gilmore
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views

Assignment 1 (30 Points)

The document describes 6 different data models: hierarchical, network, relational, entity relationship, object oriented, and NoSQL. For each model, it provides a description, at least 2 advantages, and at least 2 disadvantages. It cites sources for each model description. The models are hierarchical, network, relational, entity relationship, object oriented, and NoSQL.

Uploaded by

Ryan Gilmore
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Assignment 1 (30 points)

Q1) Using Web resources, search for each of the following data models, provide a precise and complete
description (minimum of 40 words), a minimum of 2 advantages, and a minimum of 2 disadvantages. Cite
your resources

 Hierarchical Data Model


The hierarchical data model is a database model based on parent-child relationships. Each parent can
relate to more than one child, but each child can only be related to one parent. Usually there is a top-level
directory called the root which contains other directories and files. Each subdirectory can then contain
more files and directories, and so on.
Advantages of this model include that it allows for easy addition and deletion of new information. It
also relates well to anything that works through a one to many relationship.
However, the disadvantage of the hierarchical data model is that is has problems with many-to-many
relationships. Another disadvantage is that it is not flexible because adding new relationships can result in
wholesale changes to the existing structure, which in turn means all existing applications need to change
as well.
“Understanding the Hierarchical Database Model,” MariaDB KnowledgeBase. [Online]. Available:
https://mariadb.com/kb/en/library/understanding-the-hierarchical-database-model/. [Accessed: 30-
Jan-2018].

 Network Data Model


The network data model allows each child to have multiple parents instead of only allowing each
child to have one parent as in the hierarchical data model. This model calls the children members and the
parents owners. The network data model can be used when it is necessary to have a more flexible way of
representing objects and their relationships.
The main advantage of this model is that it handles more complex relationships like the many-to-
many relationship. Because this model does not allow a member to exist without an owner, the user must
first define the owner record and then the member record, thus ensuring the data integrity.
The whole database structure is very complicated and complex when inserting, deleting, and updating
records. Even though it is better with achieving data independence (isolating the programs from the
complex physical storage details), it still fails to achieve structural independence because if changes are
made to the database structure then all the application programs need to be modified before they can
access data.
D. Thakur, “Dinesh Thakur,” Computer Notes. [Online]. Available:
http://ecomputernotes.com/fundamental/what-is-a-database/network-model. [Accessed: 30-Jan-2018].

 Relational Data Model


Instead of relying on a parent-child or owner-member relationship, the relational model allows any
file to be related to any other by means of a common field. In such a database the data and relations
between them are organized into tables. A table is a collection of records and each record in a table
contains the same fields.
This reduces the complexity of the design because changes can be made to the database schema
without affecting the system's ability to access data, thus achieving structural independence. And because
access is from a direct relationship between files and not by means of paths to and from files, new
relations between these files can be added easily. Relational databases go hand-in-hand with the
development of SQL. The simplicity of SQL is a large part of the reason for the popularity of the
relational model.
The complexity of relational database systems can lead to difficulty sharing information from one
large system to another, thus creating "islands of information". Another drawback to relational databases
is due to advances in the complexity of information. Relational databases are made for organizing data by
common characteristics, but complex images, numbers, designs and multimedia products can defy easy
categorization.
“Disadvantages of a Relational Database,” Techwalla. [Online]. Available:
https://www.techwalla.com/articles/disadvantages-of-a-relational-database. [Accessed: 30-Jan-2018].

 Entity Relationship Model


The entity relationship model (or ER model) graphically represents the logical relationships of entities
(or objects) in order to create a database. In ER modeling, the structure for a database is portrayed as a
diagram, called an entity-relationship diagram (or ER diagram). Entities are displayed as points,
polygons, circles, or ovals and relationships are portrayed as lines connecting the points, polygons,
circles, or ovals.
With the entity relationship model, the relational representation of the model becomes relatively
straightforward and easy to understand. In addition, converting an ER Diagram to any other data model is
very easy.
Disadvantages stem from the fact that there is no industry standard notation for developing an ER
diagram; nor is there a data manipulation language.
“What is entity-relationship model (ERM or ER model)? - Definition from WhatIs.com,”
SearchSQLServer. [Online]. Available: http://searchsqlserver.techtarget.com/definition/entity-
relationship-model. [Accessed: 30-Jan-2018].

 Object Oriented Model


The object-oriented model (OOM) involves the “construction of objects using a collection of objects
that contain stored values of the instance variables found within an object” (Techopedia, 2018). Unlike
models that are record-oriented, object-oriented values are solely objects. This approach creates the union
of the application and database development and transforms it into a unified data model and language
environment.
Unlike the other database models, the object-oriented database model is capable of storing different
types of data, for example, pictures, voice, video, text, numbers and so on. Another advantage is that the
object-oriented query language is more expressive using navigational access instead of the associative
access of SQL.
Like the entity relationship model, OOM also suffers from a lack of a universally agreed data
model or a standard object-oriented query language. Because the use of this model is still relatively
limited, users lack the level of experience that they have with other database models.
“What is Object-Oriented Modeling (OOM)? - Definition from Techopedia,” Techopedia.com. [Online].
Available: https://www.techopedia.com/definition/28584/object-oriented-modeling-oom. [Accessed:
30-Jan-2018].

 NoSQL Model
NoSQL model is a non-relational database that stores and accesses data using key-values. A NoSQL
database stores each item individually with a unique key, instead of storing data in rows and columns like
the other database models. Additionally, a NoSQL database is more flexible than a relational database
since it does not require a structured schema that defines each table and the related columns.
NoSQL models provide an approach which has a less rigid structure that is ideal for capturing and
storing user generated content (UGC), such as text, images, audio files, videos, click streams, tweets, or
other data. While relational databases often become slower and more inefficient as they grow, NoSQL
databases are highly scalable, meaning hundreds of thousands of new records can be added to a NoSQL
database with a minimal decrease in performance.
NoSQL databases were created with the demands of the Web 2.0 modern-day web applications in
mind and most features are directed at meeting these demands. As a result, these databases offer fewer
features for analysis and query when the demands of a data app extend beyond the characteristic ‘insert-
read-update-delete’ cycle of a typical web app. NoSQL databases tend to be open-source, with just one or
two smaller startup firms handling support. Therefore, there is a lack of global support as compared to
established relational database vendors like Oracle, IBM and Microsoft.
“NoSQL,” NoSQL Definition. [Online]. Available: https://techterms.com/definition/nosql. [Accessed: 02-
Feb2018].

You might also like