CS 3743 Introduction to Database Systems

advertisement
CS 3743 Introduction to Database Systems
Syllabus
Course Overview
This course is to study the fundamentals of database systems. The systems will be studied
from a user perspective as well as from a system perspective. The first part of the course
will cover the design of databases and database applications. We will study various data
models (relational, object-oriented, and entity-relationship models), relational database
languages (Relational Algebra and SQL), relational database design, and database
programming. The second part of the course will introduce the internals of database
management systems. We will explore implementation techniques for efficient data
storage and retrieval, query evaluation and optimization, transaction processing, crash
recovery, and concurrency control.
Prerequisite
Students are expected to have a grade C or better in CS2413 and CS3233. A working
knowledge of programming in C/C++ or Java, and using the Unix operating system is
required.
Textbook



Required Textbook: Fundamentals of Database Systems, 3rd Ed., by Elmasri &
Navathe
Recommended Textbook: Oracle8 Programming: A Primer, by R. Sunderraman
Following books are reserved in the JPL Reserve Desk.
o Database Management Systems, 2nd Ed., by R. Ramakrishnan
o Database System Implementation, by H. Garcia-Molina, J. Ullman, & J.
Widom
o Database System Concepts, 3rd Ed., by Silberschatz, Korth, & Sudarshan
See http://www.cs.utsa.edu/%7Ewzhang/resbooks.html for a more complete list
of database books reserved in the Library.
Last Day to Drop
Friday, March 14, 2003.
Grading Policy
150 pts
200 pts
150 pts
150 pts
300 pts
50 pts
Homework
Project
Midterm Exam I (around week 6)
Midterm Exam II (around week 11)
Final Exam - COMPREHENSIVE (TBD)
Intangibles
A letter grade is determined from the total numerical grades as follows: A: over 900 pts;
B: over 800 pts; C: over 700 pts: D: over 600 pts; F: below 600 pts.
Code of Honor
We believe in the highest level of academic integrity. Unless otherwise required, each
student is expected to complete his or her assignment individually and independently.
Although study together is encouraged, the work handed in for grading by each student is
expected to be his or her own. Any form of academic dishonesty will be strictly forbidden
and will be punished to the maximum extent.
Attendance Policy
Attendance is highly encouraged though no penalties will be assessed for absences.
However, attendance will be an important factor in determining a grade that is on the
borderline (see 5% intangibles). Students are responsible for topics covered in missed
classes, as well as any assignments due. Attendance is mandatory on exam days.
Late Policy
All assignments must be handed in by the due date to receive full credit. This will
generally be at the beginning of class on the specified date. An assignment that is one
class period late will lose 20%, and an assignment two class periods (one week) late will
lose 40%.
Exam Policy
All exams will be in-class, closed book and closed-note. No makeup exam will be given
unless compelling reasons can be supplied and verified, and in case it is given, a makeup
exam is generally somewhat more difficult than the regular scheduled exams. Missed
exams will receive no grade. No additional activities will be assigned to gain credits to
make up for low grades on exams.
Students who have greater than 142 pts on both midterm exams, and have greater than
142 pts on all homework assignments, and have greater than 180 pts on the project may
elect to take a “mini” final, that is the portion of the final exam that covers the material
not tested on the midterms. Their final grade will be based upon approximately 800 pts
rather than 1000.
Comments on Exams
The exams are designed to be tough. For the most part, you won’t find the simple
“regurgitate what was in the text” type of question. This is a concepts course and as
such, concepts will be tested. Comprehending a concept entails “translating”,
“interpreting”, and “extrapolating.” What this means in plain English is that for many
test questions, you will not have seen something exactly like it before, and may even
have to take what you’ve learned and apply it to a new scenario. Some additional
(seemingly obvious) hints are listed below:
1) READ THE QUESTION & answer the question asked.
2) Do NOT change the question in your own mind.
3) Once you have convinced me you know the answer, STOP WRITING! Extra
“correct” information will not count against you, but extra incorrect information will.
4) Do NOT shotgun an answer (writing down everything and expect me to pick out the
correct stuff.)
5) In your answer, please do NOT waste your time or my time by restating the question,
just answer the question.
6) READ THE QUESTION!!!
7) If you have any doubts, confusions, concerns, etc. about a question – ASK ME!!! If
you’re not sure about what I am asking, ASK ME!!! Do NOT wait until we go over
the exam and then say, "Gee, I didn’t understand what you meant. I was confused.”
ASK!!! Otherwise I will assume that you understood the question, you just didn’t
know the answer.
Communication


A class mailing list will be set up for the course. Your CS email address is in the
list. This mailing list will be used to send important announcements to the entire
class. You are responsible for checking your email frequently. You may want to
set up automatic forwarding to your email if you do not use your CS account
regularly.
The preferred time and place to discuss academic issues with me is during my
office hours. In case you could not make to the office hour due to a time conflict,
an appointment may be set up at a mutually agreeable time by sending me an
email.
Class Schedule (Tentative)
Color Keys:
Topics
Reading Assignments (from the textbook)
Homework Due
Project Due
Special Events
Week of
Tuesday
Thursday
1. Jan 13
Introduction
Ch. 1, 2
E/R Model
Ch. 3
2. Jan 20
Relational Model
Ch. 7.1-7.3
Team Formed
Relational Algebra
Ch. 7.4-7.5
Homework 1 Due
3. Jan 27
Functional Dependency
Ch. 9.1, 14 .1-14.2
Part One Due
Normalization
Ch. 14.3-14.5
4. Feb 3
Normalization Examples
Ch. 14
Database Design Algorithms
15.1
5. Feb 10
Homework 2 Due
Part Two Due, Review
Midterm Exam I
6. Feb 17
SQL: Overview & DDL
Ch. 10.1-10.6
SQL: Interactive Queries (1)
Ch. 8
7. Feb 24
SNOW DAY !!!
Review Exam I
Homework 3 Due
8. Mar 3
Review Exam I Cont.
SQL: Interactive Queries (2)
Oracle 8 Book: Ch. 2
9. Mar 10
PL/SQL
Oracle 8 Book: Ch. 4
Part Three Due
Embedded SQL
Oracle 8 Book: Ch. 3, 5
S P R I N G B R E A K !!!
10. Mar 24
Data Storage
Ch. 5.1, 5.2, 5.5, 5.7, 5.8, 5.9
Hashing and Indexing
Ch. 6.1, 6.2, 6.3
11. Mar 31
Query Processing & Optimization
Ch. 18
Homework 4 Due
Transaction Processing
Ch. 19
Part Four Due
12. Apr 7
Review for Exam II
Homework 5 Due
Midterm Exam II
13. Apr 14
Concurrency Control
Ch. 20.1
Review Exam II
14. Apr 21
Crash Recovery
Ch. 21.1-21.3, 21.5
Part Five Due
OODB/ORDB, BONUS TEST (1 hr)
Ch. 11, 12, 13
15. Apr 28
Review
Homework 6 Due
LATE NOT ACCEPTED!!!
16. May 1, 2 Study Days
17. May 3
Final Exam
Thursday, May 8, 8 – 10:45pm
Download