DASC 5333 Database Systems for Data Science
CSCI 4333 Design of Database Systems
Fall 2024
Lecture Notes and Syllabus

by K. Yue

The syllabus is tentative. Actual contents and order of coverage may change. There will be around eight homework assignments, the actual number is subjected to changes. Additional materials are topics that may be covered if time allows.

Date
Contents
Comments
Week #1
(8/19-21): MW for CSCI 4333, T for DASC 5333
An Introduction and overview of database systems
Database basics
An introduction to the relational database model
The Toy University Database (toyu)
The Swim Database (Swim)
Read Ricardo Chapter 1
Introduction to the course
DB Basics
Read Ricardo Chapter 2, 4.2, 4.3, 4.4
The Relational Model
Read Ricardo Chapter 3
Toyu DB: toyu
Swim DB: swim
Week #2
(8/26-28)
An introduction to simple SQL and MySQL


A First Look at SQL
Read Ricardo 4.1, 4.2, 5.1, 5.2, 5.4.1 and 5.4.2
Null Values
Introduction to DB Modeling.
Read Chapters 3 and 10.
Week #3
(9/3-4)
9/2 Monday Labor Day Holiday
An introduction to conceptual data modeling
Data modeling using UML
Introduction to UML/DB Modeling
Read Chapter 10.
Week #4
(9/9-11)
Data modeling using UML
Mapping UML data models to relational schema
Mapping UML Class Diagrams to the relational model
Week #5
(9/16-18)
Introduction to Relational Algebra (RA) and Relational Calculus (RC)
Read Ricardo 4.5
toyu Query Exercise (in PDF)
Introduction to RA and RC
Week #6
(9/23-25)
SQL

Read Ricardo 5.3 to 5.4
An introduction to SQL and MySQL
Read Ricardo 5.5-5/8, 9.1, 9.2
Suggested MySQL solution to even numbered questions of toyu exercises
Week #7
(9/30-10/2)
More SQL

More SQL

Week #8
(10/7-10/9)
Mid-term Exam, in person, class time (one hour 20 minutes):
  1. CSCI 4333.1 & CSCI 4333.2: 10/9 Wednesday
  2. DASC 5333.1: 10/8 Tuesday (no lecture that day)
Mid-term examination will be conducted face to face. Closed book. However, you can bring an 'information' sheet: letter size, can be printed or written on both sides, which must be prepared by yourself.
Week #9
(10/14-16)
Introduction to Python
Embedded SQL Programming
Introduction to Python
Read Ricardo Chapter 6
MySQL programming in Python
Week #10
(10/21-23)
Embedded SQL Programming
Web DB development with Python
Introduction to Database Design
Normalization theory and normal forms
MySQL Python Web Development
Introduction to Database Design
Introduction to Functional Dependency and Normal Forms
Week #11
(10/28-30)
Normalization theory and normal forms

Theory of Functional Dependency
Normal Forms and Normalization Theory
Read Ricardo Chapter 14
Week #12
(11/4-6)
Normalization theory and normal forms
Last day to withdraw: November 4 (Monday)
Week #13
(11/11-13)
Normalization theory and normal forms
Transaction Management
Introduction to NoSQL database

Transaction management
Introduction to NoSQL database
Week #14
(11/18-20)
NoSQL DB: MongoDB
Introduction to Mongo DB

Week #15
(11/25-26)
11/25-26 regular classes
11/27 Happy Thanksgiving
DB Security
Physical database
DB Security and SQL Injection
Physical database
Week #16
(12/3-4)
No class
Final Examination (in person)
  1. CSCI 4333.1: 12/4 Wednesday 1:00-3:00pm
  2. CSCI 4333.2: 12/4 Wednesday 4:00pm -6:00pm
  3. DASC 5333.1: 12/3 Tuesday 1:00pm - 3:00pm
Final examination will be conducted face to face. Closed book. However, you can bring two 'information' sheets: letter size, can be printed or written on both sides, which must be prepared by yourself.

(*) Covered only if time permits. Not in the examinations.