0% found this document useful (0 votes)
6 views30 pages

1.1 Introduction To DBMS-basics of DBMS

The document provides an overview of Database Management Systems (DBMS), highlighting their importance in managing interrelated data for various applications such as banking, airlines, and universities. It discusses the drawbacks of traditional file systems, including data redundancy and inconsistency, and outlines the advantages of using DBMS, such as improved data integrity, security, and concurrency control. Additionally, it covers different database models, including hierarchical, network, relational, and object-oriented models, as well as the architecture and roles within a DBMS environment.

Uploaded by

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

1.1 Introduction To DBMS-basics of DBMS

The document provides an overview of Database Management Systems (DBMS), highlighting their importance in managing interrelated data for various applications such as banking, airlines, and universities. It discusses the drawbacks of traditional file systems, including data redundancy and inconsistency, and outlines the advantages of using DBMS, such as improved data integrity, security, and concurrency control. Additionally, it covers different database models, including hierarchical, network, relational, and object-oriented models, as well as the architecture and roles within a DBMS environment.

Uploaded by

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

Introduction to Database Management

Basics of Database

Database System Concepts, 6th Ed.


©Silberschatz, Korth and Sudarshan
See www.db-book.com for conditions on re-use
Database Management System (DBMS)
● DBMS contains information about a particular enterprise
● Collection of interrelated data
● Set of programs to access the data
● An environment that is both convenient and efficient to use
● Database Applications:
● Banking: transactions
● Airlines: reservations, schedules
● Universities: registration, grades
● Sales: customers, products, purchases
● Online retailers: order tracking, customized recommendations
● Manufacturing: production, inventory, orders, supply chain
● Human resources: employee records, salaries, tax deductions
● Databases can be very large.
● Databases touch all aspects of our lives

Database System Concepts - 6th Edition 1.2 ©Silberschatz, Korth and Sudarshan
University Database Example
● Application program examples
● Add new students, instructors, and courses
● Register students for courses, and generate class rosters
● Assign grades to students, compute grade point averages (GPA) and
generate transcripts
● In the early days, database applications were built directly on top of file
systems

Database System Concepts - 6th Edition 1.3 ©Silberschatz, Korth and Sudarshan
Drawbacks of using file systems to store data

● Data redundancy and inconsistency


● Multiple file formats, duplication of information in different files
● Difficulty in accessing data
● Need to write a new program to carry out each new task
● Data isolation
● Multiple files and formats
● Integrity problems
● Integrity constraints (e.g., account balance > 0) become “buried” in
program code rather than being stated explicitly
● Hard to add new constraints or change existing ones

Database System Concepts - 6th Edition 1.4 ©Silberschatz, Korth and Sudarshan
Drawbacks of using file systems to store data (Cont.)
● Atomicity of updates
● Failures may leave database in an inconsistent state with partial updates
carried out
● Example: Transfer of funds from one account to another should either
complete or not happen at all
● Concurrent access by multiple users
● Concurrent access needed for performance
● Uncontrolled concurrent accesses can lead to inconsistencies
Example: Two people reading a balance (say 100) and updating it by
withdrawing money (say 50 each) at the same time
● Security problems
● Hard to provide user access to some, but not all, data

Database systems offer solutions to all the above problems

Database System Concepts - 6th Edition 1.5 ©Silberschatz, Korth and Sudarshan
Levels of Abstraction
● Physical level: describes how a record (e.g., instructor) is stored.
● Logical level: describes data stored in database, and the relationships among
the data.
type instructor = record
ID : string;
name : string;
dept_name : string;
salary : integer;
end;
● View level: application programs hide details of data types. Views can also
hide information (such as an employee’s salary) for security purposes.

Database System Concepts - 6th Edition 1.6 ©Silberschatz, Korth and Sudarshan
View of Data

An architecture for a database system

Database System Concepts - 6th Edition 1.7 ©Silberschatz, Korth and Sudarshan
DBMS Environment
● Hardware
● Client-server architecture
● Software
● dbms, os, network, application
● Data
● Schema, subschema, table, attribute
● People
● Data administrator & database administrator
● Database designer: logical & physical
● Application programmer
● End-user: naive & sophisticated
● Procedure
● Start, stop, log on, log off, back up, recovery

Database System Concepts - 6th Edition 1.8 ©Silberschatz, Korth and Sudarshan
Instances and Schemas
● Similar to types and variables in programming languages
Logical Schema – the overall logical structure of the database
● Example: The database consists of information about a set of customers
and accounts in a bank and the relationship between them
Physical schema– the overall physical structure of the database

