Database Systems - Computer Information Systems

Download Report

Transcript Database Systems - Computer Information Systems

Data Management I
DBMS
Relational Systems
Overview
 Introduction
 DBMS
– components
– types
 Relational
Model
– characteristics
– implementation
 Physical
Structure
File-based Systems
 Collection
of applications that performs
services for end user- programs define and
manage data
 Limitations
– Data dependence-structure defined in program
– Incompatible file formats
– Programs written to satisfy function
Database Definition
 A database
system is essentially a
computerized record keeping system
whose overall purpose is to maintain
information and make it available on
demand
Advantages of Database








REDUCED REDUNDANCY - Controlling duplication
INTEGRATION AND SHARING OF DATA - One set
of data to maintain
MAINTAINING CONSISTENCY - Data propagation
DATA ACCESS - Multiple access paths; High level
language
STANDARDIZATION - Enforcing local and global
standards
SECURITY - User access; Protection of Data
DATA INDEPENDENCE - Data descriptors separate
from application program
Increased integrity and concurrency control
Components of a Database System
 Data
– Note: Date uses data and information interchangably
 Hardware
– Processor, main memory, secondary storage and I/O devices
– Individual PC to a network of computers
 Software
– DBMS
– Application programs
– Others software tools
 Users
– Application Programmers
– End - Users
– DBA’s
 Procedures
??
Database Management System
DBMS
 Software
 Software
Components
– Data Definition DDL
 source form
object form
– Data manipulation DML
 planned request
 unplanned request
– Data administration DAL
 Data security and recovery
– Integrity and concurrency
– Performance
– Data dictionary
Data Dictionary
Catalog Repository
 Database
of information about a database
– description of all database objects
– references to all users of the database
– references to all programs and
transactions that access the database
Provides
the description of the data to
enable program-data independence
Database Models
 Hierarchical
- IMS
– tree structure with predefined access paths
– child has one parent
 Network
- CODASYL - IDMS
– multiple paths to same record
 Multi-dimensional
 Object-oriented
– data and methods
– highly-variable structure
– tightly coupled with programming language
 Hybrid
- Object/Relational Databases
Relational Model
 Evolving
System - System designed by
Codd, partially implemented, developing
 Theoretical Vs Available - No system met
Codd’s original 12 rules. Degrees of
relational defined
 Date’s work - Supportive of relational
model but not always in agreement with
Codd
Functions of a DBMS
 Data
–

Must furnish users with the ability to store, retrieve,
and update data in the database.
A User-Accessible Catalog.
–

Storage, Retrieval and Update.
Must furnish a catalog in which descriptions of data
items are stored and which is accessible to users.
Transaction Support
–
Must furnish a mechanism to ensure that either all
the updates corresponding to a given transaction are
made or that none of them are made.
Functions of a DBMS

Concurrency Control Services
–

Must furnish a mechanism to ensure that database
is updated correctly when multiple users are
updating the database concurrently.
Recovery Services
–
Must furnish a mechanism for recovering the
database in the event that the database is damaged
in any way.
 Authorization
–
Services
Must furnish a mechanism to ensure that only
authorized users can access the database.
Functions of a DBMS

Support for Data Communication
–

Integrity Services
–

Must furnish a means to ensure that both the data in
the database and changes to the data follow certain
rules.
Services to Promote Data Independence
–

Must be capable of integrating with communication
software.
Must include facilities to support the independence
of programs from the actual structure of the
database.
Utility Services
–
Should provide a set of utility services.
ANSI/SPARC Architecture
EXTERNAL LEVEL
(individual user
view)
CONCEPTUAL LEVEL
(community user view)
INTERNAL LEVEL
(storage view)
...
External Level
 Users’ view
of the database
 Language
– Application programmer
– End-user
 External View
– Logical record
– Data authorized to view
 External
Schema
Conceptual Level
 Community
view of database
 Representation of entire information content
 Conceptual schema
– definition of total database content ++
– data independent
Internal Level
 Low-level
representation of entire database
– occurrences
 Describes
how the data is stored in the
database
 Not physical level
 Level used by utilities to increase
performance.
Differences between Three Levels of
ANSI-SPARC Architecture
11
Data Independence and the ANSI-SPARC
Three-level Architecture
Data Model

Integrated collection of concepts for describing
data, relationships between data, and
constraints on the data in an organization.

Data Model comprises:
– A structural part
– A manipulative part
– Possibly a set of integrity rules
Data Models
 Object-based Data
– Entity-Relationship
– Semantic
– Functional
– Object-Oriented
Models
 Record-based Data Models
– Relational Data Model
– Network Data Model
– Hierarchical Data Model
 Physical
Data Models
Client/Server
 Client/server
architecture
 Front end
 Back end
 Middleware
model naturally fits the
Client/Server
Front End
 GUI
 Applications
 Fat
vs thin client
 Should any data
be stored in
front end?
Back End
Server
 Data
 Shared
DBMS
 Database information
 Fat server vs thin server
 Should server contain
applications?
Middleware
 Enables
front end to speak to back end.
 Middleware can be as simple as API’s and
as complex as Tuxedo software
 Determinants
– variety of databases
– networks
– size
Summary of Client-server Functions