Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Chapter 1 Introduction Data Base

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 76

Chapter One

Fundamentals of
Database Systems
Chapter 1 - Objectives
Some common uses of database systems.
Characteristics of file-based systems.
Problems with file-based approach.
Meaning of the term database.
Meaning of the term Database Management System (DBMS).
Typical functions of a DBMS.
Major components of the DBMS environment.
Personnel involved in the DBMS environment.
Generations of the development of DBMSs.
Advantages and disadvantages of DBMSs.

2 Introduction to Database Systems (INSY2061) 04/10/2021


Chapter 1 - Objectives Cont’d…
Purpose of three-level ANSI-SPARC database
architecture.
Contents of external, conceptual, and internal levels.
Purpose of external/conceptual and conceptual/internal
mappings.
Meaning of logical and physical data independence.

Distinction between DDL,DCL,TCL and DML.


A classification of data models.
Architecture for Multi-User Database System

3 Introduction to Database Systems (INSY2061) 04/10/2021


Database systems
Today, Databases are essential to every
business. They are used to maintain
internal records, to present data to
customers and clients on the World-
Wide-Web, and to support many other
commercial processes.
Databases are likewise found at the
core of many modern organizations.

4 Introduction to Database Systems (INSY2061) 04/10/2021


Examples of Database Applications
Purchases from the supermarket
Purchases using your credit card
Booking a holiday at the travel agents
Using the local library
Taking out insurance
Renting a video
E- Commerce
Banking, Insurance and other Financial Systems
Social media (in general the WWW)

5 Introduction to Database Systems (INSY2061) 04/10/2021


Data Handling Approaches in
Organizations
Data management passes through different levels
of development along with the development in
technology and services. These levels could best be
described by categorizing the levels into three
levels of development. Even though there is an
advantage and a problem to overcome at each new
level, all methods of data handling are in use even
today to some extent. The major three levels are;
 Manual Approach
 Traditional File Based Approach
 Database Approach

6 Introduction to Database Systems (INSY2061) 04/10/2021


Manual Approach
Cards and paper are used for the purpose
Files for as many event and objects as the organization has are used to store
information.
Each of the files containing various kinds of information is labelled and stored in one or
more cabinets.
The cabinets could be kept in safe places for security purpose based on the sensitivity of
the information contained in it ( Cabinet Lockers).
Insertion and retrieval is done by searching first for the right cabinet then for the right
the file then the information.
One could have an indexing system to facilitate access to the data
Limitations of the Manual approach
Prone to error
Difficult to update, retrieve, integrate
You have the data but it is difficult to compile the information
Limited to small size information
Cross referencing is difficult

7 Introduction to Database Systems (INSY2061) 04/10/2021


File-Based Systems
Collection of application programs that perform services
for the end users (e.g. reports).

Each program defines and manages its own data.


A file is simply a collection of records, which contains
logically related data.
Each record contains a logically connected set of one
or more fields, where each field represents some
characteristic of the real-world object that is being
modeled.

8 Introduction to Database Systems (INSY2061) 04/10/2021


File-Based Processing

9 Introduction to Database Systems (INSY2061) 04/10/2021


Limitations of File-Based Approach
Separation and isolation of data
Each program maintains its own set of data.
Users of one program may be unaware of
potentially useful data held by other programs.

Duplication of data (Uncontrolled Redundancy)


Same data is kept by different programs.
Wasted space and potentially different values
and/or different formats for the same item.

10 Introduction to Database Systems (INSY2061) 04/10/2021


Limitations of File-Based Approach
Data dependence (Program Data Dependence)
File structure is defined in the program code.
Any change in the data structure need to changes the program as
well

Incompatible file formats


Programs are written in different languages, and so cannot easily
access each other’s files. (C, COBOL) – Data Structures are
different for different Languages

Fixed Queries/Proliferation of application programs


Programs are written to satisfy particular functions.
Any new requirement needs a new program.

11 Introduction to Database Systems (INSY2061) 04/10/2021


Database Approach
Problems of file approach arose because:
Definition of data was embedded in application programs,
rather than being stored separately and independent of the
applications.
No control over access and manipulation of data beyond
that imposed by application programs.

