You are on page 1of 53

Chapter 1

File Systems and


Databases
Examples of Use of Database
Systems

Banks

Travel Agents

Scientific Data Collection


2
Introducing the Database
• Major Database Concepts
– Data and information
• Data - Raw facts
• Information - Processed data
– Data management
– Database
– Metadata (=Data about data)
– Database management system (DBMS)
3
Introducing the Database
• Database management system
(DBMS)
– DBMS is the software that interacts with the users,
application programs, and the database. Example : IBM
DB2, Microsoft SQL Server, Oracle, MySQL etc.

Application
Data DBMS
Programs

4
Introducing the Database
• Importance of DBMS
– It helps make data management more
efficient and effective.
– It provides end users better access to
more and better-managed data.
– It promotes an integrated view of
organization’s operations -- “big
picture.”
– It reduces the probability of inconsistent
data. 5
The DBMS Manages the Interaction
Between the End User and the Database

6
Introducing the Database

• The Importance of Database Design


– A well-designed database
facilitates data management and
becomes a valuable information
generator.
– A poorly designed database is a
breeding ground for uncontrolled
data redundancies.
– A poorly designed database
generates errors that lead to bad
7
decisions.
Basic File Terminology

Data “Raw” facts that have little meaning unless


they have been organized in some logical
manner.
Field A character or group of characters
(alphabetic or numeric) that has a specific
meaning. A field might define a telephone
numbers, a birth date, a customer name, a
year-to-date (YTD) sales value, and so on.
Record A logically connected set of one or more
fields that describes a person, place, or
thing.
File A collection of related records.

8
Common Data Elements
(concept of fields, records, and
files)

Student File Field an


individual
Id No. Name Faculty Major characteristic
or attribute
1100 Ali FIT SE
1200 Bobby FIT MIS
1300 Clement FCM MM
1400 David FCM MM
Record
all data about
1500 Evelyn FOE CE
one occurrence
of the entity
(collection of related
File set of data describing all
fields) occurrences of the entity
(collection of related records)
Basic File Terminology

Data Model - A collection of concepts that


can be used to describe the structure of
database.
Database instance – Separate location of
memory reserved for running a specific
database
Database Schema - the description of a
database, which is specified during
database design and is not expected to
change frequently.

10
A Simple File System

11
File System
Critique
• File System Data Management
– File systems require extensive
programming in a third-generation
language (3GL).
– As the number of files expands,
system administration becomes
difficult.
– Making changes in existing file
structures is important and
difficult.
– Security features to safeguard
data are difficult to program and
12
usually omitted.
File System
Critique
• Structural and Data Dependence
– Structural Dependence
A change in any file’s structure
requires the modification of all
programs using that file.
– Data Dependence
A change in any file’s data
characteristics requires changes in all
data access programs.
– Significance of data dependence is the
difference between the data logical
format and the data physical format. 13
File System
Critique
• Field Definitions and Naming Conventions
– A good (flexible) record definition
anticipates reporting requirements by
breaking up fields into their components.
• Example:

– Customer Name --> Last Name, First


Name, Initial
– Customer Address --> Street
Address, City, State

14
File System
Critique
• Field Definitions and Naming
Conventions
– Selecting proper field names is very
important.
• Names must be as descriptive as
possible within restrictions.
• Naming must reflect designer’s
documentation needs and user’s
reporting and processing
requirements.
15
File System
Critique

FIELD CONTENTS
CUS_LNAME Customer last name
CUS_FNAME Customer first name
CUS_INITIAL Customer initial
CUS_AREACODE Customer area code
CUS_PHONE Customer phone
CUS_ADDRESS Customer street address or box number
CUS_CITY Customer city
CUS_STATE Customer state

16
File System
Critique
• Data Redundancy:
Uncontrolled data redundancy sets the
stage for
– Data Inconsistency (lack of data integrity)
– Data anomalies
• Modification anomalies
• Insertion anomalies
• Deletion anomalies

17
Database
Systems
• The Database System Components
– Hardware
• Computer

• Peripherals

– Software
• Operating systems software

• DBMS software

• Applications programs and

utilities software

18
Database
Systems
• The Database System Components
– People
• Systems administrators (SA)

• Database administrators (DBAs) / Owner

(Dbo)
• Database designers

• Systems analysts and programmers

• End users

– Procedures (sp)
• Instructions and rules that govern the design

and use of the database system


– Data
19
• Collection of facts stored in the database
Database
Systems
• The Database System Components
– The complexity of database systems
depends on various organizational
factors:
• Organization’s size
• Organization’s function
• Organization’s corporate culture
• Organizational activities and
environment
– Database solutions must be cost effective
AND strategically effective. 20
Database
Systems
• Types of Database Systems
– Number of Users
• Single-user
– Desktop database
• Multiuser
– Workgroup database
– Enterprise database
– Scope/limitation
• Desktop

