DATABASES AND DATABASE SYSTEMS
[CSS 114]
Lecture 01: Introduction to Database Systems
Almasi S. Maguya (PhD)
(
[email protected])
Computing Science Studies Department
Faculty of Science and Technology
Mzumbe University
2019/2020
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Contents
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Lecture objectives I
In this lecture:
Basic concepts and definitions
Tradition file processing systems
The database approach
Components of the database environment
Types of database applications
Evolution of database systems
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions I
Data: Stored representations of objects and events that have
meaning and importance to the user.
Information: Data that have been processed in such a way as
to increase the knowledge of the person who uses the data.
Entity: Something in the user environment about which the
user wishes to maintain data.
Attribute/field: A characteristic of an entity.
Relationship: An association between entities.
Data vs information
One person’s data can be another person’s information, and vice
versa.
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions II
Primary key: an attribute or set of attributes that uniquely
identifies each record in a relation/table
File: A collection of records or documents dealing with one
organization, person, area or subject, e.g., paper (manual)
files, computer files.
Database I: A collection of similar records with relationships
between the records (Rowley), e.g., business, bibliographic.
Database II: A Database is a collection of stored operational
data used by the application systems of some particular
enterprise (C.J. Date)
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions III
Sample customer table
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions IV
Database Management System:
AKA DBMS
Software system used to define, create, maintain and provide
controlled access to the database and its metadata
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions V
Data Dictionary:
AKA repository (old usage)
The place where all metadata for a particular database is stored
May also include information on relationships between files or
tables in a particular database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions VI
Metadata
Data about data. In DBMS means all of the characteristics
describing the attributes of an entity, e.g., name, data type,
and size
Characteristics of files or relations: name, content, notes, etc.
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions VII
Metadata example:
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Basic concepts and definitions VIII
Database operations:
Create: add new data to the database
Read: retrieve data from the database
Update: modify existing data in the database
Delete: remove data from the database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Traditional file processing systems
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Traditional file processing systems I
In the early days of computing. . .
There were no DBMSs
Business data stored, manipulated and retrieved from (large)
flat files
File processing systems (programs) developed to handle the
files
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Traditional file processing systems II
Disadvantages of file processing systems
Program-data dependence
Duplication of data
Limited data sharing
Lengthy development times
Excessive program maintenance
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Traditional file processing systems III
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
The database approach
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
The database approach I
In the database approach. . .
There are DBMSs that handle the data
Emphasizes sharing of data throughout the organization
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
The database approach II
Advantages of the database approach
Improved data sharing
Controlled redundancy
Improved consistency and integrity
Balancing conflicting requirements
Improved data independence
Reduced Program Maintenance
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
The database approach III
Disadvantages of the database approach
New, specialized personnel
Installation and management cost and complexity
Conversion/migration costs
Need for explicit backup and recovery
Increased security risks
Organization conflicts
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
The database approach IV
Data Independence
Physical representation and location of data and the use of that
data are separated
The application doesnt need to know how or where the
database has stored the data, but just how to ask for it
Moving a database from one DBMS to another should not
have a material effect on application program
Recording, adding fields, etc. in the database should not
affect applications
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Components of the database environment I
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Components of the database environment II
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Components of the database environment III
CASE tools: Automated tools used to design databases and
application programs
Repository: Centralized knowledge base for all data
definitions, data relationships, and other system components
DBMS: Software system used to create, maintain, and
provide controlled access to user databases
Database: An organized collection of logically related data,
usually designed to meet the organizational needs of multiple
users in an organization
Application programs: Computer programs used to create
and maintain the database and provide information to users
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Components of the database environment IV
User interface: Languages, menus, and other facilities users
use to interact with system components
Data/database administrators: People responsible for the
overall management of data resources in an organization
System developers: People such as systems analysts and
programmers who design new application programs
End users: People throughout the organization who add,
delete, and modify data in the database and who request or
receive information from it
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system I
Can be classified according to:
Number of users
Database site location
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system II
On the basis of the number of users:
Single-user DBMS
Multi-user DBMS
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system III
On the basis of the site location:
Centralized DBMS
Parallel DBMS
Distributed DBMS
Client/server DBMS
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system IV
Single-user DBMS
The database resides on one computer and can be accessed by one
user at a time
The user maintains the database: designs, writes, and maintains
application programs
Ideal for personal databases or very small organizations (e.g., SMEs)
Example: MS Access, FoxPro
(What about multi-user DBMS?)
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system V
Centralized DBMS
DBMS installed on a single machine confined in one location
Data can be accessed from multiple sites over a computer network
Database is maintained at a single site
Disadvantages
Single point of failure: if the centralized DB fails everyone is affected
Communication costs
What about advantages?
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system VI
Centralized database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system VII
Parallel DBMS
Multiple DBMS instances share the same physical database
Employs a variety of hardware architectures to allow multiple
computers/clients to share access to data: parallel CPUs
Improve processing and Input/Output (I/O) speeds
Disadvantages:
Complications: e.g., the need for synchronization, setup, etc.
Too much time spent in synchronization can diminish the benefits
of parallel processing
Cost: hardware and software costs
What about advantages?
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system VIII
Parallel database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system IX
Distributed DBMS
Database physically distributed over a computer network (can span
large geographical areas)
Employs a distributed DBMS
Appears to a user as a single database
Each database server in the distributed database is controlled by its
local DBMS, and each cooperates to maintain the consistency of
the global database
Disadvantages:
Recovery from failure is more complex
Cost: hardware, software, and maintenance costs
Advantages:
Greater efficiency and better performance; Provides local autonomy
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system X
Distributed database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system XI
Client/server DBMS
Consists of two logical components namely client, and server
Clients are generally personal computers or workstations whereas
server is a more powerful computer
The applications and tools of DBMS run on one or more client
platforms, while the DBMS software reside on the server
The server computer is called backend and the client computers are
called front ends
The most common DB setup
Disadvantages:
Presents a single point of failure
Advantages:
Better price:performance ratio–strikes a good balance
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database system XII
Client/server database
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Types of database applications I
PC databases: Usually for individual
WorkGroup databases: Small group use where everyone has
access to the database over a LAN
Departmental databases: Larger than a workgroup but
similar
Enterprises databases: For the entire organization over an
intranet (or sometimes the Internet)
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Evolution of database systems I
Driven by four main objectives:
Need for program-data independence =⇒ reduced
maintenance
Desire to manage more complex data types and structures
Ease of data access for less technical personnel
Need for more powerful decision support platforms
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Evolution of database systems II
Evolution of database systems:
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models I
“Database Model” could refer to:
Levels or views of the Database: Conceptual, logical, physical
DBMS types: Relational, Hierarchic, Network,
Object-Oriented, Object-Relational
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models II
Hierarchical Model (1960s and 1970’s):
Similar to data structures in programming languages.
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models III
Network Model (1970’s):
Provides for single entries of data and navigational “links” through
chains of data.
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models IV
Relational Model (1980’s):
Provides a conceptually simple model for data as relations
(typically considered tables)
The most common database model in use today
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models V
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models VI
Object Oriented Data Model (1990’s):
Encapsulates data and operations as “Objects”
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Database models VII
Object-Relational Model (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
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS
Summary I
You should take note of:
Key terms and definitions
The file approach and its pros/cons
The database approach and its pros/cons
Types of database systems
Evolution of database systems
Database models
Almasi S. Maguya (PhD) DATABASES AND DATABASE SYSTEMS