Week 1 and 2 Getting Started With DBMS

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 50

IM 101

Fundamentals of Database
Systems

RIANNEL B. TECSON, MIS


Instructor

Welcome students…
Collaboration
divides the tasks
and
multiplies the success
Author Unknown
INTRODUCTION
• Course Orientation
• Schedule
• Requirements
• Class Rules
• Expectations

IM 101 Fundamentals of Database Systems


INTRODUCTION
• Student Profile
Provide the following information:
• COMPLETE NAME
• Year Level
• Area of Residence
• Contact No.
• Email Address
• Name of Guardian
• Learning Modality
• Resources
• Employment Status
Note: Information gathered will be CONFIDENTIAL and will be used for
academic purposes only

IM 101 Fundamentals of Database Systems


Course Orientation
Course Description
• Fundamentals of Database Systems

IM 101 Fundamentals of Database Systems


Course Orientation
Topics
• Introduction to Databases and Transactions
• Data Models
• Database Design, ER-Diagram and UML
• Relational Algebra
• Constraints, Views and SQL
• Transaction Management and Concurrency Control

IM 101 Fundamentals of Database Systems


Course Orientation
References:
• Database System and Concepts by A. Silberschatz
• Database Systems by Rob
Online:
• Any relevant sources
Software Tools:
• XAMPP/WAMP
Requirement:
• Computer or laptop

IM 101 Fundamentals of Database Systems


Course Orientation
Schedule
• Saturday
• Lecture: 7:00 AM – 9:00 AM
• Laboratory: 9:00 AM – 12:00NN

IM 101 Fundamentals of Database Systems


Course Orientation
Requirements
• Grading Systems
• Performance (Hands-on) : 25%
• Periodic Written Exams (Prelim & Final ) : 20%
• Quizzes : 15%
• Project / Terminals Output : 30%
• Class Participation / Recitation/Assignment : 10%

IM 101 Fundamentals of Database Systems


Course Orientation
• Class Rules
• Expectations

IM 101 Fundamentals of Database Systems


Getting started
with DBMS
• Introduction to Database Management System
• DBMS vs File System
• View of data
• Data models
• Database Languages: DML, DDL
• Database users and administrators
• Transaction Management
• Database System Structure
• Application architectures

The slides include:


• A DBMS is a collection of software programs that allows
a user to define data types, structures, constraints, store
data permanently, modify and delete the operations.
• DBMS is basically a software used to add, modify, delete,
select data from the database.
• In simpler words, DBMS is a collection of interrelated
data and software programs to access those data.

Introduction to Database
Management System
Bases DBMS Flat file system

Definition DBMS is a collection of interrelated data Flat file system stores data in a plain
and software programs to access those text file. Here, the records are specified
data. in a single line.

Data There is no problem of data redundancy. There is main problem of data


redundancy redundancy.
DBMS software are very costly and also
Cost regular update makes it costly. Flat file are cost effective.

Mostly, large organizations use DBMS


Use who can afford it and have a large Small organizations use it as it is cost
number of client and employees to be effective and who have to deal with
managed. small number of clients and
employees.
Views are created and an employees
Views can’t see all information available, hence Any information can be seen by
there is security. anyone, hence there is no security.

DBMS VS Flat file system


View level
View 1 View 2 View N

Conceptual
level Logical level

Internal
Physical level
level

Stored
database

Views of data
• It is a process of easy user interface to users by hiding
underlying complexities of data management from users.
• It defines views; which user can view which part.
• Database system provides users with abstract view of the
data.
• It only shows a part of database that a user needs.

Data abstraction
• It is the lowest level of abstractions and describes how
the data are stored on the storage disk and access
mechanisms to retrieve the data.
• DBMS developer is concerned with this level.
• This level emphasis on minimizing the number of disks
access so that data can be retrieved very fast.
• It describes complex low-level data structures in detail.

Physical Level
• This level describes what data are stored in the database
and the relationships between the data.
• It describes stored data in terms of the data model.
• It describes the database in terms of small number of
relatively simple structures.

