0% found this document useful (0 votes)
19 views23 pages

Lecture W1 Introduction

Uploaded by

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

Lecture W1 Introduction

Uploaded by

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

Advanced Database Management

System

Introduction to DBMS
Class Goals

•Motivation for the studies of DBMS

•Provide the course outline


Course Information
• Course Name: MICT 1203: Advanced Database Management System
• Credit: 3
• Lecture Day & Time:
 Friday : 09:30 to 12:30
• Textbook :
 Database System Concepts BY Abraham Silberschatz, Henry F.
Korth, and S. Sudarshan
• Reference book :
 Database Systems: The Complete Book BY Hector Garcia-Molina,
Jeffrey Ullman, and Jennifer Widom

• Other Reading Materials: Research articles and (other) book chapter

3
What the class will look like
• Lectures
• Readings (articles and book chapters)
• Assignments
• Class Test
• Practical case study

Lecture Sessions will be Interactive !


Device-free – for your own
sake!
Course Objective

To provide a comprehensive understanding of database


management systems, with a focus on the efficient and
effective organization, maintenance, and retrieval of
information from a DBMS.

5
Course Objective
Learning Outcomes:
– Describe the fundamental elements of relational database management
systems
– Explain the basic concepts of relational data model, entity-relationship model,
relational database design, relational algebra and SQL.
– Design ER-models to represent simple database application scenarios

– Convert the ER-model to relational tables, populate relational database and


formulate SQL queries on data.
– Improve the database design by normalization.

– Familiar with basic database storage structures and access techniques: file and
page organizations, indexing methods including B tree, and hashing.
6
Course Evaluation
Weightage
Remarks
Distribution
Final Exam 50%
Mid-term 20%

Class Test* (n + 1, n is the credit hour) 10%

Project paper/Assignments /Term Paper


10%
(Individual) including Presentation
Class attendance 10%
Total: 100%

A/A +
Intro to Advanced DBMS

Any Questions !
Database Management System (DBMS)

• Collection of interrelated data

• Set of programs to access the data

• DBMS contains information about a particular enterprise

• DBMS provides an environment that is both convenient and efficient


to use

DATA  DATABASE  DBMS  DBS


(any fact)
(collection of related data)
(set of programs for define, construct and manage)
(combination of database and DBMS)
Database Management System (DBMS)

• Database Applications:
– Banking: all transactions
– Airlines: reservations, schedules
– Universities: registration, grades
– Sales: customers, products, purchases
– Manufacturing: production, inventory, orders, supply
chain
– Human resources: employee records, salaries, tax
deductions
• Databases touch all aspects of our lives
Purpose of Database System

• In the early days, database applications were built on top of


file systems
• Drawbacks of using file systems to store data:
– Data redundancy and inconsistency
• Multiple file formats, several application program, duplication of
information in different files, redundancy
– Difficulty in accessing data
• Need to write a new program to carry out each new task, no anticipation
about query
– Data isolation — multiple files and formats
– Integrity problems
• Integrity constraints (e.g. account balance > 0) become part of program
code
• Hard to add new constraints or change existing ones
Purpose of Database Systems (Cont.)

• Drawbacks of using file systems (cont.)


– Atomicity of updates
• Failures may leave database in an inconsistent state with partial updates
carried out
• E.g. transfer of funds from one account to another should either
complete or not happen at all
– Concurrent access by multiple users
• Concurrent accessed needed for performance
• Uncontrolled concurrent accesses can lead to inconsistencies
– E.g. two people reading a balance and updating it at the same time
– Security problems

• Database systems offer solutions to all the above


problems
Purpose of Database Systems (Cont.)

Data Isolation
Let's consider an example of data isolation in a database system:

•Suppose we have a database table called "Employees" that stores employee


records. Multiple transactions can access and modify this table simultaneously.

Transaction A:
– Reads the employee record for employee ID 100.
– Modifies the salary of the employee.
Transaction B:
– Reads the employee record for employee ID 100.
– Modifies the job title of the employee.
•In this scenario, data isolation ensures that Transaction A and Transaction B do
not interfere with each other and maintain the integrity of the data.
Purpose of Database Systems (Cont.)