Solution(Result):
The database and Database Management System (DBMS).
This approach solves the problems of the File-based
Approach

12 Introduction to Database Systems (INSY2061) 04/10/2021


Database
Shared collection of logically related data and a
description of this data, designed to meet the
information needs of an organization.

System catalogue (metadata) provides description


of data to enable program–data independence.

Logically related data comprises entities,


attributes, and relationships between entity of an
organization’s information.

13 Introduction to Database Systems (INSY2061) 04/10/2021


Database Management System (DBMS)
A software system that enables users to define,
create, maintain, and control access to the
database.

(Database) application program: a computer


program that interacts with database by issuing an
appropriate request (SQL statement) to the DBMS.

14 Introduction to Database Systems (INSY2061) 04/10/2021


Database Management System (DBMS)

15 Introduction to Database Systems (INSY2061) 04/10/2021


Database Approach Cont’d…..
Structured Query Languages (SQL)- is the formal
and de facto Standard for RDBMS
Having a query facility alleviates the Problem of fixed
query/application proliferation in file base approach.
DBMSs Provides Four types of SQL Statements
DDL (Data Definition Language)
DML (Data Manipulation Language)
DCL (Data Control Language)
TCL (Transaction Control Language)

16 Introduction to Database Systems (INSY2061) 04/10/2021


Database Approach Cont’d…
Data definition language (DDL).
 Permits specification of data types, structures and any data
constraints.
 All specifications are stored in the database.
 Enables the Creation, Alteration and Removal of a Database
Object
Data manipulation language (DML).
 General enquiry facility (query language -retrieval) of the
data.
 In addition to querying, we can also have manipulation of
Data (Adding New info, Updating info, Deleting info)

17 Introduction to Database Systems (INSY2061) 04/10/2021


Database Approach Cont’d…
DCL (Data Control Language)
DCL statements control the level of access that users have on
database objects.
 GRANT – allows users to read/write on certain database objects
 REVOKE – keeps users from read/write permission on database objects
TCL (Transaction Control Language)
TCL statements allow you to control and manage
transactions to maintain the integrity of data within SQL
statements.
BEGIN Transaction – opens a transaction
COMMIT Transaction – commits a transaction
ROLLBACK Transaction – ROLLBACK a transaction in case of any
error

18 Introduction to Database Systems (INSY2061) 04/10/2021


Database Approach– Access Control
Controlled access to database may
include: (User/Role- definition, Privilege
Assignment/Revocation, Access
Enforcement )
a security system
an integrity system
a concurrency control system
a recovery control system
a user-accessible catalogue.

19 Introduction to Database Systems (INSY2061) 04/10/2021


Data base Views
The Database Approach( with all the
functionalities stated above) introduces a little
complexity on part of the end user.
Although the Database is a shared collection, users
are interested in their specific data needs
A view allows each user to have his or her own view
of the database.
A view is essentially some subset of the database.
Data Irrelevant to a user is not at all visible

20 Introduction to Database Systems (INSY2061) 04/10/2021


Views - Benefits
Reduce complexity
Provide a level of security
Provide a mechanism to customize the appearance
of the database
Present a consistent, unchanging picture of the
structure of the database, even if the underlying
database structure is changed ( Abstraction)

21 Introduction to Database Systems (INSY2061) 04/10/2021


Components of DBMS Environment

In A DBMS Environment there are Five basic Components


• Hardware
• Software
• Data
• Procedure
• People
22 Introduction to Database Systems (INSY2061) 04/10/2021
Components of DBMS Environment
Hardware
Can range from a PC to a network of computers.
Includes all the necessary input, output , storage
and backup devices
Software
DBMS, operating system, network software (if
necessary) and also the database application
programs.
Data
Data used by the organization and a description of this
data called the schema(Metadata).

23 Introduction to Database Systems (INSY2061) 04/10/2021


Components of DBMS Environment
Procedures
Instructions and rules that should be applied to
the design and use of the database and DBMS.
People
Different Roles taken by people while designing and
using a Database systems

24 Introduction to Database Systems (INSY2061) 04/10/2021


Roles in the Database Environment
Data Administrator (DA)
 Responsible on management of data resources. This
