Course Contents
- Course Objectives /Contents, and Reminding System Analysis, SDLC,
System Modeling,
- System Design Phase,
- The System Technical Architecture,
- The Input Design,
- The Output Design,
- The Interface Design,
- The Data Storage Design,
- The Program Design,
1
Database Design
• Introduction to Data Storage
• Flat Files Data Storage Approach
• Database Approach
• Types of Database Systems
• Data Modeling
• Concepts to Distributed Database
• Introduction to Big Data
2
3. Database Approach
3.1 Introduction
3.2 Who makes this database software?
3.3 Database Design Objectives
3.4 Basic Characteristics of Database models
3.5 Components of the Database System Environment
3.6 Advantages of DBMS
3.7 Disadvantages of DBMS
3.8 When not to Use a DBMS
3.9 Technical Requirement from DBMS
3
3. Database Approach
3. Database Approach
3.1 Introduction
Database approach has been found to store organization’s all data in one pool,
and allow different views for individual user, with each view can have:
• Its data attributes.
• Its security rules applied.
• Accessing strategy.
• ...
While, operating system controls and manages the file processing system in
Flat file systems, the database approach can be controlled and managed by
means of Database Management System, DBMS.
The following are main examples of database applications:
• Hospital Information System
• Bank Accounts Information System
• Computerized library systems
• Automated teller machines
• Flight reservation systems
• Computerized inventory systems
4
• …
3. Database Approach
3. Database Approach
Database Management System, DBMS
• Is a system software that allows users to define, create, update, extract and
maintain a database and provides controlled access to the data.
• Is basically a collection of programs that enables users to store, modify, and
extract information from a database as per the requirements.
• Is an intermediate layer between programs and the data. Programs access
the DBMS, which then accesses the data.
• There are different types of DBMS ranging from small systems that run
on personal computers to huge systems that run on mainframes.
• It allows speed, accuracy, accessibility, ….
5
3. Database Approach
3. Database Approach
Examples of Database management systems in the market are:
• Dbase DBMS,
• FoxPro DBMS,
• Oracle DBMS,
• MySQL DBMS,
• SQL Servers and
• DB2 DBMS,
• ….
6
3. Database Approach
3.1 Who makes this database software?
Relational Data Model, initial version
E.F. Codd of the IBM Research Laboratory
First-generation DBMS
Data Base Task Group (DBTG)
Network DBMS
Commercial Relational DBMS
GUAM
System R project at IBM's San Jose Research Laboratory in
IDS (Integrated Data Store)
California
General Electric
Generation of:
Structure query language called SQL
Hierarchical structure DB2 from IBM
IMS (Information Management System) SQL/DS from Oracle Corporation
IBM
Entity-Relationship model
Hierarchical structure
Chen
GUAM
RM/V1 relational model
(Generalized Update Access Method)
E.F. Codd of the IBM
Apollo moon-landing project RM/V2 relational model
North American Aviation, NAA, E.F. Codd of the IBM
now Rockwell International
1960 1965 1970 1975 1980 1985 1990
7
3. Database Approach
3.3 Database Design Objectives:
Making data available
Data should be available when the user needs them
Assuring data integrity
Data integrity means data accuracy and consistency
Supporting efficient storage, retrieval, and update
Stored data must be in a form that is useful for managing, planning, controlling,
or decision making.
3. Database Approach
3.4 Basic Characteristics of Database models
3.3.1 Hierarchical Model
It is characterized by:
- It may be made up of many one-to-many or one-to-one relations.
- Other relations such as many-to-one or many-to-many are not allowed.
- It means any ordinate entity can have only one owning entity.
-Sometimes, it is called tree structure
The disadvantage is the difficulty to access any ordinate entity, it can only
done by searching all owners and their ordinate entities
Entity
Entity Entity Entity
Entity Entity Entity Entity Entity Entity Entity
9
3. Database Approach
3.4 Basic Characteristics of Database models
3.3.2 Network Model
It allows any entity to have any number from sub ordinates or superiors.
Entitles are connected using network links, which are data items common
to both of the connected entities.
The disadvantage is the more complexity of the structure.
P1 Record Data P2 Record Data
P1 P2 Record Data P1 P2 Record Data P1 P2 Record Data
10
3. Database Approach
3.4 Basic Characteristics of Database models
3.3.3 Relational Model
It characterized by:
• It consists of one or more two-dimensional tables, which are referred to as relations.
• The two-dimensional tables have inter-relationships with each other.
• The rows of the table represent records called tuples.
• And the columns represent attributes.
• The attribute value set is called a domain.
• This structure is easy for maintenance, accessing using queries which - can be handled
efficiently.
(Physician-Name
Physician
Physician
Physician-Address
Physician-Phone Treats
Specialty)
Is taken care of by Experiences
(Patient-Name (Product-Name
Patient
Physician Treatment
Physician
Patient-Address Is given to Patient-Name
Patient-Phone Subscribes to Includes Description
Date-First-Visit) Date, Symptom)
Insures Belongs to (Product-Name
(Carrier-Name Insurance Dosage, Manufacturer,
Physician Prescription
Physician Amount)
Carrier-Address Carrier
Plan-Description) 11
3. Database Approach
3.5 Components of the Database System Environment
There are five major components in the database system environment
and their interrelationships, they are:
• Hardware
• Software
• Procedures
• Data
• Users
12
3. Database Approach
3.5 Components of the Database System Environment
• Hardware:
o It is the actual computer system used for keeping and accessing the database.
o It consists of secondary storage devices, usually hard disks, on which the
database physically resides, together with the associated Input-Output devices,
device controllers and so forth.
o It runs on a range of machines, from Microcomputers to large mainframes.
o Other hardware issues for a DBMS includes database machines, which is
hardware designed specifically to support a database system.
• Software:
o It is the DBMS.
o It is the layer between the physical database itself (i.e. the data as actually
stored) and the users of the system (applications).
o All requests from users for access to the database are handled by the DBMS.
o It is the shielding of database users from complex hardware-level detail.
o It allows the users to communicate with the database, controls the access and
helps to maintain the consistency of the data.
13
3. Database Approach
3.5 Components of the Database System Environment
• Procedures:
o Procedures refer to the instructions and rules that govern the design and use of the
database.
o The users of the system and the staff that manage the database require documented
procedures on how to use or run the system.
These may consist of instructions on how to:
o Log on to the DBMS.
o Use a particular DBMS facility or application program.
o Start and stop the DBMS.
o Make backup copies of the database.
o Handle hardware or software failures.
14
3. Database Approach
3.5 Components of the Database System Environment
• Data (database):
o It is the most important component of DBMS environment from the end users point
of view.
o The database should contain all the data needed by the organization.
o One of the major features of databases is that the actual data are separated from the
programs that use the data (No dependency between them).
• Users :
o There are a number of users who can access or retrieve data on demand using the
applications and interfaces provided by the DBMS.
o The users of a database system can be classified in the following groups, depending on
their degrees of expertise or the mode of their interactions with the DBMS. The users
can be:
Users
Application Programmers
Data Base Administrator (DBA)
15
3. Database Approach
3.5 Components of the Database System Environment
o Users: users of a database system
They are end users of the database who work through a menu driven
application program.
A user of an Automatic Teller Machine (ATM) falls in this category.
The user is instructed through each step of a transaction.
He or she then responds by pressing a coded key or entering a numeric or
alphabetic value.
In this case, user's action affects only one or more of his/her own accounts.
o Application Programmers: users of a database system
Professional programmers are those who are responsible for developing
application programs or user interface, written using general purpose
programming language or the commands available to manipulate a database.
16
3. Database Approach
3.5 Components of the Database System Environment
o Database Administrator, DBA: users of a database system
DBA is the person or group of persons who are in charge for implementing
the database system, within an organization.
DBA is also responsible for defining the data view for each user in the system
or organization.
DBA has all the system privileges allowed by the DBMS and can assign (grant)
and remove (revoke) levels of access (privileges) to and from other users.
DBA is also responsible for the evaluation, selection and implementation of
DBMS package.
DBA is also responsible for setting security features for the whole database
and for individual users.
DBA is also responsible for setting backup and recovery policies.
17
End
18