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

DBMS Lecture 4

Lecture

Uploaded by

raj121.hawk
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

DBMS Lecture 4

Lecture

Uploaded by

raj121.hawk
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

Database Management System

(TCS 503)
Lecture- 4
B. Tech- CSE
3rd Year (5th semester)

REHAN, Assistant Professor


+91-9548283808
Classification of Database
Management Systems
Classification of Database
Management Systems
• There are several types of database management
systems that are commonly used in the industry.
Each type has its own strengths and weaknesses,
and choosing the right type depends on the
specific needs of the organization.

– Relational Database Management Systems


– Hierarchical Database Management Systems
– Network Database Management Systems
– Object-Oriented Database Management Systems
• Relational databases are the most common type of
database management system. They are based on the
relational model, which organizes data into tables with
rows and columns.

• Hierarchical databases organize data in a tree-like structure,


with each record having one parent and multiple children.

• Network databases are similar to hierarchical databases,


but they allow records to have multiple parents.

• Object-oriented databases store data as objects, which


contain both data and the methods used to manipulate the
data.
RDBMS
• A relational database management systems is a type of database
management system that stores and manages data in a tabular form.

• It uses a structured query language (SQL) to manipulate the data in the


tables. The data is organized into tables, with each table consisting of
rows and columns.

• The columns represent the attributes or characteristics of the data,


while the rows represent the individual records or instances of the
data.

• One of the main advantages of using an RDBMS is its ability to enforce


data integrity and consistency through the use of constraints such as
primary keys, foreign keys, and unique constraints.
• In an RDBMS, data is stored in tables that are related to each
other through common attributes or fields. For example, a
customer table may be related to an orders table through a
common customer ID field. This allows for efficient querying
of the data using SQL, which can retrieve data from multiple
tables at once.

• Another advantage of using an RDBMS is its ability to handle


complex transactions involving multiple tables, ensuring that
all changes are made atomically and consistently.

• However, one disadvantage is that it can be slower than other


types of databases when dealing with large amounts of
unstructured data.
Hierarchical Database Management
Systems
• A hierarchical database management system is a type
of database management system that organizes data in
a tree-like structure.

• In this structure, each record has a parent and one or


more children, with the exception of the root record,
which has no parent.

• This type of system is best suited for applications


where data is naturally organized in a hierarchical
manner, such as file systems or organizational charts.
• One advantage of using a hierarchical database
management system is that it can be very efficient
when dealing with large amounts of data that have
a clear hierarchy.

• However, one disadvantage is that it can be difficult


to modify the structure of the database once it has
been established.
Network Database Management
Systems
• A network database management system (NDBMS) is a
type of database management system that stores data
in a network model. This means that data is organized
into records, which are connected to one another
through relationships.

• Each record can have multiple parent and child records,


creating a complex web-like structure. NDBMSs are
often used in large-scale applications where data needs
to be accessed quickly and efficiently.
• One advantage of using an NDBMS is its ability to
handle complex relationships between data.
Because records can have multiple parents and
children, it is easier to represent complex
relationships than with other types of database
management systems.

• However, one disadvantage of using an NDBMS is


its complexity. The network model can be difficult
to understand and manage, making it challenging
for developers and administrators to work with.
Object-Oriented Database
Management Systems
• An object-oriented database management system
(OODBMS) is a type of database management
system that uses an object-oriented data model.

• In this model, data is represented as objects,


which can contain attributes and methods. The
main advantage of using an OODBMS is that it
allows for more natural representation of
complex data structures. This makes it easier to
work with data that has many-to-many
relationships or hierarchical structures.
Comparison of Database Management
Systems
• Relational database management systems (RDBMS) are
the most widely used type of database management
system. They use a table-based structure to store data
and are best suited for applications that require
complex queries and transactions.

• Hierarchical database management systems (HDBMS)


are structured like a tree, with each record having only
one parent. They are best suited for applications that
require fast read and write access to large amounts of
data.
Comparison of Database Management
Systems (CONTINUED)
• Network database management systems (NDBMS) are
similar to hierarchical databases, but they allow
records to have multiple parents. They are best suited
for applications that require complex relationships
between data.

• Object-oriented database management systems


(OODBMS) store data as objects, which can contain
both data and procedures. They are best suited for
applications that require complex data structures and
support for object-oriented programming languages.
A database model is a way of organizing data in a database. There are
several types of database models, each with its own advantages and
disadvantages. The most common database models include the
relational model, the hierarchical model, the network model, and the
object-oriented model.
SQL
• Structured Query Language, commonly known as SQL,
is a programming language used to manage and
manipulate data in a relational database. SQL allows
users to insert, update, delete, and retrieve data from a
database in an efficient and organized manner.

• SQL queries are used to perform actions on a database,


