Download presentation
Presentation is loading. Please wait.
Published byときな こしの Modified over 5 years ago
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 Associate Professor Computer Science Department University of Southern California
2
Logistics Required text book: Pre-req for the course:
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#
3
Instructor Details Dr. Shahram Ghandeharizadeh Office: SAL 208
Phone: Office Hours: Tuesday: 12:30 to 2 pm Thursday: 4 to 5 pm Class URL:
4
TA Shahin Shayandeh Office: SAL 200C E-mail: shayande@usc.edu
Office Hours: Tuesday: 3:30 to 5 pm Thursday: 12:30 to 2 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 of all my assets for licensing and royalty collection
Data Models (Example) Build a database of all my assets for licensing and royalty collection
14
Data Models Conceptual Logical Physical
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: 10% Project: 20%
First assignment is posted on the web. Due Tuesday, September 2nd. Project: 20%
20
Assignments (15%) Social networking sites:
Visit myspace.com and sign-up. Become my friends – whether you like it or not Use the bulletin capability to communicate. Objective is to understand the functionality of the bulletin board. First message might be a quick note about why you have signed up for csci 485. Homework 1: Write a description of the bulletin board and its functionality. Homework 2: Draw the ER diagram for the web site, focusing on its Bulletin board. Homework 3: Reduce the ER diagram to a collection of tables.
21
Project-ideas (15%) Implement a Bulletin board using a centralized database management system. Implementation of Bulletin board using a database partitioned across multiple servers. Use of a storage repository to build a small relational database management system.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.