Teaching     Home
Dartmouth Logo
Computer Science
Dartmouth College

Computer Science 33
Information Systems

Amit Chakrabarti


Spring 2009

[ Announcements | Administrative Basics | Schedule and Homeworks | Grades Database ]

Course Description

In this course we shall study the management of large bodies of data or information. During the first half of the course, we shall study on schemes for the representation, manipulation, and storage of complex information structures as well as algorithms for processing these structures efficiently and for retrieving the information they contain. In particular, we shall spend considerable time on relational algebra, SQL, database normalization, indexing and hashing.

In the second half of the course, we shall study — at a high level — the issues raised when databases are shared by several users and/or several computers. This includes such topics as transaction processing, robustness guarantees against failure, security and data integrity guarantees from unauthorized access, privacy. Time permitting, we might also consider data mining, warehousing and object-oriented schemes for multimedia data.

It is expected that a student who enrols for this course already knows how to program and is comfortable working within a UNIX-like environment. Some degree of mathematical maturity will be required for the more theoretical aspects of the course.


Announcements

Newer announcements are at the top. Think "blogs" or "twitter".

Administrative Basics

Important! Please also read and familiarize yourself with the administrative details not covered in the outline below. Pay special attention to the section that describes how the honor code applies to this course; violations of the honor code will be treated seriously.


Lectures

Sudikoff 115 | 10 hour | Mon-Wed-Fri 10:00-11:05, X-hr Thu 12:00-12:50
Instructor

Amit Chakrabarti | Sudikoff 107 | 6-1710 | Office hours: TBA, or by appointment
Teaching Assistants

Qi (Tracy) Gu | Sudikoff 220 | 6-8752 | Office hours: TBA, or by appointment

Textbook (Required)

"Database System Concepts," Fifth Edition.
Avi Silberschatz, Henry F. Korth, S. Sudarshan.

Prerequisites

CS 23

Work

Homeworks, roughly one a week [20 points]
Three in-class quizzes [30 points]
Class project [25 points]
Final exam [25 points]

Please take note of the late homework policy. It will be enforced, strictly.


Schedule and Homeworks

This schedule will be updated frequently. Please check back often, and please remember to hit the RELOAD button to get the latest schedule.

Any part of the schedule that is greyed out is tentative and subject to change.

Lecture Number
and Date

Reading Due
Before Class

Homework
Due

Topics Covered in
This Lecture

 
Week
1
1 Apr 01 —— ——
Course overview: Things to think about when designing a database system
2 Apr 03 Chapter 1 ——
The relational model; The fundamental operators of relational algebra
 
Week
2
3 Apr 06 2.1 – 2.3 ——
Extended relational algebra operators; Null values; DB modification
4 Apr 08 Chapter 2 ——
SQL I: Language basics; The set operations
5 Apr 10 3.1 – 3.4 ——
SQL II: Aggregation; Null values; Nested subqueries
 
Week
3
6 Apr 13 3.5 – 3.7 HW1
SQL III: Complex queries; Views; DB modification
7 Apr 15 Chapter 3 ——
SQL IV: Types; Integrity constraints; Authorization
  Apr 16 (X-hr) 4.1 – 4.3 ——
Quiz 1: Closed notes, in class
8 Apr 17 4.1 – 4.3 ——
Embedded SQL; Dynamic SQL
 
Week
4
9 Apr 20 Chapter 4 HW2
Overview of relational calculus and QBE
10 Apr 22 —— ——
Overview of the Entity-Relationship model
11 Apr 24 Chapter 5 ——
Normal forms I
 
Week
5
12 Apr 27 Chapter 6 HW3
Normal forms II
13 Apr 29 7.1 – 7.5 ——
Normal forms III
  Apr 30 (X-hr) 4.1 – 4.3 ——
Quiz 2: Closed notes, in class
14 May 01 Chapter 7 ——
Normal forms IV
 
Week
6
15 May 04 Chapter 8 Project, Stage 1
Stage 1 project presentations
16 May 06 Chapter 11 ——
Application design, Web interfaces, PHP/CGI/Javascript
17 May 08 12.1 – 12.5 ——
Organizing storage; RAID
 
Week
7
18 May 11 Chapter 12 Project, Stage 2
File structure; Indexing: B and B+ trees
19 May 13 —— ——
Hashing; Trees vs Hashing
20 May 15 —— ——
Indexing wrap-up; Query processing I
 
Week
8
21 May 18 Chapter 13 Project, Stage 3
Query processing II; Query optimization
22 May 20 Chapter 14 ——
Transactions; Atomicity; Durability
  May 21 (X-hr) 4.1 – 4.3 ——
Quiz 3: Closed notes, in class
23 May 22 15.1 – 15.3 ——
Concurrency: The important issues
 
Week
9
24 May 27 Chapter 15 HW6
Concurrency Control
25 May 29 Chapter 16 ——
Failures; Recovery; Logging
26 Jun 01 Chapter 17 ——
Final project presentations


Homework Submission Form and Grades Database

All homework is to be submitted electronically, using a homework submission form. Click here to get to that form.

The homework submission system is still experimental. Please use it only as instructed, for everyone's safety!


Teaching     Home