Winter 2012     CS 386/CS 586: Introduction to Databases

Computer Science Department, Maseeh College of Engineering, Portland State University

link to DB Information       link to Piazza (for questions/answers)

Week

Date

Topic

Reading Assignment
(Read AFTER the lecture ... before the next class)

Slides and
Handouts

Assignment Schedule

Assignment Page

1

Jan. 10

Intro. to database schemas and SQL

Ch. 1 (just do a quick read)
Ch. 3, Sections: Intro, 3.1-3.4

Ch. 5, Sections: Intro, 5.1, 5.2

Lecture 1

 

Lecture 1 updated

Assignment 1 given

 

recordings

Jan. 12

SQL (cont.)

No additional reading

recordings

2

Jan. 17

Intro. to relational algebra

(Class was cancelled; this lecture was delivered on Jan. 19)

Ch. 5, Sections: 5.3-5.6

Ch. 4, Sections: Intro, 4.1, 4.2

 

Lecture 2

Assignment 1 due

Assignment 1 - answers

Assignment 2

Assignment 2 updated

 

recordings

Jan. 19

Relational algebra  (cont.)

(Makeup class; this lecture was delivered on Jan. 20)

 

Practice – basic SQL
(Answers – basic SQL)

Practice – Group By

(Answers – Group By)

 

recordings

3

Jan. 24

SQL (cont.)

Grad Assignment

Lecture 3

Assignment 2 due

Assignment 2 answers

Assignment 3

 

recordings

Jan. 26

Relational algebra (cont.)

 

Practice – UNION, etc.
(answers are built-in to this document)

 

recordings

4

Jan. 31

SQL views, triggers, & constraints

All of Ch. 2
except Sections 2.4.4, 2.4.5, 2.5.4

Ch. 3, Sections 3.5-3.9

 

Lecture 4

 

Lecture 4

updated (only DB design was changed)

Assignment 3 due

Assignment 3

answers

 

recordings

Feb. 2

Test 1 (SQL queries and relational algebra)

5

Feb. 7

Database Design using Entity-Relationship Diagrams

 

Lecture 5a

 

Lecture 5a updated

 

Lecture 5b

Assignment 4
(DB design)

 

recordings

Feb. 9

Normalization

Ch. 19, Sections 19.1, 19.2, 19.4-19.6, 19.9

 

6

Feb. 14

Normalization (cont.)

 

DBMS Architecture

 

Storage and Indexing

 

 

 

Chapter 1 of Architecture of a Database System

 

Section 9.1
Sections 8.1, 8.2, 8.3, 8.5, 8.6

Lecture 6

Assignment 4 due

Assignment 5

(normalization)

Feb. 16

Implementation of Relational Algebra Operators

Ch. 12

Section 14.4

 

 

7

Feb. 21

Relational Query Optimization

 

 


Section 15.3

 

Lecture 7

Assignment 5 due

Assignment 6

(query opt.)

Feb. 23

Physical DB Design

Ch. 20, Sections 20.1-20.3 and 20.7-20.9

 

 

8

Feb. 28

Large, parallel DBs

 

 

Lecture 8

Assignment 6 due

Mar. 1

Test 2

Ch. 6

 

 

9

Mar. 6

Embedded SQL
(grad student lectures)

 

Lecture 9

Assignment 7

(embedded SQL)

Mar. 8

Transactions and Recovery

 

 

10

Mar. 13

(cont.)

Ch. 16

Lecture 10

Assignment 7 Due

March 15

(cont.)

 

 

11

Tues., March 20
17:30-19:20

Test 3 (NOTE: Not the usual class time; rather, this is the standard final exam time for our class.)
In-class, open book, closed notes

 

Database Information 

PostgreSQL Query Page  to issue queries against the Sailors, LibraryDB, and Spy databases

Database Support Page  to see general information about the Sailors, LibraryDB, and Spy databases, DBMS products, and some data files.

Instructor

Lois Delcambre
(lmd with the usual address of cs dot pdx dot edu)

TA

Yue Zhang (yuez with the usual address)

Office hours
(Lois Delcambre)

Lois Delcambre: Immediately following class (just outside of the classroom)

Lois Delcambre: Monday 4-5:30PM FAB 115-12
Yue Zhang: Friday 1-2PM FAB 88-09

Other times by appointment; e-mail me to set up a face-to-face or phone appt.

Meeting Times

Tuesday/Thursday 16:40-18:30

Location

Neuberger Hall, 454  (NH 454)

Computer Accounts

All CS586 and CS386 students are entitled to use a computer account at PSU in the College of Engineering and Computer Science.  If you already have such an account, then you don't need to get another one.  You may find it useful to use College of Engineering and Computer Science account for your homework assignments.  Details on how to get an account can be found here:

