Title: Lecture 1: Overview of CSCI 485
1Lecture 1 Overview of CSCI 485
- Shahram Ghandeharizadeh
- Associate Professor
- Computer Science Department
- University of Southern California
- Presented by Shahin Shayandeh
2Logistics
- Required text book
- Database System Concepts, Silberschatz, Korth
Sudarshan, 5th Edition. Available in the
bookstore. - Please start to read Chapter 6 and Section 7.1
for the next lecture - Pre-req for the course
- CS201 Data Structures
- Knowledge of an object-oriented programming
language such as C, Java, C
3Instructor Details
- Dr. Shahram Ghandeharizadeh
- Office SAL 208
- E-mail shahram_at_usc.edu
- Phone 213-740-4781
- Office Hours
- Tuesdays and Thursdays 11am to 12 pm
- Class URL http//dblab.usc.edu/csci485
4TA
- Shahin Shayandeh
- Office PHE 328
- E-mail shayande_at_usc.edu
- Office Hours
- Tuesdays and Thursdays 200 to 330 pm
5Outline
- Motivation for DBMS
- An outline for the course material
- Grading Assignments and projects
6Database Management Systems (DBMS)
- Used almost on a daily basis for either
individual or business use. - Relational database vendors were one of the
fastest growing sectors during the .COM boom!
7DATABASE DBMS
- Database An integrated collection of data,
usually stored on secondary storage, typically
describing the activities of one or more related
organizations. - Database management system (DBMS) A collection
of software/programs designed to assist in
maintaining and utilizing large collections of
data.
8BEFORE DBMS
User 1
Application programs
Data
Data
Application programs
User 2
9AFTER DBMS
User 1
Application programs
Data managed by DBMS
DBMS
User 2
Application programs
10WHY A DBMS?
- Reduced application development time
- Data independence Application programs not
dependent on data representation and storage
details - Data sharing data is better utilized
(discovered and reused), redundancy of data is
minimized - Data integrity and consistency one may enforce
consistency constraints on data, e.g., number of
seats sold number of seats on the plane 1.1 - Centralized control DBA tunes the database to
balance user's needs - Security mechanisms to prevent unauthorized
access. These mechanisms are based on content
instead of file-oriented approach. - Concurrency control avoids undesirable race
conditions that arise with simultaneous
access/updates to data - Crash recovery ensures the integrity of data in
the presence of failures
11DBMS ARCHITECTURE
User 1
DB
DBMS
User n
Physical data
Conceptual schema
12Data Models
Conceptual
Logical
Physical
13Data Models (Example)
Build a database to keep the medical records of
U.S. residents
14Data Models
Conceptual
Logical
Physical
15Challenges
Abstraction, Inheritance, Encapsulation
Conceptual
Reduction to tables with minimal data
duplication, potential for data loss and update
anomalies
Logical
Physical
Effective use of a DBMS, Index structures, CC
Crash recovery, Optimization techniques
16Challenges
E-R data model
Conceptual
5 Normal Forms
Relational Data model, SQL, Relational Algebra
Logical
Different kinds of storage, A DBMS architecture,
Index structures, CC Crash recovery,
Optimization techniques, Techniques to build a
DBMS
Physical
17Relational DBMS
- Why?
- Performance!
- Reduced application development time
- Use of SQL makes access to data more uniform
- Software modularity,
- Extensibility
18Grading
- Midterm 1 35
- Midterm 2 35
- Assignments 10
- Project 20