CSCI 1270

Database Management Systems

Introduction

Welcome to CSCI 1270!

Link to previous course offering.

The concepts you will learn in this class include aspects of database design, database languages, and database-system implementation. The course textbook is Database Systems Concepts, Seventh Edition by Silberschatz, Korth, and Sudarshan. ISBN: 9780078022159. Lectures are held on Mondays and Wednesdays from 3:00 pm to 4:20 pm virtually via Zoom unless otherwise specified. Optional in-person seminars are held on Friday at the same time. Please stop on by!

If content is not showing up for you on the website, hard refresh the page (ctrl-shift-r)!

Shopping Period FAQ

Will this course be accessible to remote students?

What is the weekly workload for CSCI 1270? Any time commitment estimates?

I've heard this course will be run in Golang and SQL; should I prepare?

I need an override code! I need to enroll concurrently with another course! I have another special request that requires instructor permission!

Can I audit this class?

Can anyone attend the seminars?

{Any other question}

Assignments

Please note: the dates on this page are tentative and may change to correspond with changes in lecture pacing.

All weekly written and coding assignments should be turned in via Gradescope. All assignments will be released by 11:59 PM on the day listed. All assignments are due at 11:59 pm ET on the day listed. They will be graded and returned with solutions for the problems. Written assignments should be submitted as PDFs.

All quizzes will be available through Gradescope on the day listed below. Once you've started, you will have 90 minutes to complete the quiz.

Written Coding Out In
Setup - - Sep 20
Relational Algebra Go Sep 15 Sep 22
ER Diagrams SQL Sep 22 Sep 29
Constraints + Normalization Pager Sep 29 Oct 11
Quiz 1 - Oct 13 Oct 13
Storage + B-Trees B+Tree Oct 13 Oct 25
Hash + Join Algorithms Hash Oct 25 Nov 01
Query Optimization Query Nov 01 Nov 08
Quiz 2 - Nov 10 Nov 10
Latches + Transactions Concurrency Nov 10 Nov 24
Logging + Recovery Recovery Nov 29 Dec 06
Quiz 3 - Dec 14 Dec 14
Gearup Date Slides Recording
Go Sep 15 Slides Recording
SQL Sep 22 Slides Recording
Pager Sep 29 Slides Recording
B+Tree Oct 13 Slides Recording
Hash Oct 25 Slides Recording
Query Nov 1 Slides Recording
Concurrency Nov 10 Slides Recording
Recovery Nov 29 Slides Recording

Late Assignments

Each student gets 5 late days during the semester, in that they are not penalized for them. You may not use more than 2 late days on a single assignment. At the end of the semester, we will optimally distribute the late days over your projects. A late day used on either the written or code portion of an assignment counts as a late day for the assignment as a whole. After your five late days, we will take off 25% per late day, distributed optimally.

Solution Code Requests

Since projects in CSCI 1270 build atop one another, we recognize that if a student falls behind, later projects will be impossible. If you require solution code to continue in the course, please fill out the form linked here to request it. You will only receive solution code two days after the due date of the relevant project due date(s) at the earliest. Most importantly, note that distributing or making available solution code in any way, knowingly or unknowingly, is a violation of the Academic Code. This includes sharing code with a peer in the class, even if they have also filled out the request form. For the most up-to-date information on solution code requests, please see our Missive.

Lectures

Lectures are held on Mondays and Wednesdays from 3:00 pm to 4:20 pm virtually via Zoom unless otherwise specified. Lecture slides and recordings will be posted soon after lecture ends. You are highly encouraged to attend all lectures.

The following lecture schedule is very approximate. Please note that the schedule may be subject to change depending how quickly or slowly we are able to move through lectures.

