This document provides an overview of database management systems (DBMS). It discusses the history and components of DBMS, including how they were developed to address limitations of earlier file-based data management systems by providing data independence, efficient access, integrity, security, concurrent access and recovery from crashes. The document also covers DBMS concepts such as data definition and manipulation languages, database administration, types of users and databases, and advantages and disadvantages of DBMS.
4. Why Use a DBMS?
Data independence and efficient access.
Reduced application development time.
Data integrity and security.
Uniform data administration.
Concurrent access, recovery from crashes.
5. A Database management systems (DBMS) is collection of
programs that enables users to create and maintain a database.
The DBMS is general purpose software system that facilitates
the processes of defining, constructing, manipulating and
sharing database among various users and application.
Defining
a database involves specifiying the data types,
structures and constraints of the data to be stored in tthe
database.
Constructing
the database is the 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 in the miniworld and generating reports from
the data.
Sharing a database allows multiple users and programs to
access the database simultaneously.
6. Other important functions provided by the DBMS
include protecting the database and maintaining it
over a long period of time. Protection includes system
and security protection.
A typical large database may have life cycle of many
years, so the DBMS must be able to maintain the
database system by allowing the system to evolve as
requirements change over time.
7. Benefits of DBMS
Reduction
in Data Redundancy.
Reduction
in Inconsistency.
Sharing
of Data.
Enforcement
of Standards.
Improvement
of Data Security.
Maintenance
of Data Integrity.
Better
Interaction with Users.
Efficient
System.
8. Purpose of Database Systems
Database management systems were developed to handle
the following difficulties of typical file-processing
systems supported by conventional operating systems:
Data redundancy and inconsistency
Difficulty in accessing data
Data isolation – multiple files and formats
Integrity problems
Atomicity of updates
Concurrent access by multiple users
Security problems
8
9. Database Systems: A Brief Timeline
1980-present Era of
relational database and
Database Management
System (DBMS):
1968-1980 Era of nonrelational database: IBM’s first
hierarchical DBMS called IMS. CODASYL
DBTG model was for N/w. IDMS most
popular network DBMS.
1968 FileBased: Data
maintained in a flat
file.
Ancient Times:
RAM was expensive
and limited,
programmer
productivity low.
Processing characteristics determined
by common use of magnetic tape
medium
Programmer Defined both logical & physical
structure, such as storage structure, access
methods, I/O modes etc.
10. Database Systems
1970: Ted Codd at IBM’s San Jose Lab proposed relational
models.
Two major projects start and both were operational in late 1970s
o INGRES at University of California, Berkeley became
commercial and followed up POSTGRES which was
incorporated into Informix.
o System R at IBM san Jose Lab, later evolved into DB2,
which became one of the first DBMS product based on the
relational model. (Oracle produced a similar product just
prior to DB2.)
1976: Peter Chen defined the Entity-relationship(ER) model
1980s: Maturation of the relational database technology, more
relational based DBMS were developed and SQL standard
adopted by ISO and ANSI.
11.
1985: Object-oriented DBMS (OODBMS) develops. Little
success commercially because advantages did not justify the
cost of converting billions of bytes of data to new format
1990s: Incorporation of object-orientation in relational
DBMSs, new application areas, such as data warehousing and
OLAP, web and Internet, Interest in text and multimedia,
enterprise resource planning (ERP) and management resource
planning (MRP)
1991: Microsoft ships access, a personal DBMS created as
element of Windows gradually supplanted all other personal
DBMS products.
1995: First Internet database applications
1997: XML applied to database processing, which solves longstanding database problems. Major vendors begin to integrate
XML into DBMS products.
12. Components of a Database System
Four components: People, H/W, S/W, Data
Data: Data stored in a database include numerical data including whole numbers and
floating- point numbers, and non numerical data such as characters , date, logical
values.
Hardware: hardware of the system can range from to a network of computers .It also
includes various storage devices and input and output devices.
13. Software : Software of a DBMS includes the DBMS,
operating system , network software and the application
programs.
Users : Three broad classes of users are considered.
1.
Application
programs.
programmer:
Develop
application
2.
End-Users : Access the database from a terminal using
a query language.
3.
Data Base Administrator (DBA): The
construction and maintenance of a database.
design,
14. Files vs. DBMS
Application
must stage large datasets
between main memory and secondary
storage (e.g., buffering, page-oriented
access, 32-bit addressing, etc.)
Special code for different queries
Must protect data from inconsistency
due to multiple concurrent users
Crash recovery
Security and access control
Slide No:L1-5
15. Purpose of Database Systems
In the early days, database applications were built directly on top
of file systems
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
16. Concurrent access by multiple users
Concurrent
accessed needed for performance.
Uncontrolled
concurrent accesses can lead to inconsistencies.
Example:
Two people reading a balance and updating it at
the same time.
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.
Security problems
Hard
to provide user access to some, but not all, data.
17. Types of Databases
Single-user:
Desktop:
Supports only one user at a time.
Single-user database running on a personal
computer.
Multi-user: Supports multiple users at the same time.
Workgroup: Multi-user database that supports a small
group of users or a single department.
Enterprise: Multi-user database that supports a large group
of users or an entire organization.
Can be classified by location:
◦ Centralized: Supports data located at a single site.
◦ Distributed: Supports data distributed across several
sites.
18. DATA LANGUAGES
The database provides a Data Definition
Language to specify the database schema and a Data
Manipulation Language to express database queries
and updates.
•
DATA-DEFINITION LANGUAGE (DDL)
•
DATA-MANIPULATION LANGUAGE (DML)
STORAGE DEFINITION LANGUAGE (SDL)
VIEW DEFINITION LANGUAGE (VDL)
19. Data-Definition Language (DDL)
We specify a database schema by a set of definition expressed by
a special language called a Data-Definition Language.
DDL is used to create and delete database and its objects.
These commands are primarily used by the DBA during the
building and removal phases of a database project.
Ex: ALTER, DROP, TRUNCATE, COMMENT, RENAME
20. Data Manipulation Language (DML)
Language for accessing and manipulating the data
organized by the appropriate data model.
DML also known as query language
The retrieval of information stored in the database.
• The insertion of new information into the database.
• The deletion of information from the database.
• The modification of information stored in the database.
Two classes of languages
•
Procedural – user specifies what data is required and how to get
those data
Nonprocedural – user specifies what data is required without
specifying how to get those data
21. Database Administrator
Coordinates all the activities of the database system; the database
administrator has a good understanding of the enterprise’s
information resources and needs:
Database administrator’s duties include:
Schema definition
Storage structure and access method definition
Schema and physical organization modification
Granting user authority to access the database
Specifying integrity constraints
Acting as liaison with users
Monitoring performance and responding to changes in
requirements
22. Database Users
Users
are differentiated by the way they expect to
interact with the system.
Application programmers: interact with system
through DML calls.
Specialized users: write specialized database
applications that do not fit into the traditional data
processing framework
Sophisticated users: form requests in a database
query language.
Naive users: invoke one of the permanent application
programs that have been written previously
23. Advantages of DBMS
•
Data independence
•Application programs should
not, ideally, be exposed to
details of data representation and storage.
•
Efficient Data access
•A DBMS uses several powerful functions to
store and
retrieve data efficiently
•Data
Integrity and Security
•The
DBMS enforces integrity constraints to get a kind
of protection against prohibited access to data.
24. Advantages of DBMS
•
Data Administration
When any users share the data, centralizing the administration of
data can offer significant improvements.
•
Concurrent Access and Crash Recovery
A DBMS schedules concurrent access to the data in such manner that
users can think of the data as being accessed by only one user at a
time. DBMS also protects users from the effects of system failures.
•
Reduced Application Development Time
DBMS includes several important functions that are common to
many applications accessing data in the DBMS. In conjunction with
the high-level interface to the data, facilitates quick application
development.
25. Disadvantages of DBMS
a.
b.
c.
d.
e.
f.
g.
h.
i.
Complexity.
Size.
Technical experts are required .
Cost of DBMS development .
Additional hardware costs.
Performance monitoring & maintenance .
Higher impact of a failure.
Centralization: That is use of the same program at a time by many user sometimes
lead to loss of some data.
Limited Statistical Capabilities: Can not perform sophisticated calculations
Security issues.
26. Summary
Data are raw facts. Information is the result of processing data to reveal its
meaning.
To implement and manage a database, use a DBMS.
Database design defines the database structure.
A well-designed database facilitates data management and generates
accurate and valuable information.
A poorly designed database can lead to bad decision making, and bad
decision making can lead to the failure of an organization.
Databases were preceded by file systems.
Limitations of file system data management:
requires extensive programming.
system administration complex and difficult.
making changes to existing structures is difficult.
security features are likely to be inadequate.
independent files tend to contain redundant data.
DBMS’s were developed to address file systems’ inherent weaknesses.