Logical Level
• Every user don’t need to access all information stored in
the database.
• This level is basically concerned with dividing the
database according to the need of the database users.
• It simplifies the interaction of the users with the system.

View Level
• The basic design or the structure of the database is the
data model.
• It is a collection of conceptual tools for describing data,
data relationships, data semantics, and consistency
constraints.
• The basic structure of the database that organizes data,
defines how the data are stored and accessed, and the
relationships between the data, is the data model.

Data Model
• Hierarchical Model
• Network Model
• Entity-Relationship(E-R) Model
• Relational Model
• Object-Oriented Model
• Object-Relational Model

Types of database
models
• Data is represented as a tree.
• A record type can belong to only one owner type but a
owner type can belong to many record type.

Hierarchical Data Model


• It is modified version of Hierarchical Data Model where
it allows more general connections among the nodes as
well.
• They are difficult to use but are more flexible than
hierarchical databases.

Network Data Model


• It is a lower level model that uses a collection of tables to
represent both data and relationships among those data.
• Each table has multiple columns, depending on the
number of attributes, and each column has a unique
name.
Student
sid sname Standard
A-101 Ramesh 11
A-102 Kriti 10
A-103 Laxmi 12

Relational Model
• It is a high level model based on the need of the
organization.
• Its entities are distinguishable from other objects and
relationship is an association among several entities.

Student Borrows Books

sid sname standard bid author

E-R Model
• It represents entity sets as class and a class represents both
attributes and the behavior of the entity.
• Instance of a class is an object.
• The internal part of the object is not externally visible.
• One object communicates with the other by sending messages.

Object-Oriented Model
• It combines the feature of relational data model and
object-oriented data model.

Object-Relational Model
• Data Definition Language(DDL):
• Database language that is used to create, delete or modify
database schema is called DDL.
• It is used by Database Administrators(DBA) to specify the
conceptual schema.
• DDL interpreter converts DDL statements into equivalent
low level statements understood by the DBMS.
• Normally, create, alter, and drop statements are DDL
statements.
• DDL statements make changes in the schema

Database Languages
(DDL, DML)
Example: For create command Example: For drop command
create table Student drop Student;
(
sid char(4),
Example: For alter command
sname varchar(50),
alter table Student
standard integer ADD COLUMN address varchar(20)
); ;

DDL cont’d
• Database language that enables insert, update, delete, and
retrieval of data from the database is called Data
Manipulation Language.
• DML complier converts DML statements into equivalent
low level statements that the database understands.
• Normally, insert, update, delete, select are DML
commands.
• DML reflects change in the instance, not the schema

DML
Example: For insert Example: for update Example: for select
Insert into Student Update Student Select *
values(“A-101”, Set class = 11 From Student
“Ramesh”, 12); Where sid = “A-101”
; Example: For delete
Delete from standard
Where sname = “Kriti”
Note: In SQL, cases are insensitive. So, instead of Student one can write StUdEnT
as well.
Also, for integer values “12” is incorrect but 12 is correct.
And, for char and varchar “Kriti” is correct and Kriti is incorrect.

DML cont’d
• Users are distinguished by the way they interact with the
database system.
1. Naïve users:
• They interact with the system by invoking one of the
application programs written previously. Naive users are
bank teller, receptionist, etc.
• For e.g., bank teller needs to add Rs.90 to account Ram,
and deduct the same amount from account Sita. Then the
application program the bank teller uses is transfer.

Database users and


administrators
2. Application programmers:
They are specializes computer professionals who write the
application programs for naïve users and for easy user interface can
use an tools.
3. Sophisticated users:
They make request to the database with writing application
programs.
4. Specialized users:
They are experts who write database application like system storing
complex data types, CAD systems that do not fit to the traditional
data-processing framework.

Database users and


