Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Director.

Similar presentations


Presentation on theme: "Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Director."— Presentation transcript:

1 Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Director of USC Database Lab Computer Science Department University of Southern California

2 Logistics Required text book: Pre-req for the course:
Database System Concepts, Silberschatz, Korth & Sudarshan, 6th Edition. Available in the bookstore. Please start to read Chapter 7 and Sections 2.1 to 2.3 for the next lecture Pre-req for the course: CS201: Data Structures Knowledge of an object-oriented programming language such as C++, Java, C#

3 Instructor Details Dr. Shahram Ghandeharizadeh Office: SAL 208
Phone: Office Hours: Wed: 10:30 to 11:30 am Mon: 11:30 to 12:30 pm Class URL:

4 TA Details Sumita Barahmand Office: SAL 229 E-mail: barahman@usc.edu
Office Hours: Mon: 1:30 to 3:30 pm

5 Outline Motivation for DBMS An outline for the course material
Grading: Assignments and projects

6 Database 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!

7 DATABASE & 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.

8 BEFORE DBMS User 1 Data Data User 2 Application programs

9 AFTER DBMS User 1 DBMS User 2 Application programs
Data managed by DBMS DBMS User 2 Application programs

10 WHY 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

11 DBMS ARCHITECTURE … User 1 DBMS DB User n Physical data
Conceptual schema

12 Data Models Conceptual Logical Physical

13 Build a database to keep the medical records of U.S. residents
Data Models (Example) Build a database to keep the medical records of U.S. residents 13

14 Data Models Conceptual Logical Physical 14

15 Challenges Conceptual Logical Physical
Abstraction, Inheritance, Encapsulation Conceptual Reduction to tables with minimal: data duplication, potential for data loss and update anomalies Logical Effective use of a DBMS, management of mismatch between tables and OO constructs, Index structures, CC & Crash recovery, Optimization techniques Physical

16 Challenges Conceptual Logical Physical E-R data model 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

17 Relational DBMS Why? Performance! Reduced application development time
Use of SQL makes access to data more uniform: Software modularity, Extensibility

18 Challenge 2 Two ways to teach this course:
How to implement a DBMS? Protocols to realize atomic property of transactions How to use a DBMS? Setup a web server with a database and build a shopping bag Key difference: discussion at both the logical and physical levels Both require use of OO constructs

19 Grading Midterm 1: 35% Midterm 2: 35% Assignments: 30%
First assignment is posted on the web. Due at noon on Thu, Jan 20.

20 Assignments (30%) Social networking sites:
Visit rays.shorturl.com and sign-up. Conceptualize and understand RAYS’s functionality. Homework 1: Write a description of the RAYS and its functionality. Homework 2: Draw the ER diagram for the web site. Homework 3: Reduce the solution provided for Homework 2 into a collection of tables. Homework 4: Write SQL queries to implement functionalities of RAYS.


Download ppt "Lecture 1: Overview of CSCI 485 Notes: I presented parts of this lecture as a keynote at Educator’s Symposium of OOPSLA Shahram Ghandeharizadeh Director."

Similar presentations


Ads by Google