You are on page 1of 39

CHAPTER 1.

3:
FUNDAMENTALS OF DATABASE DFC 2083
Database Design
MANAGEMENT SYSTEM
LEARNING OUTCOME
1. Data Model
2. Three-level scheme architecture of DBMS
3. Client-server architecture of DBMS
4. Users of DBMS

2
DATA MODEL
A database model shows the logical structure of a
database, including the relationships and constraints that
determine how data can be stored and accessed.
Individual database models are designed based on the
rules and concepts of whichever broader data model the
designers adopt.

3
RELATIONAL MODEL

7
HIERARCHICAL MODEL

9
NETWORK MODEL

11
THE OBJECT-ORIENTED MODEL

14
THREE LEVEL ARCHITECTURE

The 3-level program is organized into three major


parts. Also known as ANSI-SPARC/Three Level
Architecture. Each of which is distributed to a
different place or places in a network. The three
parts are:
 The workstation or presentation interface
 The business logic
 The database and programming related to managing it

16
THREE LEVEL ARCHITECTURE OF DBMS

Figure 2: The Three Level Architecture (ElMasri & Navathe, 2011)


17
THREE LEVEL ARCHITECTURE OF DBMS

Defines DBMS schemas at three levels:


 External schemas at the external level to describe the
various user views. Usually uses the same data model as
the conceptual level.
 Conceptual schema at the conceptual level to describe
the structure and constraints for the whole database for
a community of users. Uses a conceptual or an
implementation data model.
 Internal schema at the internal level to describe physical
storage structures and access paths. Typically uses a
physical data model.
18
EXTERNAL SCHEMA
Used to describe the various user views. It is tailored to
the needs of a particular category of users.
Portions of stored data should not be seen by some users
and begins to implement a level of security and simplifies
the view for these users.
Examples:
Students should not see faculty salaries.
Faculty should not see billing or payment data

19
CONCEPTUAL SCHEMA
Conceptual level describes the structure of the whole
database for a group of users.
Conceptual schema is a representation of the entire
content of the database
These schema contains all the information to build
relevant external records
It hides the internal details of physical storage.

20
INTERNAL SCHEMA
This level is very close to physical storage of data.
At lowest level, it is stored in the form of bits with the
physical addresses on the secondary storage device.
The internal schema defines the various stored data
types. It uses a physical data model.

21
THREE LEVEL ARCHITECTURE OF DBMS

22
CLIENT-SERVER ARCHITECTURE

A networked computing model that distributes


processes between clients and servers which
supply requested services.
Client - Workstation (usually a PC) that requests
and uses a service
Server - Computer (PC/mini/mainframe) that
provides a service

23
CLIENT-SERVER ARCHITECTURE OF DBMS

Figure 3: Client
Server Architecture

24
CLIENT-SERVER ARCHITECTURE OF DBMS

To improve performance and availability of data, the


client–server architecture supports many ways to
distribute software and data in a computer network.
Client–server architectures provide a flexible way for
DBMSs to interact with computer networks.
The simplest scheme is just to place both software and
data on the same computer, Figure 3(a).
In Figure 3(b), the server software and database are
located on a remote computer.
In Figure 3(c), the server software and the database
are located on multiple remote computers.
25
FILE-SERVER ARCHITECTURE
A file server is a computer responsible for the central
storage and management of data files so that other
computers on the same network can access the files.
A file server allows users to share information over a
network without having to physically transfer files by
external storage device.
Any computer can be configured to be a host and act
as a file server. In its simplest form, a file server may
be an ordinary PC that handles requests for files and
sends them over the network.

26
FILE-SERVER ARCHITECTURE

27
DATABASE-SERVER ARCHITECTURE
In database server environment, DBMS runs all of the
actual processing associated with database access.
The database server carries out the tasks initiated by
client requests directed to the database. It is built on
a multithreaded architecture and ensures data
integrity, concurrency control, and the ability to
recover from failures.
The database server also maintains the data
dictionary which defines the structure and contents of
the database. The database client performs all the
processing not associated with database access.
28
DATABASE-SERVER ARCHITECTURE

29
CATEGORIES OF DBMS
Desktop Databases are designed to run on “desktop” (or
personal) computers and its offer an inexpensive, simple
solution to many less complex data storage and
manipulation requirements.
Server Databases offer organizations the ability to
manage large amounts of data efficiently and enables
many users to access and update the data simultaneously.
Although its pricey, a server-based database can provide
a comprehensive data management solution.
CATEGORIES OF DBMS
Desktop Database Server Database
Microsoft Access Oracle

