CS 3200: Database Design

This course presents the database design process practiced when creating a relational database; it also presents the relational database management system’s architecture as well as the fundamental ACID properties of a relational database management system. The extended entityrelationship model and normalization will be used in designing relational schemas. Relational algebra and its relationship to the SQL language will be presented. Advanced topics include triggers, stored procedures, indexing, query plan representation, elementary query optimization, and fundamentals of transactions, concurrency and recovery. The course will also include an introduction to NoSQL databases and provide students the opportunity to compare SQL to NoSQL. Students will work in groups to define a database project that includes the design and implementation of a database as well as an application for interacting with the database.

Assignments

Assignnments can be found in blackboard.

NB:  Assignments are due at 11:59 on the due date. There will be a 10% penalty for each late day.


News

[9/7/2016] First day of class

 


Lectures

(Future lectures and events are tentative.)

Date

Topic

Homeworks,  Readings and Comments

Sep 7

Course Introduction

 

Sep 8

Introduction to Databases

Read Chapter 1 in textbook

Sep 12

Database Environment

Read chapter 2; Optional: Chen’s E-R Model

Sep 14

Database Environment

Read chapter 2; Optional: Chen’s E-R Model

Sep 15

Database Architectures

Read Chapter 3

Sep 19

MySQL practicum

Murach Chapter 3,

MySQL workbench user manual; Day to install MySQL on your laptop during class time

Sep 21

Quiz 1 (Chapter 1, 2, 3.1,3.3,3.5,3.6)

 

Sep 22

Relational model

Connolly Chapter 4

Sep 26

SQL CREATE

SQL Murach Chapter 11

Sep 28

SQL SELECT

Murach Chapter 3

Sep 29

UML Modeling 

Connolly Chapter 12

Oct 3

UML Modeling

Connolly Chapter 13

Oct 5

UML modeling

Connolly Chapter 13

Oct 6

UML Modeling  

 Connolly Chapter 13

Oct 10

Holiday

 

Oct 12

Normal form , functional dependencies

Connolly 14.5-14.9, Chapter 17

Oct 13

Advanced SQL

Murach Chapter 10 SQL Aggregate functions Ch. 6

Oct 17

Quiz 2

 

Oct 19

SQL JOIN and Union , Procedures and Triggers

Murach Chapter 4, 7

Murach 13, 15

Oct 20

Relational Algebra, RA to SQL

Connolly 5.1

Oct 24

SQL compound and nested queries

Murach Chapter 5

Murach Chapter 6

Murach Chapter 7

Oct 26

Embedded SQL, SQL DDL commands

Murach Chapter 13

Murach Chapter 15

Murach Chapter 16

Oct 27

Quiz 3 (SQL, Relational Algebra),

Oct 31

Transactions, Concurrency , ACID

Connolly Chapter 22

Nov 2

Locks deadlocks , Progress report due

Connolly Chapter 22

Nov 3

Recoverability, Isolation levels

Connolly Chapter 23

Nov 7

Mongo DB / No SQLMapReduce

Mongo DB user manual, ACM article on MongoDB, Bring your laptop to class for the installation

Nov 9

Quiz 4 (Transactions)

 

Nov 10  

No SQL and Mongo DB  

Nov 14

File structures

Appendix F

Nov  16

Tree index

Appendix F

Nov 17

Hash index, bitmask index

Appendix F

Nov 21

HashIndex , Bitmask Index

Appendix F

Nov 23

Holiday

 

Nov 24

Holiday

 

Nov 28

Quiz 5 (File structure, indexes, NoSQL)

 

Nov 30

Project presentations

 

Dec 1

Project presentations

Dec 5

Project presentations

 

Dec 7

Project presentations, Projects due

 

 

Course Information

Instructor: Kathleen Durant

 

Prerequisites

CS 2510 (CS U213)

Point Distribution

Required Textbooks

Database Systems A practical approach to design, implementation and management (6th edition) by Thomas Connolly and Carolyn Begg

Murach’s My SQL by Joel Murach (2 nd edition) Other Recommended Textbooks

Resources

Classic Papers

 

My SQL

 

JAVA and My SQL

·         JAVA JDBC Database Access

·         My SQL JAVA J Connector Manual

·         JDBC Tutorial by Maryam Aziz

Example connection code: DBDemo.java

 

Python and My SQL

Tutorial on Creating a Web Application using Python, Flask, MySQL

Connecting to My SQL with Python by Maryam Aziz

      Example connection code: DBDemo.py

PHP and My SQL

Connecting to My SQL with PHP by Rohan Rayarikar

List of php functions for My SQL

  R and My SQL

·        R installation

·        R Studio installation

·        Connecting to My SQL from R

   C# and Visual Studio

Setting up a Web application in Visual Studio by Dominic Catalano

 NO SQL CAP Theorem

·         General Description of CAP as well as its significance by Julian Browne

·         Keynote Presentation PODC 2000 by Brewer

·         Proof of CAP by Gilbert & Lynch

·         Implications of CAP by Gilbert & Lynch

 

MongoDB

 

Other NO SQL Concepts

 

Semantic and Network relationships

Homework  Resources

·         Star wars files

 

Academic Integrity Policy

A commitment to the principles of academic integrity is essential to the mission of Northeastern University. The promotion of independent and original scholarship ensures that students derive the most from their educational experience and their pursuit of knowledge. Academic dishonesty violates the most fundamental values of an intellectual community and undermines the achievements of the entire University.

For more information, please refer to the Academic Integrity Web page.