• Workgroup

• Enterprise
21
Database
Systems
• The types of Database Systems
– Location
• Centralized Database
• Distributed Database
– Use
• Transactional (Production)
• Decision support
• Data warehouse

22
Database
Systems
• DBMS Functions
1.Data Dictionary Management
2.Data Storage Management
3.Data Transformation and Presentation
4.Security Management
5.Multi-User Access Control
6.Backup and Recovery Management
7.Data Integrity Management
8.Database Access Languages (DDL and DML)
and Application Programming Interfaces
9.Database Communication Interfaces
23
Database Models
• A database model is a collection of logical
constructs used to represent the data
structure and the data relationships found
within the database.

• Two Categories of Database Models


– Conceptual models focus on the logical
nature of the data representation. They
are concerned with what is represented
rather than how it is represented.
– Implementation models place the
emphasis on how the data are
represented in the database or on how 24
the data structures are implemented.
Database Models
• Three Types of Relationships
– One-to-many relationships (1:M)
• A painter paints many different paintings, but
each one of them is painted by only that
painter.
– PAINTER (1) paints PAINTING (M)
– Many-to-many relationships (M:N)
• An employee might learn many job skills, and
each job skill might be learned by many
employees.
– EMPLOYEE (M) learns SKILL (N)
– One-to-one relationships (1:1)
• Each store is managed by a single employee
and each store manager (employee) only
25
manages a single store.
Database Models

• Three Types of Implementation


Database Models
– Hierarchical database model
– Network database model
– Relational database model

26
Hierarchical Database
Models
• Hierarchical Database Model
– Basic Structure
• Collection of records logically
organized to conform to the upside-
down tree (hierarchical) structure.
• The top layer is perceived as the parent
of the segment directly beneath it.
• The segments below other segments
are the children of the segment above
them.
• A tree structure is represented as a 27
hierarchical path on the computer’s
Types of Database Data Models -
Hierarchical
The first database systems developed were
hierarchical
• Databases using the hierarchical model
• use physical pointers to link records
Pointer Based
Linkages Between
Entities
Location Prof# Name Office# 1st Student Pointers give the
physical location of a
P10 J13 Jones SB312 P203
related set of data, the
P11 M7 Morgen BA218 P200 location values
P12 D23 Davis SB 106 P201 (P10, P201, etc.) in our
example are meant to
represent this type of
Class Next physical location. Real
Location Stud# S_name Standing Prof_Stud pointers usually
P200 1234 Smith Fr P202 indicate a displacement
P201 4678 Davis So P204
P202 2943 Evans Fr P206
in a file. Instead of the
P203 1874 Allen Jr P205 P203 value in the first
P204 4017 Lloyd Fr * professor record
P205 2318 Marx Sr P207 we would see an
P206 6021 Keen So * indicator that the
P207 5503 Watts Jr * related data begins at
the 4028th byte of the 29
file that stores student
Pointer Based Linkages
Between Entities

Location Prof# Name Office# 1st Student


P10 J13 Jones SB312 P203
P11 M7 Morgen BA218 P200
P12 D23 Davis SB 106 P201