Fox Pro Microsoft SQL Server

FileMaker Pro IBM DB2

Paradox Open Source :


MySQL, Firebird, PostgresSQL
Lotus
BENEFITS OF DESKTOP DATABASE
Easy Management
 Simple functionality to modify and maintain the database

Low Running Cost


 No need for extra hardware support
 No need to hire expertise

Easy to use
 No advance technical knowledge is needed
 Programs are normally very intuitive and easy to learn.
BENEFITS OF SERVER DATABASE

Increase Scalability
 any element can be upgraded when needed

Increase Flexibility
 new technology can be easily integrated into the system

Increase Accessibility
 server can be accessed remotely and across multiple platforms
BENEFITS OF SERVER DATABASE
Increase performance
 Different CPU’s process application in parallel
 Easier to tune the server machine since the task is only to perform database
processing

Increase Consistency
 Centralization - access, resources, and data security are controlled through
the server.
THINGS TO CONSIDER TO SELECT DBMS
1. Data Model
2. Number of user
3. Number of sites
4. Cost
5. Purpose
DATA MODEL
Types of data model:
 Hierarchy
 Network
 Relational
 Object-oriented

Current commercial database used relational data model.


Object oriented – has been implemented but not had
widespread use.
NUMBER OF USERS

Single user – support only one user at one time


Multi user – support multiple use at one time
NUMBER OF SITES

Centralized
 Data is stored at a single computer site.
 DBMS can support multiple user, but the DBMS and the
database reside totally at a single computer site.

Distributed
 Can have many the actual database and DBMS software
distributed over many sites, connected by a computer
network.
COST

Quite difficult to propose any type of DBMS


based on cost which provide different type of
services.
Open source product : MySQL, PostgrSQL
PURPOSE
General Purpose :
 Does not include many transactions

Special Purpose:
 Require many transaction.
 When performance is primary consideration, a special purpose of DBMS
can be design.
 Online Transaction Processing (OLTP) system which support large number
of concurrent processing without imposing excessive delay
 Example: Airline Reservation System
COMPARISON BETWEEN DBMS
DBMS Operating Estimated Transaction Interface Max DB size
System Price Support
Oracle Window $40000 - Yes GUI Unlimited
Mac $12800 SQL
Unix
IBM DB2 Window $25000 - Yes GUI 512 TB
Mac $800000 SQL
Unix
SQL Server Window Yes GUI 524258 TB
SQL
MySQL Window Open Source Yes GUI 256 TB
Linux SQL
Mac
Solaris
Netware
Microsoft Window Package with GUI 2G
Access Microsoft SQL
products
USERS OF DBMS
End Users
End users are those who access the database from the terminal end.
They use the developed applications and they don’t have any
knowledge about the design and working of database. These are the
second class of users and their main motto is just to get their task done.
There are basically two types of end users:
 Casual User
 These users have great knowledge of query language. Casual users access data by
entering different queries from the terminal end. They do not write programs but
they can interact with the system by writing queries.
 Naive
 Any user who does not have any knowledge about database can be in this
category. Their task is to just use the developed application and get the desired
results.

42
USERS OF DBMS
Application Programmers - Application programmers are the one
who writes application programs that uses the database. These
application programs are written in programming languages like
COBOL or PL (Programming Language 1), Java and fourth generation
language. These programs meet the user requirement and made
according to user requirements. Retrieving information, creating new
information and changing existing information is done by these
application programs.
Administrative DBA - This DBA is mainly concerned with installing,
and maintaining DBMS servers. His prime tasks are installing, backups,
recovery, security, replications, memory management, configurations
and tuning. He is mainly responsible for all administrative tasks of a
database.

43
CONTRIBUTION OF DATABASE TECHNOLOGY TO SOCIETY

Reduced Application Development Time


 Less time to create new application using DBMS.
 Example: Print report, Retrieve Data

Flexibility
 Allow evolutionary changes to the structure of database without
affecting the stored data and existing application.
CONTRIBUTION OF DATABASE TECHNOLOGY TO SOCIETY

Availability of Up-to-Date Information


 Available to all user
 As soon as update apply, it is available to all users.

Economic of Scale
 DBMS can be shared among various department and activities thus
reduced the data redundancy
GROUP DISCUSSION
You are responsible for selecting a new DBMS product for a group of
users in your organization. How should you do about evaluating and
selecting the best DBMS product?
CROSSWORD PUZZLE

47