Instance – the actual content of the database at a particular point in time. E.g.
value of a variable

Physical Data Independence – the ability to modify the physical schema


without changing the logical schema
● Applications depend on the logical schema
● In general, the interfaces between the various levels and components
should be well defined so that changes in some parts do not seriously
influence others.

Database System Concepts - 6th Edition 1.9 ©Silberschatz, Korth and Sudarshan
Hierarchical Model
● Data is organized into a tree-like-structure
● a single root, to which all the other data is linked.
● adding child nodes to the parent nodes.
● a child node will only have a single parent node.
● data is organized into tree-like structure with one-to-many relationship
between two different types of data
E.g. one department can have many courses, many professors and of-course
many students.

Database System Concepts - 6th Edition 1.10 ©Silberschatz, Korth and Sudarshan
Network Model
● Extension of the Hierarchical model.
● Data is organized more like a graph, and are allowed to have more than one
parent node.
● Data is more related as more relationships are established
● Accessing the data is also easier and fast.
● Map many-to-many data relationships.
● Most widely used database model, before Relational Model was introduced.

Database System Concepts - 6th Edition 1.11 ©Silberschatz, Korth and Sudarshan
Relational Model
● set of relations (table of values).
● Each relation has columns (attributes) and rows(Tuples)

Database System Concepts - 6th Edition 1.12 ©Silberschatz, Korth and Sudarshan
Relational Model Example

Database System Concepts - 6th Edition 1.13 ©Silberschatz, Korth and Sudarshan
Object Oriented Model
● Real world situations are represented as objects, with different attributes.
● All these object have multiple relationships between them.

Elements of Object oriented data model


● Objects:- The real world entities and situations are represented as
objects in the Object oriented database model.
● Attributes and Method:- Every object has certain characteristics. These
are represented using Attributes. The behavior of the objects is
represented using Methods.
● Class:- Similar attributes and methods are grouped together using a
class. An object can be called as an instance of the class.
● Inheritance:- A new class can be derived from the original class. The
derived class contains attributes and methods of the original class as well
as its own.

Database System Concepts - 6th Edition 1.14 ©Silberschatz, Korth and Sudarshan
Object Oriented Model
● Example

● Objects : Circle, Rectangle and Triangle


● Class: Shape
● Attributes : Center and Radius : Circle etc.
● The objects Circle, Rectangle and Triangle inherit from the object Shape.

Database System Concepts - 6th Edition 1.15 ©Silberschatz, Korth and Sudarshan
Object-Relational Data Models

● Relational model: flat, “atomic” values


● Object Relational Data Models
● Extend the relational data model by including object orientation and
constructs to deal with added data types.
● Allow attributes of tuples to have complex types, including non-atomic
values such as nested relations.
● Preserve relational foundations, in particular the declarative access to
data, while extending modeling power.
● Provide upward compatibility with existing relational languages.

Database System Concepts - 6th Edition 1.16 ©Silberschatz, Korth and Sudarshan
Object Relational Model
● Combination of a Object oriented database model and a Relational database model.
● Supports objects, classes, inheritance etc. just like Object Oriented models and has
support for data types, tabular structures etc. like Relational data model.
● Advantages
● Inheritance : allows its users to inherit objects, tables etc. to extend their
functionality. Inherited objects contains new attributes as well as the attributes
that were inherited.
● Complex Data Types : Formed using existing data types. This is useful in Object
relational data model as complex data types allow better manipulation of the data.
● Extensibility : The functionality can be extended using complex data types as
well as advanced concepts of object oriented model such as inheritance.
● Disadvantages
● Complicated and difficult to handle

Database System Concepts - 6th Edition 1.17 ©Silberschatz, Korth and Sudarshan
Language: SQL
● SQL stands for Structured Query Language
● The most widely used commercial language
● To be able to compute complex functions
● SQL is usually embedded in some higher-level language
● Application programs generally access databases through one of
● Language extensions to allow embedded SQL
● Application program interface (e.g., ODBC/JDBC) which allow SQL
queries to be sent to a database

Database System Concepts - 6th Edition 1.18 ©Silberschatz, Korth and Sudarshan
Data Definition Language (DDL)
● Specification notation for defining the database schema
Example: create table instructor {
ID char(5),
name varchar(20),
dept_name varchar(20),
salary numeric(8,2) };
● DDL compiler generates a set of table templates stored in a data dictionary
● Data dictionary contains metadata (i.e., data about data)
● Database schema
● Integrity constraints
● Primary key (ID uniquely identifies instructors)
● Authorization (Who can access what)

