Вы находитесь на странице: 1из 32

Chapter 1

Databases & Database


Users

Acknowledge
The main reference of this presentation is the
textbook and PPT from : Elmasri & Navathe,
Fundamental of Database Systems, 4th
edition, 2004, Chapter 1
Additional resources: presentation prepared
by Prof Steven A. Demurjian, Sr
(http://www.engr.uconn.edu/
%7Esteve/Cse255/cse255.html)

Slide 1-2

Overview of Materials
What is a database?
What is a database system?
What is a DBMS?
When is a database system needed?
Motivating database management
Characteristic of database approach
Database users
Advantages of using DBMS approach
A brief history of database application
When not to use a DBMS
Slide 1-3

What is a database?

Example of database application:

Banks,
Hospital,
etc

Extensions:

Multimedia databases
Geographic Information Systems
Data warehouse
On-line analytical processing (OLAP)
Active & real-time databases
etc
Slide 1-4

What is a database? (cont)


Basic definition:
Database: A collection of related data.
Data: Known facts that can be recorded and have
an implicit meaning.
Mini-world: Some part of the real world about
which data is stored in a database. For example,
student grades and transcripts at a university.
Database Management System (DBMS): A
software package/ system to facilitate the creation
and maintenance of a computerized database.
Database System: The DBMS software together
with the data itself. Sometimes, the applications
are also included.
Slide 1-5

Properties of database

Represents some aspect of the real


world, called miniworld or Universe of
Discourse
Logically coherent collection of data
with some inherent meaning
Designed, built and populated for
specific purpose

Slide 1-6

What is a database
system?

Slide 1-7

When is a database system needed?


Examples

Typical Environment
Corporate Enterprise
Data With Large Homogenous Parts (e.g., Formatted
Data)
Data Relevant Over a Long Time
Data Used by Many Simultaneous Users (Batch and Online Users) for Retrieval & Update
Slide 1-8

What is a DBMS?
Database Management System is a
general purpose software system that
facilitates the process of

defining,
constructing and
manipulating

database for various applications

Slide 1-9

Main functions of DBMS

Defining a Database:
Specifying Data Types, Structures, and
Constraints

Constructing a Database:
the Process of Storing the Data Itself on
Some Storage Medium

Manipulating a Database:
Function for Querying Specific Data in the
Database and Updating the Database
Slide 1-10

Additional functions of
DBMS

Interaction with File Manager

So that Details Related to Data Storage and Access


are Removed From Application Programs

Integrity Enforcement
Guarantee Correctness, Validity, Consistency

Security Enforcement
Prevent Data From Illegal Uses

Concurrency Control
Control the Interference Between Concurrent Programs

Recovery from Failure


Query Processing and Optimization
Slide 1-11

Motivating database
management
Manual Database Management

Data are Not Stored


Programmer Defines Both Logical Data Structure and
Physical Structure (Storage)

Slide 1-12

Motivating database
management
File
Processing

Data are Stored in Files with Interface Between Programs and


Files.
Various Access Methods Exist (E.G., Sequential, Indexed,
Random)
One File Corresponds to One or Several Programs.

Slide 1-13

Problems with file systems

Data are Still Highly Redundant

Data is Unstructured

Flat Files

High Maintenance Costs

Sharing Limited and at the File Level

Data Dependence
Ensuring Data Consistency and Controlling Access to Data
(Concurrent Access Problematic)
Difficult to Understand by New Developers

Difficulties in Developing New Applications


Almost Impossible to Evolve with New Capabilities
Risk of Inefficient Applications
Slide 1-14

Database

vs.

Coordinates Both Physical


and Logical Access to the
Data
Data are Shared by All
Programs Authorized to
Have Access to It
Flexible Access to Data
(i.e., Queries)
Multiple Users Accessing
the Same Data at Same
Time

File System
Coordinates Only the
Physical Access to the
Data
Data Written by One
Program May Not Be
Readable by Another
Program
Pre-determined Access to
Data (I.E., Compiled
Programs)
No Two Programs Can
Concurrently Access the
Same File
Slide 1-15

University database example


Has 5 files (tables):

Student
Course
Section
Grade Report
Prerequisite

See how do they relate to each other!