http://www.cat.pdx.edu/index.php?option=com_content&task=view&id=86&Itemid=148

Submission of assignments:

Please turn your assignments in, on paper, at the beginning of the class when they are due. 

If you have a special circumstance that makes it difficult for you to turn your assignment in on paper, you can turn your assignment in by e-mail; send a copy to the grader and to the instructor.  Your assignment MUST be in a single attachment in one of the following file formats: .pdf, .doc, .rtf, or .txt.

Be sure to put your name and the name of your partner (if you have one) on your paper (or in the attached file that will be printed and graded).

We won’t use an E-mail List for the Class; we’ll use Piazza instead – for questions, answers, and class announcements

Visit http://piazza.com to log in and view questions, answers, and announcements (known as notes in piazza).

Catalog Description

Introduction to fundamental concepts of database management using primarily the relational model. Schema design and refinement. Query languages. Database application environments. Physical data organization. Overview of query optimization and processing, physical design, recovery and concurrency control. Query processing for search engines. The course will cover topics such as security, data warehousing and analytic databases. Prerequisites: CS 161 or 162, 250. Recommended: CS 251.

Textbooks

REQUIRED:
Database Management Systems, 3rd Edition.
By Raghu Ramakrishnan and Johannes Gehrke, McGraw Hill, 2000, ISBN 0-07-246563-8. 

SUGGESTED:
Since you will be using SQL in a number of assignments, you may wish to have additional information concerning the SQL query language. SQL: 1999 -- Understanding Relational Language Components, by Melton, Simon, and Gray (2001, ISBN 1-55860-456-1) is a good reference.

Under construction: For one of the assignments in this class, you have the choice of using Microsoft Access, PostgreSQL (a free DBMS), or another relational DBMS of your choice (with permission of the instructor). Thus you may wish to consult reference material/documentation for Microsoft Access, PostgreSQL, or for the DBMS of your choosing.

Assignments/Grading

Assignments: There are 7 assignments. 

Assignments can be done individually or in teams of two students.  If you work as a team of two students, then turn in one paper with both student names on the paper.

For undergraduate students, each assignment is worth 5.714% of your grade. 

For graduate students, each assignment is worth 4.5% of your grade.

Tests: There are 3 tests – each worth 20% of your grade:

Test 1 in Week 4 will cover material presented in weeks 1-3.

Test 2 in Week 8 will cover material presented in weeks 4-7.

Test 3 during final exam week (Week 11) will cover material presented in weeks 8-10.

 

You ARE allowed to use your textbook during the exam.  So please remember to bring your textbook to class for the exam.   

You ARE allowed to use dictionaries, including foreign language dictionaries.   You are NOT allowed to use any other material (such as the slides or your notes) during the exam.  

Work entirely by yourself on exams; ask questions only of the instructor or exam monitor.

 

Graduate Student Assignment:

Graduate students are required to complete one extra assignment that is worth 8.5% of your grade. 

 

Grade Computation

 

Undergraduates

Graduates

Individual Assignments

5.714%

4.5%

Total for Assignments

40%

31.5%

Test 1

20%

20%

Test 2

20%

20%

Test 3 (final exam week)

20%

20%

Graduate Assignment

Not applicable

8.5%

Total

100%

100%

 

Policies

Assignments are due at the beginning of the class period.  Please turn them in on paper, in class.  Late assignments (any assignment turned in after 4:40PM on the due date) will receive a 10% penalty.

Late assignments will not be accepted without approval from the instructor.  If an extraordinary situation (medical, personal, work-related, or other emergency) prevents you from working for a period of time, contact the instructors at your earliest possible convenience to discuss your situation and arrange a special schedule for assignments.

Makeup tests will only be given in cases of medical, personal, work-related, or other emergencies.  If an emergency arises and you need to reschedule a test, contact the instructors at your earliest possible convenience.  

Requests for regrading must be submitted to the instructor in writing within one week of the time the graded assignment was made available for pickup.  You must be specific in saying why you feel your answer deserves additional credit.  A request for regrade may result in a re-evaluation of the entire assignment and your total grade may increase or decrease as a result.

Students with disabilities who are in need of academic accommodations should contact me as soon as possible to arrange needed supports.  Students are also encouraged to contact the Disability Resource Center (DRC) for additional information on support services and available accommodations at 503 725-4150.  More information is available at: http://www.pdx.edu/uasc/drc.html

Academic Integrity

The PSU Student Code of Conduct http://www.pdx.edu/dos/codeofconduct will be enforced for this class.  Students have the responsibility to be familiar with the code and to behave in accordance with the code.