Database System Concepts - 6th Edition 1.19 ©Silberschatz, Korth and Sudarshan
Data Manipulation Language (DML)
● Language for accessing and manipulating the data organized by the
appropriate data model
● DML also known as query language
● Two classes of languages
● Pure – used for proving properties about computational power
and for optimization
● Commercial – used in commercial systems
▪ SQL is the most widely used as commercial language

Database System Concepts - 6th Edition 1.20 ©Silberschatz, Korth and Sudarshan
XML: Extensible Markup Language
● Defined by the WWW Consortium (W3C)
● Originally intended as a document markup language not a database
language
● The ability to specify new tags, and to create nested tag structures made
XML a great way to exchange data, not just documents
● XML has become the basis for all new generation data interchange
formats.
● A wide variety of tools is available for parsing, browsing and querying
XML documents/data

Database System Concepts - 6th Edition 1.21 ©Silberschatz, Korth and Sudarshan
Database Users and Administrators

Database

Database System Concepts - 6th Edition 1.22 ©Silberschatz, Korth and Sudarshan
Database System Internals

Database System Concepts - 6th Edition 1.23 ©Silberschatz, Korth and Sudarshan
Database Administrator - Duties
● Schema Definition
● Creates the original database schema using DDL statements
● Storage structure and access method definition
● Schema and physical organization modification
● Granting of authorization for data access
● Which parts of the database various users can access
● This information is consulted for granting information whenever
someone attempts to access data in the system
● Routine maintenance
● Periodically backup of database onto tapes, remote servers
● To prevent data loss in case of disasters such as flooding
● Ensures enough free disk space is available for normal operations and
upgrading disk space as required
● Monitoring jobs running on the database and ensuring that
performance is not degraded by very expensive tasks submitted by some
users
Database System Concepts - 6th Edition 1.24 ©Silberschatz, Korth and Sudarshan
Database Architecture
The architecture of a database systems is greatly influenced by the underlying
computer system on which the database is running:
● Centralized
● All the DBMS functionality, application program execution and user
interface processing of dumb terminals were carried out on a single
centralized machine like mainframe machine
● Client-server
● A client is typically a user machine not dumb terminal that provides user
interface capabilities and local processing
● A server is a system containing both hardware and software that can
provide services to the client machines
● Parallel (multi-processor)
● Distributed

Database System Concepts - 6th Edition 1.25 ©Silberschatz, Korth and Sudarshan
Client Server Architecture
● Single tier or Multi tier
● n-tier architecture divides the whole system into related but independent n
modules, which can be independently modified, altered, changed or replaced
● 1-tier architecture
● DBMS is the only entity where user directly sits on DBMS and uses it
● Any changes done here will directly be done on DBMS itself
● Does not provide handy tools for end users and preferably database
designer and programmers use single tier architecture

User with editor to access the database

Only database along with its query processing,


all relations and their constraints

Database System Concepts - 6th Edition 1.26 ©Silberschatz, Korth and Sudarshan
Client Server Architecture
● Two-tier architecture
● Must have some
application, which uses
the DBMS
● Programmers use 2-tier
architecture where they
access DBMS by means
of application
● Application tier is
entirely independent of
database in term of
operation, design and
programming

Database System Concepts - 6th Edition 1.27 ©Silberschatz, Korth and Sudarshan
DBMS Application Architecture
● Three-tier Architecture
● Most widely used architecture
● Separates it tier from each other on basis of users

This tier is everything for user. He/she doesn't


know about any existence/form of database
beyond layer. Multiple views of database can be
provided by application

Application server and program which access


database. For a user this application tier
works as abstracted view of database

Only database along with its query


processing, all relations and their constraints

Database System Concepts - 6th Edition 1.28 ©Silberschatz, Korth and Sudarshan
Advantages of DBMS
● Control redundancy
● Consistency
● Integrity
● Security
● Concurrency control
● Backup & recovery
● Data standard
● More information
● Data sharing & conflict control
● Productivity & accessibility
● Maintenance

Database System Concepts - 6th Edition 1.29 ©Silberschatz, Korth and Sudarshan
Limitations of DBMS
● Complexity

● Size

● Cost
● Software
● Hardware
● Conversion
● Performance

● Vulnerability

Database System Concepts - 6th Edition 1.30 ©Silberschatz, Korth and Sudarshan

You might also like