Title: Introduction to Database Systems
1Introduction to Database Systems
- What is a Data
- What is a Database
- What is a Database System
- History of Databases
- Relational Model
- Relational Model Advantages
2What is Data ?
- Data is defined as isolated facts which are
stored in the database. - Whereas Information is defined as the meaning
of the data or processed data which is important
to the user.
3What is a Database ?
- A database is defined as a collection of
persistent and interrelated data that is used by
one or more application systems.
4What is a Database System ?
- A database system is composed of a database,
hardware, software, and users or personnel. - A Database Management System is used to manage
all the pieces of a database system.
5DBMS components
6Hardware
- The hardware consists of the storage disks, I/O
devices, processors, and main memory. - Databases can be stored either on file systems or
directly on disk partitions.
7Software
- The software deals with the database Management
System (DBMS) - The DBMS consists of a server, client, and tools.
- Tools consist of application development, design
tools and utilities.
8Users
- There are different classes of users for database
systems. - 1) Application Programmers who write database
applications - 2) End users who interact with the database
system for processing jobs. - 3) Database Administrators (DBAs) who help to
run and administer the database.
9Database History
- File Oriented Systems
- Hierarchical Model
- Network Model
- Relational Model
10File Oriented Systems
- Early computer systems were used primarily for
accounting processes. - These systems were known as data processing
systems - The files in these systems are sequentially
accessed and normally were processed in batch
mode. - Most application programs evolved from this
process.
11Random Access Processing
- File Oriented systems didnt allow for random
access processing - Random Access Processing the ability to directly
access a given record without first sorting the
file or reading records of a file in a sequence.
12Limitations of File Systems
- 1) It is usually impractical to obtain all the
data if only one or more piece of data are
required. This results in redundant data.
13Limitations of File Systems
- 2) The limited access to data makes it impossible
to validate the same data in other files. - 3) Ad Hoc queries to systems are not
possible.
14Other Limitations of Traditional Systems
- 1) Data redundancy---Many data items are found to
be common to several applications. - 2) Poor data control-- problems with inconsistent
terminology
15Other Limitations of Traditional Systems
- 3) Inadequate data manipulation capabilities---
Cannot access related data in different files - 4) Excessive programming efforts---Heavy
dependence between programs and data.
16Hierarchical Model
- First database systems introduced in the 1960s
were based on the hierarchical model - This model assumes all data relationships can be
structured as hierarchies. - Uses a parent and child relationship where a
child can only have one parent.
17Hierarchical Model
Movies
Classics
Comedy
M.A.S.H
Casablanca
18Hierarchical Model Limitations
- Hierarchical Model still used today on some IBM
mainframes such as IBMs IMS system. - Need to redesign entire database to change how
data is interrelated. - Can lead to confusion in relationships of data.
- Only allows one parent record type.
19Network Model
- Network Model came about from the Conference on
Data Systems Language (CODASYL). - Design is based on data sets
- Similar to the hierarchical model with sequential
access properties. - Uses logically related data items to define
record types.
20Network Model
Harrison Ford
Carrie Fisher
Tom Hanks
Star Wars
When Harry Met Sally
The Burbs
21Network Model Limitations
- As data sets are added so is the complexity and
confusion. - Procedural model of one record processing at a
time. - Difficult to change data once it is stored
- Need detailed understanding of the data and how
it is stored.
22E.F. Codd
- In 1970 E.F. Codd published a paper that strongly
challenged the conventional wisdom of the
database establishment. - Codd argued that data should be related through
natural, logical relationships that were inherent
in the data rather than through physical pointers.
23E.F. Codd continued
- Codd proposed that a simple data model would
consist of data represented in tables made up of
rows and columns. These tables were given the
name of relations. - Codd also proposed two languages for manipulating
data in tables relational algebra and relational
calculus. - The results were the release of several
relational database management systems.
24Relational Model
- Data is represented by rows and columns in
tables. - Relations are based on keys which interconnect
the data. - Data are restricted by constraints which follow
rules of integrity
25Relational Model
26Advantages of Relational Model
- Data can be shared
- Redundancy can be reduced
- Speed Compactness less drudgery
- integrity can be maintained
- Standards can be enforced
27(No Transcript)
28Vendors
- Oracle
- Sybase
- Informix
- Microsoft SQL Server
29(No Transcript)
30Database System Architecture
- In 1978 ANSI committee proposed a generalized
framework for database systems. - This framework provided a three-level-architectur
e at which a database could be used.
31Database System Architecture
- Internal Level
- External Level
- Conceptual or Logical Level
32ANSI 3-Level Architecture
End Users
Logical Designers
Physical Designers
External Level
Internal Level
Logical Level
Mapping
Mapping
33Conceptual Level
- This level is the one at which logical database
design is done. - The design involves the analysis of users
information needs and the identification and
definition of the data items to meet those needs. - The results of this design is the logical or
conceptual schema.
34Conceptual Level
- This level is the one at which logical database
design is done. - The design involves the analysis of users
information needs and the identification and
definition of the data items to meet those needs.
35Conceptual level continued
- The results of this design is the logical or
conceptual schema. - The schema is defined as the single logical
description of all the data elements and their
relationships.
36External Level
- The external level is the level which users view
the database. - It consists of the individual portions and /or
derivations of the logical schema that apply to a
particular group of users. - The external level consists of all views of the
user sets. - Each user group will have its own view of the
data.
37External Level
- The external level is the level which users view
the database. - It consists of the individual portions and /or
derivations of the logical schema that apply to a
particular group of users. - The external level consists of all views of the
user sets. - Each user group will have its own view of the
data.
38Internal Level
- This level is known as the physical level.
- It is concerned with the physical way the data is
stored. - This level is described by the internal schema
- The internal schema defines the stored record
types.
39Internal Level continued
- No user is concerned with this level.
- This level is also concerned with database
performance.
40Mappings
- The mappings concern the conceptual/internal
mappings and the external/conceptual mappings. - The conceptual/internal defines how the records
and fields are stored. - The external/conceptual mappings defines how
the user views the database compared with the
designer view.
41Client/Server Architecture
- A client server architecture consist of two
parts. - The server or backend which has the database.
42Client/Server Architecture
- The client or front end which houses the user
applications which interact with the database. - These clients connect through the
external-level to the server
43Client-Server Diagram
Applications
Clients
USERS
DBMS
Database
44Distributed Processing
- Distributed Processing has to do with the idea of
allowing multiple client machines to connect to
one or more servers through a communications
network.
45Clients
Communications Network
Server
Database