You are on page 1of 24

Definitions

Data: known facts that can be recorded


Database: a collection of data
⌧represents some aspect of the real world
⌧logically coherent collection (not a random
collection)
⌧designed, built & populated for a specific purpose
Database Management System: the
software that manages the data
Popular Examples

Company Databases
employees, departments, projects …
Airline Reservation Systems
flights, fares, customers, reservations ..
Library Databases
authors, titles, publishers, videos …
Bank Databases
accounts, customers, branches ...
DBMSs VS File Processing

Why do we need a
DBMS?

Why not just use


files to store data?
File Processing

Financial
Services

Application
Programs

Application
Programs

Arts &
Science
Office
Simple File System

REPORTS
File System Data
Management
Each file is managed by a set of PBs
3GL programs :-
A lot of 3GL programs
Create File predefined reports only
Structure Ad hoc reports are
Add Data record difficult
Delete data record Difficult changes in file
structures
Modify data field
Modifications yield
List the file
errors
contents
lack of Security features
Program-Data Dependence
Database Systems

Data
Definition
Payroll

Schedules
Grades

Data Integrity
Data definition
DBMS
Characteristics of the
Database Approach

insulation of programs & data


support of multiple user views
use of a catalog to support database
descriptions

DB
A collection of described and interrelated data stored
and managed by general purpose DBMS
Database vs File Systems
Personnel Employees

FS Customers

Sales Sales

Inventory

Accounting
Accounts

Personnel
DBMS
Employees
Customers
Sales Sales
DBMS
Inventory
Accounting Accounts
Data Description
File Processing VS DBMS

File Processing DBMS


data definition is part of self-describing
application programs program-data independence
programs & data are support of multiple views of
interdependent data
provides concurrency control &
transaction processing
capabilities
provides mechanisms for
backup & recovery
support for query languages
provides access control
Additional Advantages of
using DBMS

Potential for enforcing standards


Reduced application development time
Flexibility
Availability of up-to-date info to all users
Economical
DBMS
Is a general purpose software system that facilitates the
processes of defining, constructing, and manipulating databases

Facilities to:
Define :specify data types, structures &
constraints for the data to be stored in the
database
Construct :store the data
Manipulate :pose queries to retrieve specific
data, update data or generate reports based
on the data
Database System
Environment
Users/Programmers

Database
Application Programs/Queries
System

DBMS
Software Software: Query Processing
& Programs

Software: Data Access

Database
Database
Definition
Database Players
DBA
access authorization, coordination & monitoring database
usage, problem determination, performance tuning etc
Designers
identify the requirements & chose the appropriate structures to
represent & store the data
Users (Casual, parametric, Sophisticated, stand-alone)
System analysts & application programmers
DBMS system designers & implementers
Tool developers
Operators & maintenance personnel
DBMS Interfaces

Menu-based Interfaces for browsing


Forms-based Interfaces
GUIs
Natural Language Interfaces
Specialized Interfaces
Interfaces for the DBA
Query Language
Database States

Empty State -- database is empty when we


first define the database schema
Initial State -- database is first populated or
loaded with data
Current State -- snapshot in time
Classification of DBMSs

Data Model Classification


relational, network, hierarchical, object-
oriented …
Number of users
single user or multi-user
Number of Sites
centralized vs distributed
Cost of the DBMS
Data Model

a collection of concepts that can be used


to define the DB structure (data items&
types, relationships, operations|behavior,
and constraints).
Some Data Models:
Entity Relationship model
Relational Model
hierarchical & network models
object-data models
Schemas & Instances

Important to distinguish between


database schema: the description of the
database
database instance: the stored data
Financial Records
(Company, Type, Name, Date, Amt, NumShares, Broker)

Company Type Name Date Amt NumShares Broker

Trimark Marketing Trimark 01/01/84 49.75 100 C. Harris


Fund

AGF Mutual Foreign 01/01/94 62.25 1000 C. Harris


Fund Equity
Three-Schema Architecture

External External External


View #1 View #2
... View #n

mapping
Conceptual Schema
mapping
Internal Schema

Stored database
Data Independence

Logical data independence - ability to


change the conceptual schema without
having to change the external schemas or
application programs
Physical data independence - ability to
change the internal schema without
having to change the conceptual (or
external) schemas.
DBMS Languages

DDL: Data Definition Language


used to define/change the structure of the
database (SDDL, CDDL, VDDL)
DML: Data Manipulation Language
used to query the database, insert data,
change data or delete data
(Nonprocedural|procedural (embedded) DML)
(set-at-a-time |record-at-a-time DML)

You might also like