DBMS: Introduction
Unit-1
DBMS: Varieties
Traditional Database applications
most of the information that is stored and accessed is
either textual or numeric.
Multimedia Databases: can store images, audio
clips, and video streams digitally
Geographic information systems (GIS):
can store and analyze maps, weather data, and
satellite images
Data warehouses and online analytical processing
(OLAP) systems:
To extract and analyze useful business information
from very large dataases to support decision making.
DBMS: Varieties
Real-time and active database technology:
Used to control industrial and manufacturing processes
Placement Questions:
Mention different types of Database Applications?[TCS]
What do you mean by GIS System [Infosys]
Explain OLAP System[TCS, Wipro]
DBMS: Taxonomy
Database: is a collection of related data.
DBMS:
collection of programs that enables users to create and maintain
a database.
It facilitates the processes of defining, constructing, manipulating,
and sharing databases among various users and applications.
Placement Questions:
Differentiate between Database and DBMS [TCS, Infosys]
Define Database [TCS, Wipro]
Define DBMS[Infosys, CoCubes]
DBMS
Defining a database:
It involves specifying the data types, structures, and
constraints of the data to be stored in the database.
The database definition or descriptive information is also
stored by the DBMS in the form of a database catalog or
dictionary; it is called meta-data.
Constructing the database: process of storing the
data on some storage medium that is controlled by the
DBMS.
Manipulating a database: includes functions such as
querying the database to retrieve specific data,
updating the database to reflect changes
Sharing a database: allows multiple users and
programs to access the database simultaneously.
DBMS
An application program: accesses the
database by sending queries or requests for
data to the DBMS.
Query: typically causes some data to be
retrieved
Protection: includes system protection against
hardware or software malfunction (or crashes)
and security protection against unauthorized or
malicious access
Charactersitics of Database Approach
In the database approach, a single repository
maintains data that is defined once and then
accessed by various users whereas In
traditional file processing, each user defines
and implements the files needed for a
specific software application as part of
programming the application.
Charactersitics of Database Approach Contd...
The main characteristics of the database
approach versus the file-processing approach
are the following:
Self-describing nature of a database system
Insulation between programs and data, and data
abstraction
Support of multiple views of the data
Sharing of data and multiuser transaction
processing
Charcteristics:Self Describing Nature
A database system contains not only the database
itself but also a complete definition or description of
the database structure and constraints.
This definition is stored in the DBMS catalog, which
contains information such as the structure of each file,
the type and storage format of each data item, and
various constraints on the data.
The information stored in the catalog is called meta-
data, and it describes the structure of the primary
databas
Insulation between Programs and Data,
and Data Abstraction
In traditional file processing, the structure of data
files is embedded in the application programs, so
any changes to the structure of a file may require
changing all programs that access that file.
By contrast, DBMS access programs do not
require such changes in most cases.
The structure of data files is stored in the DBMS
catalog separately from the access programs.
This property is called as program-data
independence.
Insulation between Programs and Data,
and Data Abstraction Contd...
The implementation (or method) of the
operation is specified separately and can be
changed without affecting the interface.
User application programs can operate on the
data by invoking these operations through their
names and arguments, regardless of how the
operations are implemented.
It is known as program-operation
independence.
Insulation between Programs and Data,
and Data Abstraction Contd...
The characteristic that allows program-data
independence and program-operation
independence is called data abstraction.
A DBMS provides users with a conceptual
representation of data that does not include
many of the details of how the data is stored or
how the operations are implemented.
Informally, a data model is a type of data
abstraction that is used to provide this
conceptual representation
Sharing of Data and Multiuser
Transaction Processing
A multiuser DBMS, as its name implies, must
allow multiple users to access the database at the
same time. This is essential if data for multiple
applications is to be integrated and maintained in
a single database.
The DBMS must include concurrency control
software to ensure that several users trying to
update the same data do so in a controlled
manner so that the result of the updates is
correct.
Users: Database Administrators
In a database environment, the primary resource
is the database itself, and the secondary resource
is the DBMS and related software. Administering
these resources is the responsibility of the
database administrator (DBA).
The DBA is responsible for authorizing access to
the database, coordinating and monitoring its use,
and acquiring software and hardware resources
as needed.
The DBA is accountable for problems such as
security breaches and poor system response
time.
Users: Database Designers
Database designers are responsible for
identifying the data to be stored in the database
and for choosing appropriate structures to
represent and store this data.
It is the responsibility of database designers to
communicate with all prospective database
users in order to understand their requirements
and to create a design that meets these
requirements.
Users: End Users
End users are the people whose jobs require
access to the database for querying, updating,
and generating reports
Casual end users occasionally access the
database, but they may need different information
each time.
They use a sophisticated database query language
to specify their requests and are typically middle- or
high-level managers or other occasional browsers.
Users: End Users Contd...
Naive or parametric end users make up a
sizable portion of database end users.
Their main job function revolves around
constantly querying and updating the database,
using standard types of queries and updates—
called canned transactions—that have been
carefully programmed and tested.
Users: End Users Contd...
Sophisticated end users include engineers,
scientists, business analysts, and others who
thoroughly familiarize themselves with the
facilities of the DBMS in order to implement their
own applications to meet their complex
requirements.
Standalone users maintain personal databases
by using ready-made program packages that
provide easy-to-use menu-based or graphics-
based interfaces.
DBMS Approach: Advantages
Controlled Redundancy
Restricting Unauthorized Access
Persistent Storage for Program Objects
Storage Structures and Search techniques for
Efficient Query Processing
Backup and Recovery
Multiple User Interfaces
Representing Complex Relationships among Data
DBMS Approach: Advantages
Contd...
Enforcing Integrity Constraints
The simplest type of integrity constraint involves specifying a
data type for each data item
Referential Integrity (a record in one file must be related to
records in other files)
Key or uniqueness constraint( uniqueness on data item values)
Permitting Inferencing and Actions Using Rules
Some database systems provide capabilities for defining
deduction rules forinferencing new information from the stored
database facts. Such systems are called deductive database
systems.
Support of Multiple Views of the
Data
A database typically has many users, each of
whom may require a different perspective or
view of the database.
A view may be a subset of the database or it
may contain virtual data that is derived from the
database files but is not explicitly stored.
Database Applications: History
Hierarchical and Network Systems
Hierarchical model organizes data in a tree-like structure
while network model arranges data in a graph structure
and relational database model organizes data in tables.
Hierachichal model represents one to many relationship
whereas network model represents many to many
relationships
Hierarchical model uses parent child relationships
whereas in Network model multiple records can be
linked to the same owner file.
DBMS: Historical Developments
Hierarchical and Network
Hierarchical model organizes data in a tree-like structure while network model
arranges data in a graph structure
Relational
Separates the physical storage of data from its conceptual representation,
supporting data abstraction and program-data independence
Object Oriented Databases (OODB)
Store and share complex, structured object
Interchanging Data on the Web for E-Commerce Using XML
eXtended Markup Language (XML) is considered to be the primary standard for
interchanging data among various types of databases and Web pages.
Extending Database Capabilities for New Applications
Storing large amounts of data resulting from scientific experiments
Storage and retrieval of images
Storage and retrieval of videos,
Data mining applications that analyze large amounts of data
Spatial applications that store spatial locations of data
Time series applications that store information such as economic data at
regular points in time
DBMS: Limitations
High initial investment in hardware, software,
and training
The generality that a DBMS provides for
defining and processing data
Overhead for providing security, concurrency
control, recovery, and integrity functions
Next Chapter
Database System Concept and Architecture