How do we define, construct & manipulate?
Slide 1-16

Slide 1-17

Characteristic of Database
Approach
Self-describing nature
Insulation between program and data
Support of multiple views of data
Sharing of data & multiuser transaction
processing

Slide 1-18

Self-describing nature
As oppose to unstructured data
Contains not only database itself, but
also a complete definition of database
structure (metadata)
In traditional file processing, data
definition is part of the application
program
Slide 1-19

Insulation between programs &


data
Changes to the data structure does not
generally require changing the program
For example, adding a new field Birthday
The data structure is not in the program
We call this program-data independence
DBMS provides conceptual representation
User or programmer does not need to know
how the DBMS store the data in the disk / file.
Slide 1-20

Multiple Views

Many users, different needs

Accessing & printing the transcript of each


students
Checking that students have taken all the
prerequisite course

Slide 1-21

Sharing & Multiuser


DBMS provides concurrency control to
ensure correct behavior when multiple
users access the same database
Example: airline seat reservation
It is called On-Line Transaction
Processing (OLTP)

Slide 1-22

Database users
Actors on the Scene
Database administrator

Authorizing access rights

Database designers

Defines the structure of data to be stored

End users:

Casual end user


Nave/parametric user
Sophisticated users
Stand-alone users

System analyst and Application


programmers (software engineers)

Slide 1-23

Database users
Workers behind the Scene

DBMS system designers and implementers


Tool developers
Operators and maintenance personnel

Slide 1-24

Advantages of Using a DBMS


Controlling redundancy
Restricting unauthorized access
Provides persistent storage for data
structures
Permits inference & actions using rules
Multiple user interfaces
Represents complex relations amongst data
Enforcing integrity constraints
Provides backup & recovery
Slide 1-25

Additional Implications of Using


the Database Approach
Potential for enforcing standards: this is very
crucial for the success of database applications
in large organizations Standards refer to data
item names, display formats, screens, report
structures, meta-data (description of data) etc.
Reduced application development time:
incremental time to add each new application is
reduced.

Slide 1-26

Additional Implications of Using


the Database Approach
Flexibility to change data structures: database
structure may evolve as new requirements are
defined.
Availability of up-to-date information very
important for on-line transaction systems such
as airline, hotel, car reservations.
Economies of scale: by consolidating data and
applications across departments wasteful
overlap of resources and personnel can be
avoided.

Slide 1-27

Historical Development of Database


Technology
Early Database Applications: The Hierarchical and
Network Models were introduced in mid 1960s and
dominated during the seventies. A bulk of the
worldwide database processing still occurs using these
models.
Relational Model based Systems: The model that was
originally introduced in 1970 was heavily researched
and experimented with in IBM and the universities.
Relational DBMS Products emerged in the 1980s.

Slide 1-28

Historical Development of Database


Technology
Object-oriented applications: OODBMSs were
introduced in late 1980s and early 1990s to cater to
the need of complex data processing in CAD and other
applications. Their use has not taken off much.
Data on the Web and E-commerce Applications: Web
contains data in HTML (Hypertext markup language)
with links among pages. This has given rise to a new
set of applications and E-commerce is using new
standards like XML (eXtended Markup Language).

Slide 1-29

Extending Database Capabilities


New functionality is being added to DBMSs in the
following areas:
Scientific Applications
Image Storage and Management
Audio and Video data management
Data Mining
Spatial data management
Time Series and Historical Data
Management
The above gives rise to new research and development in
incorporating new data types, complex data structures, new
operations and storage and indexing schemes in database
systems.
Slide 1-30

When not to use a DBMS


Main inhibitors (costs) of using a DBMS:
High initial investment and possible need for
additional hardware.
Overhead for providing generality, security,
concurrency control, recovery, and integrity
functions.
When a DBMS may be unnecessary:
If the database and applications are simple, well
defined, and not expected to change.
If there are stringent real-time requirements that
may not be met because of DBMS overhead.
If access to data by multiple users is not required .
Slide 1-31

When not to use a DBMS


When no DBMS may suffice:
If the database system is not able to handle the
complexity of data because of modeling limitations
If the database users need special operations not
supported by the DBMS.

Slide 1-32