Transcript slides01

ICS 223: Transaction Processing and
Distributed Data Management
Winter 2008
Professor Sharad Mehrotra
Information and Computer Science
University of California, Irvine
Notes 01
1
This Lecture
• Course introduction
• Transactions
–
–
–
–
ACID
Crash recovery (review)
Concurrency control
Serializability
ICS214B
Notes 01
2
Course General Info
• URL: http://www.ics.uci.edu/~cs223/
– All course info will be posted online
• Lecture times: Tues and Thurs 5 to 6.20 pm
• Instructor: Sharad Mehrotra,
[email protected]
• Newsgroup: ics.223
ICS214B
Notes 01
3
Prerequisites
• Either ICS148 ("Distributed Computing") or
ICS153 ("Computer Networks”)
• Programming skills (C, C++, or Java)
ICS214B
Notes 01
4
Why take ICS 223?
• Covers fundamental principles underlying
transaction processing
– database consistency,
– concurrency control,
– database recovery and fault-tolerance.
• Covers distributed database systems.
• A prerequisite for:
– further advanced data management courses
– research principles of data management.
ICS214B
Notes 01
5
Text Books
No required textbooks. The following are commended:
• Database System Implementation, by Hector GarciaMolina, Jeffrey Ullman, and Jennifer Widom, Prentice
Hall, 1999. Or Database Systems: The Complete Book, by
Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer D.
Widom, Prentice Hall, 2001.
• Principles of Transaction Processing, by Philip A.
Bernstein and Eric Newcomer, Morgan Kaufmann, 1997.
• Transaction Processing: Concepts and Techniques Jim
Gray and Andreas Reuter Morgan Kaufman Publishers
1993
• Research papers may be made available whenever possible
to supplement the textbook.
ICS214B
Notes 01
6
Course Requirements
•
•
•
•
Assignments: 20
Programming Projects: 30
Final: 30
Mid Term Exam: 20
ICS214B
Notes 01
7
Grading
For all the graded assignments and projects,
if you disagree with the grading, you can
discuss with the instructor within two weeks
after they are returned. After that, all the
grades will be finalized.
ICS214B
Notes 01
8
Simplified DBMS Architecture
Application
Queries
Schema changes
compilers
Metadata
and data
dictionary
optimizer
evaluator
Query processor
Buffer manager
Transaction
Manager
File system
Storage manager
Database and
Indices
ICS214B
Notes 01
9
DBMS Goals
•
•
•
•
•
Efficient data management (faster than files)
Large amount of data
High reliability
Information sharing (multiple users)
DBMS Users:
– E-commerce companies, banks, airlines, transportation
companies, corporate databases, government agencies, …
– Anyone you can think of!
ICS214B
Notes 01
10
Key Database Technologies
• File Management
– provides a file abstraction as a collection of records stored in disk
ICS222
• Index Management and Access Methods
– implements techniques for associative access to data
• Query Optimization and Processing
– given a query and data storage structures, determines an efficient strategy
to evaluate the query.
• Transaction management
– ensures consistency of the database in presence of concurrent transactions
and various types of failures
• Catalog Management
– maintains database schema information
• Authorization and Integrity Management
ICS223
– tests for integrity constraints and user authorization
ICS214B
Notes 01
11
Structure of DB courses @ UCI
Intro
Project-oriented
ICS184
ICS185
undergrad
grad
ICS222
DB Principles
ICS214B
ICS223
ICS215
DB Seminar
Transaction Processing
and Distributed
Advanced Topics
Data Management
Notes 01
12