[go: up one dir, main page]

0% found this document useful (0 votes)
23 views25 pages

Lecture 4 - Database Models 22 March

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1/ 25

DATABASE MODELS

HIRA FAYYAZ
LECTURE 4
WHAT IS DATA MODEL?

• Data Model gives us an idea that how the final system will
look like after its complete implementation. It defines the
data elements and the relationships between the data
elements. Data Models are used to show how data is
stored, connected, accessed and updated in the database
management system. Here, we use a set of symbols and
text to represent the information so that members of the
organization can communicate and understand it. Though
there are many data models being used nowadays but the
Relational model is the most widely used model.
COMMON DATA MODELS

1.Hierarchical Model
2.Network Model
3.Entity-Relationship Model
4.Relational Model
5.Object-Oriented Data Model
6.Object-Relational Data Model
7.Flat Data Model
8.Semi-Structured Data Model
9.Associative Data Model
10.Context Data Model
Hierarchical Model

• Hierarchical Model was the first DBMS model. This model


organises the data in the hierarchical tree structure. The
hierarchy starts from the root which has root data and then
it expands in the form of a tree adding child node to the
parent node. This model easily represents some of the real-
world relationships like food recipes, sitemap of a website
etc. Example: We can represent the relationship between
the shoes present on a shopping website in the following
way:
Hierarchical Model
Features of a Hierarchical Model

• One-to-many relationship: The data here is organised in a tree-like


structure where the one-to-many relationship is between the datatypes.
Also, there can be only one path from parent to any node. Example: In
the above example, if we want to go to the node sneakers we only have
one path to reach there i.e through men's shoes node.
• Parent-Child Relationship: Each child node has a parent node but a
parent node can have more than one child node. Multiple parents are
not allowed.
• Deletion Problem: If a parent node is deleted then the child node is
automatically deleted.
• Pointers: Pointers are used to link the parent node with the child
node and are used to navigate between the stored data. Example: In
the above example the 'shoes' node points to the two other nodes
'women shoes' node and 'men's shoes' node.
Advantages of Hierarchal Model

• It is very simple and fast to traverse through a tree-like


structure.
• Any change in the parent node is automatically reflected in
the child node so, the integrity of data is maintained
Disadvantages of Hierarchal Model

• Complex relationships are not supported.


• As it does not support more than one parent of the child
node so if we have some complex relationship where a
child node needs to have two parent node then that can't
be represented using this model.
• If a parent node is deleted then the child node is
automatically deleted
NETWORK MODEL

• This model is an extension of the hierarchical model. It was


the most popular model before the relational model. This
model is the same as the hierarchical model, the only
difference is that a record can have more than one parent.
It replaces the hierarchical tree with a graph. Example: In
the example below we can see that node student has two
parents i.e. CSE Department and Library. This was earlier
not possible in the hierarchical model.
NETWORK MODEL
FEATURES OF NETWORK MODEL

1.Ability to Merge more Relationships: In this model, as


there are more relationships so data is more related. This
model has the ability to manage one-to-one relationships as
well as many-to-many relationships.
2.Many paths: As there are more relationships so there can
be more than one path to the same record. This makes data
access fast and simple.
3.Circular Linked List: The operations on the network model
are done with the help of the circular linked list. The current
position is maintained with the help of a program and this
position navigates through the records according to the
relationship.
ADVANTAGES OF NETWORK MODEL

• The data can be accessed faster as compared to the


hierarchical model. This is because the data is more related
in the network model and there can be more than one path
to reach a particular node. So the data can be accessed in
many ways.
• As there is a parent-child relationship so data integrity is
present. Any change in parent record is reflected in the
child record.
DISADVANTAGES OF NETWORK MODEL

• As more and more relationships need to be handled the


system might get complex. So, a user must be having
detailed knowledge of the model to work with the model.
• Any change like updation, deletion, insertion is very
complex.
Entity-Relationship Model

• Entity-Relationship Model or simply ER Model is a high-level


data model diagram. In this model, we represent the real-
world problem in the pictorial form to make it easy for the
stakeholders to understand. It is also very easy for the
developers to understand the system by just looking at the
ER diagram. We use the ER diagram as a visual tool to
represent an ER Model. ER diagram has the following three
components:
Entity-Relationship Model

• Entities: Entity is a real-world thing. It can be a person,


place, or even a concept. Example: Teachers, Students,
Course, Building, Department, etc are some of the entities
of a School Management System.
• Attributes: An entity contains a real-world property called
attribute. This is the characteristics of that attribute.
Example: The entity teacher has the property like teacher
id, salary, age, etc.
• Relationship: Relationship tells how two attributes are
related. Example: Teacher works for a department.
Entity-Relationship Model
Advantages of Entity-Relationship
Model

• Simple: Conceptually ER Model is very easy to build. If we


know the relationship between the attributes and the
entities we can easily build the ER Diagram for the model.
• Effective Communication Tool: This model is used widely by
the database designers for communicating their ideas.
• Easy Conversion to any Model: This model maps well to the
relational model and can be easily converted relational
model by converting the ER model to the table. This model
can also be converted to any other model like network
model, hierarchical model etc
Disadvantages of Entity-
Relationship Model

• No industry standard for notation: There is no industry


standard for developing an ER model. So one developer
might use notations which are not understood by other
developers.
• Hidden information: Some information might be lost or
hidden in the ER model. As it is a high-level view so there
are chances that some details of information might be
hidden.
Relational Model

• Relational Model is the most widely used model. In this


model, the data is maintained in the form of a two-
dimensional table. All the information is stored in the form
of row and columns. The basic structure of a relational
model is tables. So, the tables are also called relations in
the relational model. Example: In this example, we have
an Employee table.
Relational Model
Features of Relational Model

• Tuples: Each row in the table is called tuple. A row contains


all the information about any instance of the object. In the
above example, each row has all the information about any
specific individual like the first row has information about
John.
• Attribute or field: Attributes are the property which
defines the table or relation. The values of the attribute
should be from the same domain. In the above example,
we have different attributes of the employee like Salary,
Mobile_no, etc.
Advantages of Relational Model

• Simple: This model is more simple as compared to the


network and hierarchical model.
• Scalable: This model can be easily scaled as we can add
as many rows and columns we want.
• Structural Independence: We can make changes in
database structure without changing the way to access the
data. When we can make changes to the database
structure without affecting the capability to DBMS to access
the data we can say that structural independence has been
achieved.
Disadvantages of Relational Model

• Hardware Overheads: For hiding the complexities and


making things easier for the user this model requires more
powerful hardware computers and data storage devices.
• Bad Design: As the relational model is very easy to design
and use. So the users don't need to know how the data is
stored in order to access it. This ease of design can lead to
the development of a poor database which would slow
down if the database grows.
Object-Oriented Data Model

• The real-world problems are more closely represented


through the object-oriented data model. In this model, both
the data and relationship are present in a single structure
known as an object. We can store audio, video, images, etc
in the database which was not possible in the relational
model(although you can store audio and video in relational
database, it is adviced not to store in the relational
database). In this model, two are more objects are
connected through links. We use this link to relate one
object to other objects. This can be understood by the
example given below
Object-Oriented Data Model

You might also like