Logged in as: guest Log in

Announcements

Rather see one than be one.

  • The final exam will be given on May 3, at 4pm in FB007
  • There is a small addendum to problem 2 of problem set #2
  • Due to my tardiness in posting Problem Set #2 and its confused due date, I have changed it's new due date to 3/17
  • The first quiz will be held on February 24 and will cover Chapters 1-7 (Lectures 1-11)
  • I will be unable to make my normal office hours on January 28 (lm).
  • Our first optional lab meeting will be held on January 22.

 

Course Description


Databases are an indispensable tool for managing information, and a course on the principles and practice of database systems is now an integral part of any computer science curricula. This course covers the fundamentals of modern database management systems, in particular relational database systems.

The material covered in Comp 521 can be broken into three areas of emphasis. The first area includes database foundation material such as the relational model, relational algebra, relational calculus, and Boyce-Codd normalization. The second area of emphasis is database application programming and includes among others the topics of Structured Query Language (SQL), eXtensible Markup Language (XML), integrating databases into programs, web-based database usage, and triggers and active databases. The third area of emphasis is the systems side of databases, which includes database indexing, efficient query evaluation, the transaction-based model, concurrency, and security.

This course is suitable for computer science majors at both undergraduate and graduate levels. Students who wish to take this course should have some programming experience in a modern language and knowledge of data structures. There will be four homeworks, two quizzes, a small project, and a final exam.

 

Book, Course Information, and Prerequisites


Database Textbook Database Textbook

Textbook: Database Management Systems, Third edition
by Raghu Ramakrishnan and Johannes Gehrke
McGraw-Hill Higher Education © 2003, ISBN: 0072465638.
Credit Hours: 3
Location: FB007
Time: MW(F) 2:00-3:15PM
URL: http://www.cs.unc.edu/courses/
Prerequisite: COMP 401, Comp 411 or equivalents
Some background in data structures (Comp 410) is also helpful.





Course Instructors

Leonard Alex

 

Instructor: Leonard McMillan    Instructor: Alex Vu
Office: SN319    Office: SN307
email: mcmillan@unc.edu    email: alexander_vu@unc.edu



Office Hours: Thursdays 10:00-12:00am (Held in SN317)
(One, if not both of us, will be available at that time and place.)

 

Schedule


 

Date Lecture Topic Reading Assignment Homework
January 11 Introduction and Overview (pdf) Chapter 1
January 13 The Entity-Relation (ER) Model (pdf) Chapter 2
January 18 No Class (University Holiday)

January 20 The Relational Model (pdf) Chapter 3
January 22 Using Python and SQLite Optional Lab
January 25 Relational Algebra (pdf) Chapter 4.1-4.3 PS #1 Due 2/8
January 27 Relational Calculus (pdf) Chapter 4.3-4.5
February 1 SQL: Queries, Constraints, and Triggers; Part 1 (pdf) Chapter 5.1-5.4
February 3 SQL: Queries, Constraints, and Triggers; Part 2 (pdf) Chapter 5.5-5.10
February 5 Hands-on SQL Queries Optional Lab
February 8 Database Application Development; Part 1 (pdf) Chapter 6.0-6.4
February 10 Database Application Development; Part 2 (pdf) Chapter 6.3-6.7
February 15 Databases and Internet Applications; Part 1 (pdf) Chapter 7.0-7.5
February 17 Databases and Internet Applications; Part 2 (pdf) Chapter 7.5-7.9
February 19 Constructing Web-Based Database Applications Optional Lab
February 22 Overview of Storage and Indexing (pdf) Chapter 8
February 24 Quiz #1 (Lectures 1 to 11) Chapters 1-7
March 1 Finish Chapter 8 / Return Quiz
PS #2 Due 3/17
March 3 Storing Data: Disks and Files (pdf) Chapter 9
March 5 Hands-on on Storage and Indexing Optional Lab
March 8 No Class (Spring Break)

March 10 No Class (Spring Break)

March 15 Tree-Structured Indexing (pdf) Chapter 10
March 17 Hash-Based Indexing (pdf) Chapter 11
March 22 Overview of Query Evaluation (pdf) Chapter 12
March 24 External Sorting (pdf) Chapter 13
March 29 Evaluation of Relational Operators (pdf) Chapter 14 PS #3, Due 4/12
March 31 Snow-day give back (no class)

April 5 Schema Refinement and Normal Forms (pdf) Chapter 19
April 7 Database Design and Tuning (pdf) Chapter 20
April 12 Overview of Transaction Management (pdf) Chapter 16 PS #4, Due 4/26
April 14 Concurrency Control (pdf) Chapter 17
April 16 Optional Quiz Review Session

April 19 Crash Recovery (pdf) Chapter 18
April 21 Quiz #2 (covering material up to 4/12)

April 26 Database Security and Authorization (pdf) Chapter 21
April 28 Advanced Topic: Parallel and Distributed Databases (pdf) Chapter 22
May 3 Final Exam 4pm-7pm  

 

Other Materials




Site built using pyWeb version 1.10
© 2010 Leonard McMillan, Alex Jackson and UNC Computational Genetics