[ General Information
| Course Outline
| Lectures
| Handouts
| Other Pointers
| Requirements
]
[ Announcements
| What's new
]
Course description: This course is for students interested in the design of database management systems to obtain integrity and availability of data. We will focus mainly on relational data models and relational query operations, together with SQL for data definitions and queries. We will discuss design methods including the entity-relationship model and relational normalization theory. We will also discuss how data is stored and indexed and how queries are processed and optimized. Students undertake a semester project that includes the design and implementation of a database system. We will touch upon advanced topics such as object-oriented databases as time permits. | Prerequisites: CSE214 and CSE220, or undergrad discrete math (sets, relations, functions, predicate logic), data structures, computer organization, plus programming in Java. | Credits: 4.
Instructor: Annie Liu | Email: liu AT cs DOT sunysb DOT edu | Office: Computer Science 1433 | Phone: 632-8463.
TAs: Zhe Fan |
Email: fzhe AT cs DOT sunysb DOT edu |
Phone: 216-2338.
Diptikalyan Saha |
Email: dsaha AT cs DOT sunysb DOT edu |
Phone: 632-7679.
Wenxin Song |
Email: wenxin AT cs DOT sunysb DOT edu |
Phone: TBA.
Lujin Wang |
Email: lujin AT cs DOT sunysb DOT edu |
Phone: TBA.
Hours: Tue Thu 9:50-11:10AM, in Harriman 137.
Annie's office hours: Tue 8:30-9:50AM, Thu 11:10AM-12:30PM, in CS 1433.
Lujin's office hours: Wed 3-5PM, Fri 2:10-3:10PM, in CS 2110.
Zhe's office hours: Tue 4-5PM, Thu 1-2PM, Fri 10:20-11:20am, in CS 2110.
Dipti's office hours: Mon 9:30-10:30AM, in CS 2110.
Wenxin's office hours: Mon 2:10-3:10PM, in CS 2110.
Textbook: Database and Transaction Processing: An Application-Oriented Approach by Philip M. Lewis, Arthur Bernstein, and Michael Kifer. Addison Wesley, 2002. In addition, you should take good notes during the lectures.
Grading: Weekly or biweekly assignments, on homeworks or the project, together worth 30% of the grade. Two midterms and a final, each worth 20%, 20%, and 30%, respectively, of the grade. See Requirements.
Course homepage: http://www.cs.sunysb.edu/~liu/cse305/,
containing all course related information.
Course Outline
We will start with an overview of databases and transaction processing, followed with an introduction to the basic concepts and to SQL.
Then, we will study basic database design using the entity-relationship model, learning to model entities, relationships, and additional constraints.
We will then focus on two main parts of the course: (1) relational data model and the SQL data definition sublanguage, and (2) relational algebra and the SQL query sublanguage.
Next, we will discuss more database design using relational normalization theory, discussing normal forms and their construction.
Additionally, we will discuss triggers and more SQL.
Finally, we will see how data is stored and indexed and how queries
are processed and optimized.
Slides for Ch.1:
Overview:
Database Management, Transaction Processing, Analytic Processing
Slides for Ch.2:
A Closer Look:
Basic Description of Data and Operations and SQL
Slides for Ch.5:
Entity-Relationship Model (Part 1)
| (Part 2)
| (Part 3)
Slides for Ch.4:
Relational Data Model and SQL DDL (Part 1)
| (Part 2)
| (Part 3)
| (Part 4)
Slides for Ch.6:
Relational Algebra and SQL DML (Part 1)
| (Part 2)
| (Part 3)
| (Part 4)
Slides for Ch.8:
Relational Normalization (Part 1)
| (Part 2)
| (Part 3)
| (Part 4)
Slides for Ch.9:
Triggers and Active Databases
Slides for Ch.10:
SQL in the Real World (Part 1)
| (Part 2)
Slides for Ch.11:
Physical Data Organization and Indexing (Part 1)
| (Part 2)
| (Part 3)
Slides for Ch.13:
Query Processing Basics
Slides for Ch.14:
Query Optimization Overview
Handout H1: Homework 1: Questionnaire Handout H2: Homework 2: An Interesting Database
System Application Handout H3: Homework 3: ER Model, Relational Data
Model, SQL Data Definition Language Handout H3S: Solution to Homework 3 Handout H4: Homework 4: Relational Algebra, SQL
Query Sublanguage, Normal Forms Handout H4S: Solution to Homework 4 Handout H5: Homework 5: More SQL, Data Storage
and Indexing, Query Processing Handout H5S: Solution to Homework 5 Handout P1: Project 1: Entity-Relationship Model
for Stony Brook Car Pooling Management System Handout P1S: Solution to Project 1 Handout P2: Project 2: Creating Relations / SQL
Tables Handout P2S: Solution to Project 2 Handout P3: Project 3: Querying and Updating
Data Handout P3S: Solution to Project 3 Handout P4: Project 4: Building Application
Programs, Testing, and Improvements Handout M1: Midterm 1 Handout M1S: Solution to Midterm 1 Handout M2: Midterm 2 Handout M2S: Solution to Midterm 2 Handout F: Final Exam Handout FS: Solution to Final Exam
Windows
NT Transaction Processing Labs: policies, FAQ, Sybase,
JDBC,
JBuilder,
etc.
Sybase's
Transact-SQL User's Guide.
Ghostscript, Ghostview and
GSview: Ghostview and GSview are for viewing and printing
Postscript documents (some of the handouts for this course will be in
this format). If you use Linux, then this software is already
installed on your machine. On Windows, you need to download both
Ghostview and Ghostscript (and also some fonts). Unzip Ghostview and
run setup.exe. It will unpack and install the rest.
The gzip homepage: GNU zip for compression.
Miscellaneous:
You are required to learn all information on the course homepage. You
should check the homepage periodically for Announcements and What's new
You are required to do all course work. In particular, you are
required to learn all materials covered in lectures as they are needed
for the course work. Besides the exams, there are two kinds of
assignments, described below.
Unless permitted explicitly, all work on the assignments must be
done individually. You may discuss with others and look up
references, but you must write up your solutions independently and
credit all other sources that you used. Any plagiarism or other
forms of cheating will result in an F.
Unless specified otherwise, all assignments will be due in class on
the due date, the same day that the subsequent assignment or exam will
come. No late assignment will be accepted.
The following information must be contained in all project files
and homeworks: Student ID, Name, Email address, Due Date.
It is important that you explain your work carefully. All work must
be submitted in a neat and organized fashion, and it must be typed and
stapled. You might lose points if these conditions are not met. If
you feel that you deserve a higher grade see one of the TAs promptly
no later than two weeks after the assignment was graded.
Using the Transaction Processing Lab: For the project, you
will be given an account in the Transaction Processing Lab. Do not
let anyone else use your account. Please be conscious of security in
the lab since theft of departmental equipment is a problem that
affects us all. Although your project will have to be demonstrated in
the lab, if you have your own computer it may be possible for you to
do much of the development there. If you have any problems with the
hardware or software in the lab (other than with the requirements of
the project itself) send E-mail to ntadmin AT cs DOT sunysb DOT edu with a copy
to me. Neither the TAs nor I can fix such problems.
Again on cheating: Unfortunately, cheating has increasingly
become a problem among students in the Department. You should be
aware that cheating on homeworks or the project will be treated as
severely as cheating on exams. While we don't mind if you discuss the
homeworks or project with other students, if we find that you have
turned in work that was essentially done by someone else, or you have
given your work to someone else, you will fail the course. Each
semester several such cases are discovered. If we decide to turn the
case over to the CASA committee, the punishment can be worse. If for
any reason you can't do the work yourself, come to see us right away
and we will try to get some help for you. The last day to drop a
course without tuition liability is Jan 29. The last day to drop a
course without a withdrawal being recorded is Feb 5.
Disability: If you have a physical, psychological, medical
or learning disability that may have an impact on your ability to
carry out assigned course work, I urge you to contact the staff in the
Disabled Student Services office (DSS), Room 133 Humanities,
632-6748/TDD. DSS will review your concerns and determine, with you,
what accommodations are necessary and appropriate. All information
and documentation of disability is confidential.
Lectures
Lecture 1 (01/24/02): Overview: course information and
requirements; database management systems, transaction processing,
analytic processing. Reading: Ch.1, Sec.2.3.
Homework: Handout H1.
Handouts
Other Pointers
It is installed in the Trans Labs at
H:\Documentation\Sybase\sqlug_v12_0.pdf
Other Adaptive Server
Enterprise 12.0 Product Documentation.
Sybase ASE v12.0 is currently running on all Sybase servers in the
department.
A
little SQL tutorial, provided by Deji Abraham. (I wish we could
remove the geocities ads on it.)
Anomaly
and decomposition in the context of a
little database tutorial, provided by Eve Fon Wu.
Requirements
liu AT cs DOT sunysb DOT edu