involves in database planning, development, maintenance
of standards, policies and procedures at the conceptual
and logical design phases.
Database Administrator (DBA)
This is more technically oriented role. DBA is responsible
for the physical realization of the database. It is involved
in physical design, implementation, security and integrity
control of the database.
Also deals with Optimizing the performance of the system

25 Introduction to Database Systems (INSY2061) 04/10/2021


Database Designers
Database Designers (Logical and Physical)
Identifies the data to be stored and choose the
appropriate structures to represent and store the data.
Should understand the user requirement and should
choose how the user views the database.
Involve on the design phase before the implementation
of the database system.
We have two distinctions of database designers, one
involving in the logical &conceptual design and
another involving in physical design.

26 Introduction to Database Systems (INSY2061) 04/10/2021


Database Designers- Cont’d…
Logical and Conceptual DBD
 Identifies data (entity, attributes and relationship) relevant to the
organization
 Identifies constraints on each data
 Understand data and business rules in the organization
 Sees the database independent of any data model at conceptual level
and consider one specific data model at logical design phase.
Physical DBD
 Take logical design specification as input and decide how it should be
physically realized.
 Map the logical data model on the specified DBMS with respect to
tables and integrity constraints. (DBMS dependent designing)
 Select specific storage structure and access path to the database
 Design security measures required on the database

27 Introduction to Database Systems (INSY2061) 04/10/2021


Application Programmers
System analyst determines the user requirement and
how the user wants to view the database.
The application programmer implements these
specifications as programs; code, test, debug,
document and maintain the application program.
The application programmer determines the
interface on how to retrieve, insert, update and
delete data in the database.

28 Introduction to Database Systems (INSY2061) 04/10/2021


End Users
Naïve Users:
 Sizable proportion of users
 Unaware of the DBMS
 Only access the database based on their access level and demand
 Use standard and pre-specified types of queries.
Sophisticated Users
 Users familiar with the structure of the Database and facilities of the DBMS.
 Have complex requirements
 Have higher level queries
 Are most of the time engineers, scientists, business analysts, etc
Casual Users
 Users who access the database occasionally.
 Need different information from the database each time.
 Use sophisticated database queries to satisfy their needs.
 Are most of the time middle to high level managers

29 Introduction to Database Systems (INSY2061) 04/10/2021


Generation of Database Systems
First-generation
Hierarchical and Network

Second generation
Relational

Third generation
Object-Relational
Object-Oriented

30 Introduction to Database Systems (INSY2061) 04/10/2021


Advantages of DBMSs
Control of data redundancy
Data consistency
More information from the same amount of data
Sharing of data
Improved data integrity
Improved security
Enforcement of standards
Economy of scale

31 Introduction to Database Systems (INSY2061) 04/10/2021


Advantages of DBMSs
Balance conflicting requirements
Improved data accessibility and responsiveness
Increased productivity
Improved maintenance through data independence
Increased concurrency
Improved backup and recovery services

32 Introduction to Database Systems (INSY2061) 04/10/2021


Disadvantages of DBMSs
Complexity
Size ( in terms of storage space and memory
required)
Cost of DBMS
Additional hardware costs(Computers, storage)
Cost of conversion( Data, Application, Training
Users)
Performance ( Since DBMSs are generic solutions)
Higher impact of a failure ( since it is centralized)

33 Introduction to Database Systems (INSY2061) 04/10/2021


ANSI-SPARC Three-Level Architecture

34 Introduction to Database Systems (INSY2061) 04/10/2021


ANSI-SPARC Three-Level Architecture
External Level
Users’ view of the database.
Describes that part of database that is relevant to a
particular user.

Conceptual Level
Community view of the database.
Describes what data is stored in database and
relationships among the data.

35 Introduction to Database Systems (INSY2061) 04/10/2021


ANSI-SPARC Three-Level Architecture
Internal Level
Physical representation of the database on the
computer.
Describes how the data is stored in the database.
This is how the OS and DBMS view Data

36 Introduction to Database Systems (INSY2061) 04/10/2021


Differences between Three Levels of
ANSI-SPARC Architecture