administrators cont’d
Database administrators:
DBA is a person who has control over data and the associated
application programs. He is the one who can define schema, install new
software, enforcing security to the system, etc.
Major responsibilities of DBA are:
1. Define schema and modify as per needed
2. Install new software for efficient operations
3. Enforcing and monitoring security
4. Analyzing the data stored in the DBMS
5. Keeping the backup of the DBMS periodically
6. Ensuring the state of the hardware and software

Database users and


administrators cont’d
• Collection of operations that form a single logical unit of
work are called transaction.
• Transaction management ensures that the database
system have ACID properties.

A = atomicity
C = consistency
I = isolation
D = durability

Transaction Management
1. Atomicity:
Atomic means whole. This property ensures that the
changes made to the database are wholly reflected or no
change is made. But partial changes or execution are not
made.
2. Consistency:
The database must move from one consistent state to
another after the execution of the transaction.

Properties of Transaction
Management (ACID property)
3. Isolation:
Even if many transaction may be done at the same time but
isolation ensures that if transaction A and B are executing
concurrently, then either A must execute first then B is
executed or, B must execute first then A is executed.
4. Durability:
Changes made to the database are permanent and even if
the system failure occurs, that don’t lead to the erase of the
transaction executed previously.

Properties of Transaction
Management (ACID property) cont’d
Database system structure
1. Storage Manager
2. Disk Storage
3. Query Processor

Its components are:


• Storage manager stores, retrieves, and updates data in the database. It
translates DML statements into low level statements that the database
understands
• Its components are:
• Authorization and integrity manager: It checks for the correctness of the
constraints specified and also checks the authenticity of the users while
entering the database.
• Transaction manager: It ensures that the database follows the ACID
property.
• File manager: It is responsible to manage allocation of space on the disk
storage.
• Buffer manager: It is responsible for fetching data from the disk storage
and to decide what data to cache in the main memory. It enables to handle
data sizes which are larger than the size of the disk.

1. Storage Manager
• It is responsible for allocating the disk space and also for
maintaining the data in the database.
• Its components are:
• Data files: It is the place where database is stored,
• Data dictionary: It stores metadata about the schema of the
database.
• Indices: It provides quick access to the data items that hold
particular values.

2. Disk Storage
• It simplifies and facilitates easy access to the data.
• It translates queries written in non-procedural language, and
operates the statement.
• Its components are:
• DDL interpreter: It interprets DDL statements into low-level
language understood by the system.
• DML compiler: It translates DML statements into an evaluation
plan consisting low level instructions that the query evaluation
engine understands.
• Query evaluation engine: It executes low level statements
generated by the DML compiler.

3. Query Processor
• In two tier architecture, user interface and application
programs are on the client side and query and transaction
facility are on the server side
• When DBMS access is required, the application program
establishes connection with client and server
• Client queries and server provides response to the
authenticated client request/queries.
• There is direct interaction of client with the server
• The business logic coupled with either client side or the
server side.

Two-tier architecture
Two Tier architecture
ADVANTAGES DISADVANTAGES

• Suitable for • Useless for large


environments where scale organizations
business rules do not • Only a limited
change frequently number of clients
• number of users are can access
limited

Advantages
Disadvantages
• In three tier architecture, user interface and application programs
are on the client side and query and transaction facility are on the
server side and in between there is an intermediate layer which
stores business rules(procedures/constraints) used to access data
from the database.
• When DBMS access is required, the application program
establishes connection with client and server but before forwarding
the request of client, application rules check the client credentials.
• There is indirect interaction of client with the server but direct
connection of client and application rules and application rules and
the server.

Three Tier Architecture


Three Tier Architecture
ADVANTAGES DISADVANTAGES

• Efficiency • More complex


• Security structure
• Scalability • More difficult to
• Flexible setup and maintain
• Expensive

Advantages
Disadvantages
• Instance: The collection of information currently stored
in the database at the particular period.
• Schema: The overall design of the database that is not
expected to change frequently.
• Mapping:
• Metadata: Data about data.
• Data dictionary: A special file that stores metadata.
• Methods: Values and bodies of codes that the object
contains.

Common terms used in


DBMS
God Bless!
and
Keep Safe ALWAYS....

You might also like