Topic Date Slides Recording Book
Introduction to Databases Sep 08 1 Recording CH1
Relational Model + Algebra Sep 13 1, 2 Recording CH2
Entity-Relationship Models Sep 15 1 Recording CH6
Relational Calculus + SQL Sep 20 1, 2 Recording CH3, CH4, CH5
Constraints Sep 22 1 Recording CH4, CH7
Normalization Sep 27 1 Recording CH7
Storage and Disks Sep 29 1, 2 Recording CH12
B-Trees Oct 04 1 Recording CH13, CH14
Hashing Oct 06 1, 2 Recording CH 14
Indigenous Peoples' Day (No Class) Oct 11 - - TBA
Quiz 1 Oct 13 - - -
Query Processing Oct 18 1 Recording CH14
Query Processing cont. Oct 20 - Recording CH15
Transactions Oct 25 1 Recording CH15, CH16
Transactions cont. Oct 27 - Recording CH17
Recovery Nov 01 1 Recording CH17
Concurrency Nov 03 1 Recording CH18
Parallel Databases Nov 08 1 Recording CH19
Quiz 2 Nov 10 - - -
Distributed Databases Nov 15 1, 2 Recording CH21-23
NoSQL Databases Nov 17 1 Recording CH21-23
Thanksgiving (No class) Nov 22 - - CH29
Thanksgiving (No class) Nov 24 - - -
Thanksgiving (No class) Nov 29 - - -
Guest Lecture - John Meehan Dec 01 - Recording -
Guest Lecture - Franco Solleza Dec 06 Slides Recording -
Guest Lecture - Andy Pavlo Dec 08 - Recording -
Quiz 3 Dec 14 - - -

Seminars

To spread our love of databases and to expose you to cutting edge database concepts, the CSCI 1270 TAs run seminars on Fridays from 3:00 pm to 4:00 pm, in-person in CIT Lubrano (477). Recordings will be posted soon after the seminar ends. You are highly encouraged to attend any seminars that interest you!

The following seminar schedule is very approximate. Please note that the schedule may be subject to change depending on TA availability.

Topic Date Slides Recording
Efficient SQL Oct 01 Slides Recording
Time Series Databases Oct 08 Slides Recording
Advanced Indexes Oct 22 Slides Recording
Denormalization & MongoDB Oct 29 Slides Recording
Graph Databases Nov 12 Slides Recording

Calendar

Zoom links are included in the Google Calendar event, as well as in the SignMeUp Queue.

Resources

Guides

Documents

Contact

Staff

Stan Zdonik

Professor | sbz

Desmond Cheong

HTA | dcheong

CS senior specializing in systems, powered by yakult and kaya toast.

🙃

Nick Young

HTA | nyoung10

Hi! I'm from Vancouver, Canada and I enjoy photography, badminton, and building mechanical keyboards!

🧋

Connor Luckett

GTA | cluckett

Hi, I'm Connor! I am in my third year as a Ph.D. student, mentored by Dr. Cetintemel. I love to think about how we can help others navigate GDPR/CCPA compliance. I am an avid drummer and a Private Pilot.

✈️

Aakansha Mathur

UTA | amathur7

I am a SCM CS student at Brown. My academic interests are databases, machine learning and natural language processing.

❄️

Huiyuan Wu

UTA | hwu62

Hi, i am Huiyuan Wu, a second year Master's student in computer science.

😅

Junchi Chu

UTA | jchu27

I love cooking, fishing, writing my novels. I like basketball, my favorite team is GSW!

😂

Sayan Chakraborty

UTA | schakr12

Hi! I'm an international CS grad student from India. I can speak 4 languages. In my spare time you can find me eating/cooking good food, listening to podcasts or sleeping (basically I'm the human form of a Panda).

😴

Solomon Boukman

UTA | sboukman

I use he/him pronouns, and I am from New Jersey. For fun I like playing basketball, videogames, skateboarding, and gardening. My interests with computer science are machine learning and data engineering.

💯

Amrit Singh Rana

UTA | arana16

Hi. I am Amrit. I am a first year ScM student. I am interested in Distributed Systems. I like to hike, travel and play music in my free time.

🎹