37 Introduction to Database Systems (INSY2061) 04/10/2021


Objectives of Three-Level ANSI-SPARC
Architecture
All users should be able to access same data.

A user’s view is immune to changes made in other


user’s views.

Users should not need to know physical database


storage details.

38
Introduction to Database Systems (INSY2061) 04/10/2021
Objectives of Three-Level ANSI-SPARC
Architecture
DBA should be able to change database storage
structures without affecting the users’ views.

Internal structure of database should be unaffected


by changes to physical aspects of storage.

DBA should be able to change conceptual structure


of database without affecting all users.

Introduction to Database Systems (INSY2061)


39 04/10/2021
ANSI-SPARC Data Independence
Main Concept is Upper layers are immune to
changes in the lower layers
Logical Data Independence
Refers to immunity of external schemas to changes in
conceptual schema.
Conceptual schema changes (e.g. addition/removal of
entities) should not require changes to external
schema or rewrites of application programs.
Obviously particular users will be affected but not all
users

40 Introduction to Database Systems (INSY2061) 04/10/2021


Data Independence
Physical Data Independence
Refers to immunity of conceptual schema to changes in
the internal schema.
Internal schema changes (e.g. using different file
organizations, storage structures/devices) should not
require change to conceptual or external schemas.

41 Introduction to Database Systems (INSY2061) 04/10/2021


Schema Mapping- Provision for Data
Independence
ANSI-SPARC has three Layers of Describing
Organizational Data
The DBMS is responsible for mapping between these three
types of schema.
External/Conceptual Mapping
This enables the DBMS to map names in the user’s view on to
the relevant part of the conceptual schema.
Conceptual/Internal Mapping
This enables the DBMS to find the actual record or combination
of records in physical storage that constitute a logical record in
the conceptual schema, together with any constraints to be
enforced on the operations for that logical record.

42 Introduction to Database Systems (INSY2061) 04/10/2021


Data Independence and the ANSI-SPARC
Three-Level Architecture

43 Introduction to Database Systems (INSY2061) 04/10/2021


Database Manipulation Languages
Data Manipulation Language (DML)
Provides basic data manipulation operations on data
held in the database.
Procedural DML
allows user to tell system exactly how to manipulate
data.
Non-Procedural DML
allows user to state what data is needed rather than
how it is to be retrieved.
Fourth Generation Languages (4GLs)
Automated CASE tools

44 Introduction to Database Systems (INSY2061) 04/10/2021


Data Model
A Definition: 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.
Can have Three types of Models ( In-line with ANSI-SPARC)
1. an external data model, to represent each user’s view of
the organization, sometimes called the Universe of
Discourse (UoD);
2. a conceptual data model, to represent the logical (or
community) view that is DBMS independent;
3. an internal data model, to represent the conceptual schema
in such a way that it can be understood by the DBMS.
45 Introduction to Database Systems (INSY2061) 04/10/2021
Data Model
Purpose
To represent data in an understandable way.

Categories of data models include:


Object-based
Record-based
Physical.

46 Introduction to Database Systems (INSY2061) 04/10/2021


Data Models
Object-Based Data Models-
 based on the concept of Entity (distinct object)
 Entity-Relationship- Considers only the data aspect
 Object-Oriented- considers both data and behaviour.

Record-Based Data Models (Hierarchical, Network and

Relational)
 based on fixed format records
 Each record has fixed number of fields

 Each field is of a fixed length(Number of Characters)

Physical Data Models

 Models for describing physical storage characteristics

47 Introduction to Database Systems (INSY2061) 04/10/2021


Hierarchical Data Models
 Record type is referred to as node or segment
 The top node is the root node
 Nodes are arranged in a hierarchical structure as sort of
upside down tree
 A parent node can have more than one child node
 A child node can only have one parent node
 The relationship between parent and child is one-to-many
 Relation is established by creating physical link between
stored records (implemented as pointer)
 To add new record type or relationship, the database
must be redefined and then stored in a new form.

48 Introduction to Database Systems (INSY2061) 04/10/2021


Hierarchical Data Model

49 Introduction to Database Systems (INSY2061) 04/10/2021


