Chapter 1
Introduction to Databases
Chapter 1 - Objectives
Some common uses of database systems.
Characteristics of file-based systems.
Problems with file-based approach.
Meaning of the term database.
Meaning of the term Database Management
System (DBMS).
Chapter 1 - Objectives
Typical functions of a DBMS.
Major components of the DBMS environment.
Personnel involved in the DBMS environment.
History of the development of DBMSs.
Advantages and disadvantages of DBMSs.
Examples of Database Applications
Purchases from the supermarket
Purchases using your credit card
Booking a holiday at the travel agents
Using the local library
Taking out insurance
Renting a video
Using the Internet
Studying at university
File-Based Systems
Collection of application programs that perform
services for the end users (e.g. reports).
Each program defines and manages its own data.
File-Based Processing
Limitations of File-Based Approach
Separation and isolation of data
Each program maintains its own set of data.
Users of one program may be unaware of
potentially useful data held by other programs.
Duplication of data
Same data is held by different programs.
Wasted space and potentially different values
and/or different formats for the same item.
Limitations of File-Based Approach
Data dependence
File structure is defined in the program code.
Incompatible file formats
Programs are written in different languages,
and so cannot easily access each other’s files.
Fixed Queries/Proliferation of application programs
Programs are written to satisfy particular
functions.
Any new requirement needs a new program.
Database Approach
Arose because:
Definition of data was embedded in application
programs, rather than being stored separately
and independently.
No control over access and manipulation of data
beyond that imposed by application programs.
Result:
the database and Database Management System
(DBMS).
Database
Shared collection of logically related data (and a
description of this data), designed to meet the
information needs of an organization.
System catalog (metadata) provides description
of data to enable program–data independence.
Logically related data comprises entities,
attributes, and relationships of an organization’s
information.
But what is data? And where
is it now?
Data is factual information about objects and
concepts, such as:
• measurements
• statistics
You can find it in:
filing cabinets
spreadsheets
folders
lists
colleagues’ memories
piles of papers on your desk
What does “managing
information” mean?
Making information work for us
Making information useful
Avoiding "accidental disorganisation”
Making information easily accessible and
integrated with the rest of our work
Database Management System
(DBMS)
A software system that enables users to define,
create, maintain, and control access to the
database.
(Database) application program: a computer
program that interacts with database by issuing
an appropriate request (SQL statement) to the
DBMS.
Database Management System
(DBMS)
Database Approach
Data definition language (DDL).
Permits specification of data types,
structures and any data constraints.
All specifications are stored in the database.
Data manipulation language (DML).
General enquiry facility (query language) of
the data.
Database Approach
Controlled access to database may
include:
a security system
an integrity system
a concurrency control system
a recovery control system
a user-accessible catalog.
Views
Allows each user to have his or her own view of
the database.
A view is essentially some subset of the database.
Views - Benefits
Reduce complexity
Provide a level of security
Provide a mechanism to customize the
appearance of the database
Present a consistent, unchanging picture of the
structure of the database, even if the underlying
database is changed
Components of DBMS Environment
Components of DBMS Environment
DBMS
===============
Design tools
Table Creation
Form Creation
Query Creation
Report Creation Application
Procedural
Database language
Programs
compiler (4GL)
=============
Run time
Database contains:
Form processor
User’s Data Query processor
User
Metadata Report Writer Interface
Indexes Language Run time Applications
Application Metadata
Components of DBMS Environment
Hardware
Can range from a PC to a network of
computers.
Software
DBMS, operating system, network software
(if necessary) and also the application
programs.
Data
Used by the organization and a description of
this data called the schema.
Components of DBMS Environment
Procedures
Instructions and rules that should be
applied to the design and use of the
database and DBMS.
People
Includes database designers, DBAs,
application programmers, and end-
users.
Roles in the Database Environment
Data Administrator (DA)
Database planning
Development and maintenance of standards, policies and procedures
Database Administrator (DBA)
Physical realization of database
Physical DB design and implementation
Security and integrity control
Maintenance of operational system
Database Designers (Logical and Physical)
Identifying the data, relationship between data and constrain on data
Mapping the logical DB design into tables and constraints
Application Programmers
End Users (naive and sophisticated)
History of Database Systems
First-generation
Hierarchical Model (1960’s and 1970’s)
Similar to data structures in programming
languages.
Books
(id, title)
Authors
Publisher Subjects
(first, last)
History of Database Systems
Network Model (1970’s)
Provides for single entries of data and navigational
“links” through chains of data.
Authors
Subjects Books
Publishers
Problems:
Changes in data structure require changes in application
programs that access that structure
No Many-to-Many relationships
Programmers must be thoroughly familiar with the database
structure.
History of Database Systems
Second generation
Relational Model (1980’s)
Provides a conceptually simple model for data as
relations (typically considered “tables”) with all data
Authorid Author name
visible. pubid pubname
1 Harper
1 Smith
2 Wynar
2 Addison
3 Jones
3 Oxford
Book ID Title pubid Author id 4 Duncan
4 Que
1 Introductio 2 1 5 Applegate
2 The history 4 2
3 New stuff ab 3 3
4 Another title 2 4 Book ID Subid
Subid Subject
5 And yet more 1 5 1 2
1 cataloging
2 1
2 history
3 3
3 stuff
4 2
4 3
Advantage: Many-to-Many relationships are implemented
Problems: “Navigation” is even harder
History of Database Systems
Third generation
Object-Oriented
Encapsulates data and operations as “Objects”
Books
(id, title)
Authors
Publisher Subjects
(first, last)
History of Database Systems
Object-Relational (1990’s)
Combines the well-known properties of the
Relational Model with such OO features as:
User-defined datatypes
User-defined functions
Inheritance and sub-classing
Advantages of DBMSs
Control of data redundancy
Data consistency
More information from the same amount of data
Sharing of data
Improved data integrity
Improved security
Enforcement of standards
Economy of scale
Advantages of DBMSs
Balance conflicting requirements
Improved data accessibility and responsiveness
Increased productivity
Improved maintenance through data
independence
Increased concurrency
Improved backup and recovery services
Disadvantages of DBMSs
Complexity
Size
Cost of DBMS
Additional hardware costs
Cost of conversion
Performance
Higher impact of a failure