Class
Standin Next
Location Stud# S_name g Prof_Stud
P200 1234 Smith Fr P202
P201 4678 Davis So P204
P202 2943 Evans Fr P206
P203 1874 Allen Jr P205
P204 4017 Lloyd Fr *
P205 2318 Marx Sr P207
P206 6021 Keen So *
P207 5503 Watts Jr * 30
Types of Database Data Models -
Hierarchical
The first database systems developed were
hierarchical
• Databases using the hierarchical model
• use physical pointers to link records
• allow only hierarchical relationships
Hierarchical
• A hierarchical
relationship is one
where each entity at a
lower level of the A
hierarchy is related to
only one type of entity
at a higher level of the
hierarchy (a higher B C
level entity can be
linked to two or more
lower level “child”
entities)
32
Types of Database Data
Models - Hierarchical
The first database systems developed were
hierarchical
• Databases using the hierarchical model
• use physical pointers to link records
• allow only hierarchical relationships
+Hierarchical databases provide very
efficient “high-speed” retrieval
– They are difficult to modify as an
organization’s data needs change
– It is difficult to use them to
represent non-hierarchical
relationships
(essentially you must create
multiple linked hierarchical
Types of Database Data
Models - Network
The next type of data model developed was the
network model
• Databases using the Network model
• use physical pointers to link records - like
the hierarchical model
• do support network as well as hierarchical
relationships
+Network databases provide very efficient
“high-speed” retrieval
+Can represent network, as well as,
hierarchical relationships easily
– Are difficult to modify as an organization’s
data needs change
– Have complex pointer structures which can
be difficult to manipulate and hard for end-
34
users to understand.
Network Relationships

• A network relationship is one


in which an entity at a lower
level can be linked to two or
more entities at a higher
level. C B
– E.G. - an order is related to
both a customer who
placed it and a salesperson
who made the sale
• The hierarchical model does
A
not support network
relationships.
– To capture them a second
database would have to be 35

created and linked to the


Types of Database Data Models -
Relational
• Relational Database Model
– Basic Structure
• RDBMS allows operations in a human
logical environment.
• The relational database is perceived as
a collection of tables.
• Each table consists of a series of
row/column intersections.
• Tables (or relations) are related to
each other by sharing a common entity
characteristic.
• The relationship type is often shown in
a relational schema.
• A table yields complete data and
36
structural independence.
Repetition of Identifying
Data to Link Related Data

Prof# Name Office#


J13 Jones SB312
M7 Morgen BA218
D23 Davis SB 106
Class
Stud# S_name Standing Prof#
1234 Smith Fr M7
4678 Davis So D23
2943 Evans Fr M7
1874 Allen Jr J13
4017 Lloyd Fr D23
2318 Marx Sr J13
6021 Keen So M7
5503 Watts Jr J13 37
Linking Relational Tables

38
Relational Database
Model
- Advantages
• Structural independence
• Improved conceptual simplicity
• Easier database design, implementation,
management, and use
• Ad hoc query capability (SQL)
• Powerful database management system

– Disadvantages
• Substantial hardware and system software
overhead
• Possibility of poor design and implementation
• Potential “islands of information” problems
39
A Relational Schema

40
Entity-Relationship Data
Model
• Entity-Relationship Data Model
– It is one of the most widely
accepted graphical data modeling
tools.
– It graphically represents data as
entities and their relationships in
a database structure.
– It complements the relational data
model concepts. 41
Entity-Relationship Data
Model
• Entity Relationship Data Model
– Basic Structure
• E-R models are normally
represented in an entity
relationship diagram (ERD).
• An entity is represented by a
rectangle.
• Each entity is described by a set
of attributes. An attribute
describes a particular
characteristics of the entity.
• A relationship is represented by
a diamond connected to the
42
related entities.
The ER Diagram

 Complements the relational data model concepts


 Represented in an entity relationship diagram (ERD)
 Based on entities, attributes, and relationships

43
Entity-Relationship Data
Model
• Entity-Relationship Data Model
– Advantages
• Exceptional conceptual simplicity
• Visual representation
• Effective communication tool
• Integrated with the relational database model

– Disadvantages
• Limited constraint representation
• Limited relationship representation
• No data manipulation language
• Loss of information content

44
Types of Database Data
Models - Object Oriented
• Object-Oriented Database Model
– Basic Structure
• Objects are abstractions of real-world
entities or events.
• Attributes describe the properties of an
object.
• Objects that share similar characteristics
are grouped in classes.
• A class is a collection of similar objects with
shared structure (attributes) and behavior
(methods).
• Classes are organized in a class hierarchy. 45


Types of Database Data

Models - Object Oriented
Object-Oriented Database Model
– Characteristics
• An object is described by its factual
content.
• An object includes information about
relationships between the facts within
the object, as well as with other
objects.
• An object is a self-contained building
block for autonomous structures.
46
Types of Database Data

Models - Object Oriented
Object-Oriented Database Model
– Advantages
• Add semantic content
• Visual presentation includes semantic content
• Database integrity
• Both structural and data independence
– Disadvantages
• Lack of OODM standards
• Complex navigational data access
• Steep learning curve
• High system overhead slows transactions
47
A Comparison: The OO Data Model and
the ER Model

48
Centralized Versus Decentralized
Database Systems

• Centralized Database with remote Access


– All processing to support the database
system is performed on a central
computer. Only input/output functions
are performed remotely.
(If PCs are used for remote access
they operate in terminal emulation
mode and do not perform
processing)
49
Centralized Database with Remote
Access

Terminal Terminal
Only I/O Only I/O
Central DB done here
done here
Computer
All processing
related to DB
Terminal System done
Terminal
here
Only I/O
Only I/O
done here
done here
Centralized Versus Decentralized
Database Systems

• Centralized Database with remote Access


– All processing to support the database system
is performed on a central computer. Only
input/output functions are performed
remotely.
• Client-Server Database
– All data reside on a central server
– Core database management processing is
performed on server
– Application files and processing to request
data, manipulate results and manage the user
interface is performed on client computers
51
Client-Server Database System

Client Comp Server


Client Comp
Computer
Syntax checks All Database Syntax checks
of SQL stmts. access, retrieval of SQL stmts.
Manipulation and, manipula- Manipulation
- presentation tion processes - presentation
of retrieved performed here of retrieved
data done here data done here
References

ROB, P. AND CORONEL, C., 2004, Database


Systems. 6th Ed., Thomson Course Technology

53