Chapter 1: Introduction
Download
Report
Transcript Chapter 1: Introduction
CSC380 | Database
Grades, Book, Blog & Rules
Grading
Grades will be divided as follows:
10
10
15
15
10
40
%
%
%
%
%
%
Homework and Tutorials
Quizzes
First Midterm Exam
Second Midterm Exam
Project
Final Exam
---------------------------------------------------100 % Total
Book, Blog & Rules
Text Book
Blog
Fundamentals of Database Systems:
Navathe 6th Edition Addison Wesley
ksucsc380.wordpress.com
Rules
Visit the blog and read them carefully
ElMasri,
1. Databases & Database Systems
Chapter 1
Course Coordinator:
Dr. Deema Alathel
Lecturer:
Ms. Arwa Alturki
Overview
Traditional database applications are part of our
daily life
Bank transactions
Hotel reservations
Etc…
Advances in technology led to more sophisticated
database systems applications:
Multimedia databases
Geographic information systems (GIS)
Online analytical processing (OLAP)
Real-time and active database technology
1.1 Introduction
Database: Collection of data
Data: Recorded facts with implicit meaning
Examples:
Address Book – Names, Tel. #s, Addresses
Students Sheet – Names, Grades
Library Cards – Title, Category, Author
1.1 Introduction
Properties of a database:
Database generation and maintenance:
1.
2.
Representation of real world
Coherent data with inherit meaning
Designed, built, and populated with data for a reason
Manual – Ex. Library Card Catalog
Computerized - Ex. Supermarket’s Inventory
Amazon.com is an example of a large commercial
database
1.1 Introduction
Database Management System (DBMS):
Collection of programs that enables user to
create and maintain a database
Database Definition: data types, structures,
constraints
Database Construction: storing the actual data on
storage medium controlled by the DBMS
Database Manipulation: retrieve data, update
database from miniworld, generate reports
1.1 Introduction
Database Management System (DBMS):
Database Sharing: allowing multiple
users/programs to access to database simultaneously
Database Protection:
System protection against SW/HW crashes
Security protection against unauthorized access
Database Maintenance: allowing the system to
evolve as requirements change over time
1.1 Introduction
Users/Programmers
Database System:
1.
2.
Database
DBMS
Database
Application Programs/Queries
System
DBMS Software
Software to Process
Queries/Programs
Software to Access
Stored Data
Stored
Database
Definition
Stored
Database
1.2 University Example
1.2 University Example
1.
Database Definition
1.
2.
3.
2.
Specify records in each file
Specify data elements of each record
Specify data type of each data element
Database Construction
Store data in the different records of the files
Records in different files may be related
Relationships between files
1.2 University Example
3.
Database Manipulation
Querying for specific data
Ex. “Retrieve a list of all courses and grades of Smith”
Ex. “List the names of students who took Database course
in the second semester of 2005 and their grades”
Ex. “What are the prerequisites of the Database Course?”
Updating the database
Ex. “Change the class of Smith to Sophomore”
Ex. “Enter a grade of A for Smith in the Database course
for this semester”
1.3 Characteristics of the
Database Approach
File-Based Approach
Files are implemented as part of programming the
application
Ex. Grade Reporting office and Accounting office
keep different students’ files and programs
Some data is not available from the other user’s files
Redundancy in definition and storage
Wasted storage space
Redundant efforts to maintain the data and keep it
consistent and up-to-date
1.3 Characteristics of the
Database Approach
Database Approach
1.
Self-describing nature of a database system
2.
Meta-data
Separation between programs, data, and data
abstraction
Program-data independence
Program-operation independence
3.
4.
Regardless of changes in DB structure
Regardless of implementation
Support of multiple views of the data
Sharing of data and multiuser transaction processing
1.4 Actors on the Scene
1.
Database Administrators
2.
Authorizing access
Coordinating and monitoring DB use
Security and response time
Database Designers
Data identification and structure
Acquiring DB requirements
Specifying, analyzing and integrating views
1.4 Actors on the Scene
End Users
3.
Casual end users
1.
Naïve end users
2.
Use standard queries, access specific info
Sophisticated end users
3.
Implement their own DB using DBMS’s facilities
Stand-alone users
4.
4.
Use sophisticated query language, access different info each time
Use ready-made packages to maintain personal DB
System Analysts & Application Programmers
SAs determine requirements of end users
APs implement, test and debug canned transactions
1.5 Workers behind the Scene
1.
DBMS system designers and implementers
2.
Tool developers
3.
Design and implement DBMS modules and
interfaces as a software package
Design and implement SW packages that aid in DB
system design and use
Operators and maintenance personnel
Responsible for running and maintaining the SW
and HW environment for the DB system
1.6 Advantages of Using a DBMS
1.
2.
3.
4.
5.
6.
7.
8.
9.
Controlling redundancy
Restricting unauthorized access
Providing persistent storage for program objects
and data structures
Providing storage structures and search techniques
for efficient query processing
Providing backup and recovery
Providing multiple user interfaces
Representing complex relationships among data
Enforcing integrity constraints
Permitting inferencing and actions using rules
1.6 Advantages of Using a DBMS
Additional Implications of Using the Database
Approach:
1.
Potential for enforcing standards
2.
Reduced application development time
3.
Flexibility
4.
Availability of up-to-date information
5.
Economies of scale
1.7 A Brief History of Database
Applications
Early Database Applications:
The Hierarchical and Network Models were introduced in mid
1960s and dominated during the seventies.
A bulk of the worldwide database processing still occurs using
these models, particularly, the hierarchical model.
Relational Model-Based Systems:
Relational model was originally introduced in 1970, was heavily
researched and experimented within IBM Research and several
universities.
Relational DBMS Products emerged in the early 1980s.
1.7 A Brief History of Database
Applications
Object-oriented and emerging applications:
Object-Oriented Database Management Systems (OODBMSs) were
introduced in late 1980s and early 1990s to cater to the need of
complex data processing in CAD and other applications.
Their use has not taken off much.
Many relational DBMSs have incorporated object database
concepts, leading to a new category called object-relational
DBMSs (ORDBMSs)
Extended relational systems add further capabilities (e.g. for
multimedia data, XML, and other data types)
1.7 A Brief History of Database
Applications
Data on the Web and E-commerce Applications:
Web contains data in HTML (Hypertext markup language)
with links among pages
This has given rise to a new set of applications and Ecommerce is using new standards like XML (eXtended
Markup Language)
Script programming languages such as PHP and JavaScript
allow generation of dynamic Web pages that are partially
generated from a database
Also allow database updates through Web pages
1.7 A Brief History of Database
Applications
Extending Database Capabilities:
New functionality is being added to DBMSs in the following areas:
Scientific Applications
XML (eXtensible Markup Language)
Image Storage and Management
Audio and Video Data Management
Data Warehousing and Data Mining
Spatial Data Management
Time Series and Historical Data Management
The above gives rise to new research and development in
incorporating new data types, complex data structures, new
operations and storage and indexing schemes in database systems
1.8 When Not to Use a DBMS
The overhead cost of using a DBMS may be due to:
High initial investment and possible need for additional
hardware
Overhead for providing generality, security, concurrency
control, recovery, and integrity functions
A DBMS may be unnecessary when:
The database and applications are simple, well defined, and
not expected to change
There are stringent real-time requirements that may not be
met because of DBMS overhead
Access to data by multiple users is not required
1.8 When Not to Use a DBMS
A DBMS may be insufficient when:
The database system is not able to handle the complexity of
data because of modeling limitations
The database users need special operations not supported by
the DBMS
Any Questions?