Data Isolation
•With proper data isolation mechanisms in place, the following can occur:
a) Transaction A reads the employee record for employee ID 100 and retrieves the current salary.
b) Transaction B reads the employee record for employee ID 100 and retrieves the current job
title.
c) Transaction A modifies the salary without being affected by any changes made by Transaction
B.
d) Transaction B modifies the job title without being affected by any changes made by Transaction
A.

•Data isolation guarantees that each transaction operates independently and does not
see the modifications made by other transactions until the changes are committed.
This prevents conflicts, inconsistencies, and ensures that the data remains accurate
and reliable even in a concurrent access environment.
Components of DBMS

• User: Application programmers, end users, database


administrator
• Software: Controls the organization, storage, management,
and retrieval of data in database
• Hardware: HW of a software system can range from PC to a
network of components and it also includes storage devices
like hard disk, I/O devices like monitor.
• Data: Any fact that store in the database. It could be
numerical, non numerical and logical.

USERS ↔ S/W ↔ H/W ↔ DATA


View of Data

• A DBS is a collection of interrelated data and a set of


programs that allow users to access and modify these data.
• A major purpose of a database system is to provide users
with an abstract view of the data
• The system hides certain details of how the data are stored
and maintained
• For the system to be usable (to users), it must retrieve data
efficiently.
• Since many database system users are not computer
trained, developers hide the complexity from users through
several level of abstraction, to simplify users’ interactions
with the system.
Levels of Abstraction
• Physical level
– Lowest level of data abstraction
– Describes how the data are accurately stored
– It describe complex low level data structures in detail.

• Logical level
– Next-higher level of data abstraction
– Describes what data stored in the database and what relationships exist
among those data.
– Describe the entire database in terms of a small number of relatively
simple structures
– Database administrator use the logical level of abstraction to decide what
information to keep in the database.
Levels of Abstraction
• View level
– The highest level of abstraction
– Describes only part of the entire database.
– It exists to simplify the users interactions with the system
– Hide details of data types (complex data structure).
– Views can also hide information (e.g., salary) for security purposes.
– A system may provide many views for the same database
Levels of Abstraction

type customer = record


name : string;
street : string;
city : integer;
end;
View of Data
• Three levels of data abstraction
• An architecture for a database system
View of Data
An example - Aa university
database
1. Physical Level: At the physical level, the DBMS deals
with the actual storage and retrieval of data on the physical
media, such as hard drives or solid-state drives. For
example, the university database may have tables stored
on disk in a specific file format, with data arranged in blocks
or pages.
2. Logical Level: At the logical level, the DBMS focuses on
describing the overall structure and organization of the
database. It defines the logical relationships between
different entities and provides a high-level view of the data.
In our university database example, the logical level might
include tables like "Students," "Courses," and "Professors,"
along with their attributes and relationships.
View of Data
An example - Aa university
database
3. View Level: The view level represents customized or tailored
views of the data for specific user groups or applications. Different
users may have different perspectives or requirements for accessing
the data. For instance, the administrative staff might have a view
that includes student records and their contact details, while
professors may have a view that focuses on course enrollments and
grades.

Through the levels of abstraction, the DBMS separates the physical


implementation details from the logical structure of the data, and
further separates the logical view from the specific requirements of
different user groups. This abstraction enables flexibility, security, and
efficient data management within the database system.
Instances and Schemas
• Similar to types and variables in programming languages
• Schema – the logical structure of the database
– e.g., the database consists of information about a set of customers and
accounts and the relationship between them
– Analogous to type information of a variable in a program

• Instance – the actual content of the database at a particular point in time


– Analogous to the value of a variable

• Physical Data Independence – the ability to modify the physical schema


without changing the logical schema. It allows modifications to the
underlying storage structures, such as file formats, indexes, or storage
devices, without requiring changes to the logical or application layer that
interacts with the data.
– Applications depend on the logical schema

You might also like