Home
What's New
Class Web Page
Schedule
Staff
Prerequisites
Text and Syllabus
Handouts
Grade Computation
Rules & Policies
Practice Problems
Midterm and Final
Reading List

Database Systems
CSE232A Winter 2004

What's New

The following lines will contain new announcements, mostly around the reading material. Please check also the announcements regarding practice problems, the midterm and the final. Weekly additions are indicated.

Class Web Page

Lecture notes, practice problems, and many announcements will be on this class web page. A substantial part of the site will be in HTML and PDF formats. Please configure your browsers accordingly. Please check the web page often. You can download Adobe Acrobat Reader 5.0 by clicking on the icon below.

Schedule

. Mon Tue Wed Thu Fri
Lecture . 2:00pm - 3:20pm
WLH 207
. 2:00pm - 3:20pm
WLH 207
.
Instructor Office Hours . 5:00pm-6:00pm
APM 5111
. 5:00pm-6:00pm
APM 5111
.

The following is a tentative schedule of lectures. Changes will appear in the "What's New" Section above.

Week Date Tuesday
Lecture
Thursday
Lecture
1 1/06 . Overview of use of database systems by applications, SQL review, Transaction management overview lecture slides.
2 1/13 Database system challenges, architecture, and overview Hardware aspects (lecture slides) and Record and Block Organization (lecture slides)
3 1/20 Conventional indices and B+ Trees(lecture slides) B+ Trees
4 1/27 Hashing Indices and Multi-Key Indices Query Processing: Overview(lecture slides)
5 2/03 Algebraic Optimization. Physical operators and Cost Estimation
6 2/10 Cost-based Optimization: Exploring the Space Crash Recovery (lecture slides).
8 2/17 Semantic Optimization (lecture handout) Semantic Optimization cont'd
7 2/24 Midterm Concurrency Control (lecture slides)
9 3/02 Concurrency Control cont'd More on Transaction Processing(lecture slides)
10 3/09 Beyond Centralized Relational Databases Final Review Session
Finals 3/16 . .
1 April 2004 Join Alin Deutsch in CSE232B! .

Staff

Prerequisites

None.

Required Text

"Database System Implementation" by Garcia, Ullman, and Widom (available at UCSD bookstore)

Handouts

Handouts include the lecture notes (slides), practice problem sets, problem set solutions, notes and explanations on questions discussed. Copies will be available outside Yannis' office. They will also be available on the class web page.

  • Introduction and overview of database systems (pdf)
  • Hardware aspects (pdf)
  • Record and Block Organization (pdf)
  • Indexing, incl. B-Trees, hashing indices and multi-key indices (pdf)
  • Query Processing (pdf)
  • Crash Recovery (pdf)
  • Semantic Optimization (pdf)
  • Concurrency Control (pdf)
  • More on Transaction Processing (pdf)

Grade Computation

There are:

  • A midterm (in class). The midterm is 30% or 20% of your grade.
  • A final exam, which counts for 70% or 80% of your final grade, i.e., your final grade will be the best of the following two schemes:
    • Midterm 20%, Final 80%, or
    • Midterm 30%, Final 70%

Rules & Policies

Exam Rules

You may use books, class notes, calculators but no computers (and database systems:) during the exams. You don't need to bring paper on which to write your answers. We will provide it. There are no makeup midterms or finals under any circumstance whatsoever. The only acceptable reason to miss a midterm or final is that the student has some valid, certified personal health problem at the time or some extremely important immediate family emergency - also certified. Even in the latter two cases exams will not be rescheduled. However the grade will be based upon the remaining grade components.

Grading Policies

Write clear arguments. Be neat and precise. Getting the right answer may not be enough. The derivation and quality of writing counts! Don't write many different things in hope that you'll get the points if one of them is the right one. Indeed, you will lose points if you follow such a policy.

Practice Problems

Practice problems for the midterm:

  • A set of practice problems on indexing-. Solutions will be discussed on the first midterm review session.
  • The problem on optimizing the B+ Tree block size is in the Indexing lecture notes
  • A set of practice problems on query processing
  • A set of practice problems on recovery
  • A set of practice problems on concurrency control
  • A practice problem on semantic optimization provided by Victor (pdf).
  • Past final exams listed below. Expect our exam to have fewer and less open-ended problems than the ones of prior years.
    • Final exam of 97 (pdf). Yannis' favorites: A, B, D, E, G, I. Solutions of the final exam of 97 (pdf).
    • Final exam of 99 (pdf).
    • Semantic optimization problem provided by Victor for final exam of 99 (pdf).
    • Midterm and solutions of 2002
  • The following exercises from the book are recommended:
    • Data Storage chapter: X.2.1, X.3.1, X.3.2
    • Index Structures: X.1.1, X.1.2, X.1.3, X.1.6, X.3.1, X.3.2, X.3.4, X.3.7, X.4.3, X.4.6
    • Multidimensional indexes: X.2.1, X.3.2
    • Query Execution: X.1.1, X.1.3, X.1.6 (for aggregation you may consider the operators discussed in class), X.3.5, X.4.2, X.4.3, X.5.5, X.5.7, X.7.2, X.7.5
    • The Query Compiler: X.2.2, X.2.3, X.2.8 (we had used a slightly different notation for gamma in class), X.2.9, X.3.1, X.3.3, X.4.1, X.4.2, X.4.3, X.5.6, X.6.1, X.6.5
    • Coping with System Failures: X.2.1, X.2.2, X.3.1, X.3.2, X.4.1, X.4.2. X.4.3
    • Concurrency Control: X.2.2 (refers to X.2.1 also), X.2.4, X.3.4, X.4.1, X.4.3, X.6.1, X.6.3, X.7.1
    • More Transaction Management: X.1.1, X.1.2, X.3.1-X.3.3

    Midterm and Final

    Reading List

    Study the following sections from the textbook. Notice that chapter numbers are different in the "Complete Book" and the "Database System Implementation" book. However, section numbers are identical.

    • Data Storage Chapter: Study sections X.1, X.2, X.3. Go quickly over X.4.
    • Representing Data Elements: Go quickly over the chapter.
    • Index Structures: Study the full chapter.
    • Multidimensional indexes: Study section X.1, go quickly over X.2 and X.3.
    • Query Execution: Study sections X.1 to X.7.
    • The Query Compiler: Study sections X.2 to X.6, notes on the INGRES (Wong-Youssefi) algorithm
    • Coping with System Failures: Study sections X.1, X.2.1-X.2.3, X.3,1-X.3.2, X.4.1-X.4.2 Go quickly over checkpointing (X.2.4-X.2.5, X.3.3-X.3.4, X.4.3) and make sure you comprehend its basics.
    • Concurrency Control: Study sections X.1-X.4 and X.6-X.7. Go quickly over X.5.
    • More Transaction Management: X.1.1-X.1.2, X.3. Go quickly over X.7.
  • yannis@cs.ucsd.edu