Network Data model
Allows record types to have more than one parent
unlike hierarchical model
 A network data models sees records as set
members
Each set has an owner and one or more members
Allows many to many relationship between
entities(Parent and Child)
Like hierarchical model network model is a
collection of physically linked records.
Allow member records to have more than one
owner
50 Introduction to Database Systems (INSY2061) 04/10/2021
Network Data Model

Department Job

Employee
Activity

Time Card

51 Introduction to Database Systems (INSY2061) 04/10/2021


1st Generation Data Models
Hierarchical and Network
Navigational and procedural approach to
data processing
Need to know the physical Database to access
the data
Treat records as individual objects linked
with pointers i.e. cannot process in sets

52 Introduction to Database Systems (INSY2061) 04/10/2021


Relational Data Model (2nd Gen.)
‘Relational Model for Large Shared Data Banks‘ famous paper of Dr. Edgar
F. Codd
Terminologies originates from the branch of mathematics called set theory
and predicate logic and is based on the mathematical concept called Relation
Can define more flexible and complex relationship
Viewed as a collection of tables called “Relations” equivalent to collection of
record types
Relation: Two dimensional table
Stores information or data in the form of tables  rows and columns
A row of the table is called tuple equivalent to record
A column of a table is called attribute equivalent to fields
Data value is the value of the Attribute
Records are related by the data stored jointly in the fields of records in two
tables or files. The related tables contain information that creates the
relationship
Uses Declarative ( as Opposed to Procedural) approach to Database
Processing
Can Treats Records as a Group (Set)

53 Introduction to Database Systems (INSY2061) 04/10/2021


Relational Data Model

54 Introduction to Database Systems (INSY2061) 04/10/2021


Physical Data Models
Used in Internal Database Design
 structure / Class/ Type Def
Eg. Frame Memory, Unifying Model

55 Introduction to Database Systems (INSY2061) 04/10/2021


Conceptual Modelling
Conceptual schema is the core of a system
supporting all user views.
Should be complete and accurate representation of
an organization’s data requirements.
Conceptual modelling is process of developing a
model of information use in an organization that is
independent of implementation details such as the
target DBMS, application programs, programming
languages, or any other physical considerations.
Result is a conceptual data model.

56 Introduction to Database Systems (INSY2061) 04/10/2021


Logical Modeling
Conceptual models are also referred to as logical
models in some literature.
However, critically speaking, we make a distinction
between conceptual and logical data models.
The conceptual model is independent of all
implementation details, whereas the logical data
model assumes knowledge of the underlying data
model of the target DBMS.

57 Introduction to Database Systems (INSY2061) 04/10/2021


Functions of a DBMS
Data Storage, Retrieval, and Update.

A User-Accessible Catalog.

Transaction Support.

Concurrency Control Services.

Recovery Services.

58 Introduction to Database Systems (INSY2061) 04/10/2021


Functions of a DBMS
Authorization Services.

Support for Data Communication.

Integrity Services.

Services to Promote Data Independence.

Utility Services( Import/Export, Task Scheduler, …


etc)

59 Introduction to Database Systems (INSY2061) 04/10/2021


System Catalog
Repository of information (metadata) describing
the data in the database.
One of the fundamental components of DBMS.
Typically stores:
names, types, and sizes of data items;
constraints on the data;
names of authorized users;
data items accessible by a user and the type of access;
usage statistics.

60 Introduction to Database Systems (INSY2061) 04/10/2021


Components of a DBMS

61 Introduction to Database Systems (INSY2061) 04/10/2021


Components of Database Manager (DM)

62 Introduction to Database Systems (INSY2061) 04/10/2021


Multi-User DBMS Architectures
There are Common architectures that are used to
implement multi-user database management
systems.
We will see the following
Teleprocessing,
File-server, and
Client–server.

63 Introduction to Database Systems (INSY2061) 04/10/2021


Tele-Processing
The traditional architecture for multi-user systems was
teleprocessing, where there is one computer with a
single central processing unit (CPU) and a number of
terminals
User terminals are typically ‘dumb’ ones, incapable of
functioning on their own. Just cabled to the main
computer.

64 Introduction to Database Systems (INSY2061) 04/10/2021