such as retrieving specific data or updating existing
data.
– Overall, SQL is a powerful tool for managing and
manipulating data in a relational database, and its
versatility makes it a valuable skill for anyone working with
databases.
Database Design
• Considerations that need to be taken into
account include scalability, performance,
security, and ease of use.

• The goal is to create a database that meets


the needs of the organization while also being
easy to maintain and update.
Normalization

• Normalization is the process of organizing data in


a database to reduce redundancy and improve
data integrity.

• It involves breaking down a large table into


smaller tables that are related to each other
through common fields. Normalization ensures
that each piece of data is stored only once, which
reduces the risk of inconsistencies and errors in
the data.
• There are several levels of normalization, with each level
building on the previous one.

– For example, first normal form (1NF) requires that each table
have a primary key and that each column contain atomic values.
– Second normal form (2NF) requires that every non-key attribute
be fully dependent on the primary key.
– Third normal form (3NF) requires that every non-key attribute
be dependent only on the primary key and not on any other
non-key attributes.

• By following these normalization rules, one can create a


well-structured database that is easy to maintain and
update.
Data Integrity
• There are several ways to ensure data integrity in
a database.
– One way is to use constraints, such as unique
constraints, primary key constraints, and foreign key
constraints.
– These constraints ensure that data is entered correctly
and that there are no duplicate entries.
– Another way to ensure data integrity is through
validation checks, which verify that the data entered
meets certain criteria.
• For example, a validation check could ensure that a date
entered is within a certain range or that an email address
entered is in a valid format.
Database Security
• Database security is a critical aspect of database
management systems. It involves protecting the data stored
in a database from unauthorized access, modification, and
destruction.
– Authentication and Authorization
• Authentication mechanisms aim to answer the question, "Who are
you?“ Authorization mechanisms aim to answer the question, "What
are you allowed to do?"

• There are several measures that can be taken to ensure the


security of a database, including implementing access
controls, encrypting sensitive data, regularly backing up
data, and monitoring database activity for suspicious
behavior
Database Management System Trends
• Cloud-based database management systems are becoming
increasingly popular due to their flexibility and scalability. With
cloud-based systems, data can be accessed from anywhere at any
time, making it easier for businesses to manage their data and
collaborate with others. In addition, cloud-based systems often
have lower upfront costs and require less maintenance than
traditional on-premise systems.

• NoSQL databases are another trend in database management


systems. These databases are designed to handle unstructured
data, such as social media posts and sensor data, which traditional
relational databases struggle to manage. NoSQL databases are
often used in big data applications, where large volumes of data
need to be processed quickly.
Real-World Applications of Database
Management Systems
• Database management systems are used in a wide variety of real-
world applications, from e-commerce websites to healthcare
systems. One common use of database management systems is in
e-commerce websites, where they are used to store customer
information, product data, and transaction details. This allows
businesses to efficiently manage their inventory, process orders,
and track customer behavior.

• Social media platforms also rely heavily on database management


systems to store user profiles, posts, and interactions. These
systems allow for quick and easy retrieval of data, which is essential
for providing users with personalized content and
recommendations. In the healthcare industry, database
management systems are used to store patient records, medical
histories, and treatment plans. This helps healthcare providers to
deliver more accurate diagnoses and treatments, while also
ensuring the privacy and security of patient data.
Challenges of Database Management
Systems
• Managing a database management system can come with its fair
share of challenges.
– One of the biggest challenges is ensuring data security. With sensitive
information stored in databases, it's important to have measures in
place to prevent unauthorized access and protect against cyber
attacks. This can include implementing strong passwords, encryption,
and firewalls.

• Another challenge is maintaining data integrity.


– This means ensuring that the data in the database is accurate,
consistent, and reliable. To address this challenge, regular backups and
data validation checks can be performed. Additionally, having clear
data entry guidelines and training for employees can help prevent
errors and inconsistencies.
Components
• A database management system (DBMS) consists
of several components. Each component plays
very important role in the database management
system environment. The major components of
database management system are:
• Software
• Hardware
• Data
• Procedures
• Users (Application Programmers, DBA, End Users)
Data Dictionary
• A data dictionary is a centralized repository of
information about data such as meaning,
relationships to other data, origin, usage, and
format. A data dictionary is used in the
development of a relational database system.

• A data dictionary stores metadata that defines


and describes data so that it can be easily
understood by anyone who would like to use it or
analyze it at a later date.
References
• Garcia-Molina, H., Ullman, J. D., & Widom, J.
(2009). Database systems: The complete book
(2nd ed.). Upper Saddle River, NJ: Prentice
Hall.

• Elmasri, R., & Navathe, S. B. (2010).


Fundamentals of database systems (6th ed.).
Boston: Pearson.

You might also like