Disadvantage
Unfortunately, this architecture placed a tremendous
burden on the central computer, which not only had to
run the application programs and the DBMS, but also
had to carry out a significant amount of work on behalf
of the terminals (such as formatting data for display on
the screen).

65 Introduction to Database Systems (INSY2061) 04/10/2021


File-Server Architecture
In a file-server environment, the processing is
distributed about the network, typically a local area
network (LAN). The file-server holds the files required
by the applications and the DBMS.
However, the applications and the DBMS run on each
workstation requesting files from the file-server when
necessary.
In this way, the file-server acts simply as a shared hard
disk drive. The DBMS on each workstation sends
requests to the file-server for all data that the DBMS
requires that is stored on disk.
66 Introduction to Database Systems (INSY2061) 04/10/2021
File-Server Cont’d…

67 Introduction to Database Systems (INSY2061) 04/10/2021


The file-server architecture - three main
disadvantages
(1) There is a large amount of network traffic.
(2) A full copy of the DBMS is required on each
workstation.
(3) Concurrency, recovery, and integrity control are
more complex because there can be multiple DBMSs
accessing the same files at the same time.

68 Introduction to Database Systems (INSY2061) 04/10/2021


Client–Server Architecture
To overcome the disadvantages of the first two approaches and
accommodate an increasingly decentralized business
environment, the client–server architecture was developed.
Client–server refers to the way in which software
components interact to form a system.
As the name suggests, there is a client process, which requires
some resource, and a server, which provides the resource.
There is no requirement that the client and server must reside
on the same machine.
Has three different topologies: 1 client 1 server, multiple
client 1 server, multiple client multiple server.
There are two varieties of this architecture: two tier, three
tier
69 Introduction to Database Systems (INSY2061) 04/10/2021
Possible combinations of the client–server
topology.

70 Introduction to Database Systems (INSY2061) 04/10/2021


Traditional Two tier Applications

71 Introduction to Database Systems (INSY2061) 04/10/2021


Two Tier- Problems
The need for enterprise scalability challenged this
traditional two-tier client–server model.
In the mid-1990s, as applications became more complex
and potentially could be deployed to hundreds or
thousands of end-users, the client side presented two
problems that prevented true scalability:
 A ‘fat’ client, requiring considerable resources on the
client’s computer to run effectively. This includes disk
space, RAM, and CPU power.
A significant client-side administration overhead.
Solution is to go for Three Tier- Architecture
72 Introduction to Database Systems (INSY2061) 04/10/2021
Three tier-Client Server Architecture

73 Introduction to Database Systems (INSY2061) 04/10/2021


Database Project Template
Chapter 1 Introduction
Background
Purpose of the system
Statements of the problem
Scope of the project
Objective of the project
 General objective
 Specific objectives
Database Development Methodology
 Data Sources & Collection Methods
 DB Analysis and Design Methods
Deliverables of the Project
Development Tools, Platforms and Technologies
Project Time Plan
Chapter 2-Requirement Specification
Data Requirements
Transaction Requirements
 Data Entry Requirements
 Data Retrieval Requirements
 Data Updating Requirements
74 Introduction
DatatoRemoval
DatabaseRequirements
Systems (INSY2061) 04/10/2021
Database Project Template
Chapter 3 Database Design
Conceptual database design of the new system
 Entities with their description
 Attributes with their description
 Relation ships between the entities
 E-R diagram
Logical Database Design
 ER-Relation Mapping
 Validating model with Normalization
 FirstNormal Form (1NF)
 Second Normal form (2NF)
 Third Normal Form (3NF)
 Relational Schema with referential Integrity after normalization
Physical database design
 Physical design strategy
 Database Deployment details

Chapter 4 Implementation and testing


 SQL script for creating the database
 SQL Scripts for creating the tables, view, indexes.
 Testing

References
Appendix (Forms, Reports of the Organization etc.)

75 Introduction to Database Systems (INSY2061) 04/10/2021


Database Project Template
Attachment (On CD)
Implemented Database files (*.mdf & *.ldf)
SQL Script for creating the Database and other test
Statement

76 Introduction to Database Systems (INSY2061) 04/10/2021

You might also like