Non-Standard Database Systems /
Parallel and Distributed Data Management

Vorlesung:
Proseminar:
Semester:
SS 2023/2024
PlusOnline:

News

Lecture (VO)

Questions and discussions

For questions and discussions (also among students) regarding course specific topics, please use the Slack channel #nsdb-vo-2024ss (Workspace dbteaching.slack.com).

Slack registration: Students register with their university email here: https://dbteaching.slack.com/signup

Schedule

Slides

Each set of slides treats a specific topic area and will be discussed in one or more lecture units. Slides that have not yet been discussed during the lecture may be subject to change. Once a slide set has been discussed in class, only bug fixes will be applied. Slide sets have a version (date) on the title page.

The slides and their discussion during the lecture are essential for the exam perparation.

Note: The slide version of last year is already online to give you an overview, but this version may be subject to change.

Topics Slides Handouts Literature
Database System Architectures [1x1] [2x2] DSC6 17
Parallel Databases [1x1] [2x2] DSC6 18
Distributed Databases [1x1] [2x2] 2-Phase-Commit
Persistent Messaging
Distributed Locking
DSC6 19

Previous Knowledge Expected

Basics of transactions:
DSC6 14.1–14.2, 14.4–14.6
Concurrency Control:
2-Phase Locking (2PL): DSC6 15.1.3
Timestamp-Based Protocols: DSC6 15.4
Deadlocks: DSC6 15.2

Literature

DSC6 — Database System Concepts
Silberschatz, Korth, Sudarshan. Database System Concepts.. McGraw-Hill, 2011, 6th edition.
Multiple copies of the book are available in the textbook collection of the department library (Itzling).
DSC7 — Database System Concepts
Silberschatz, Korth, Sudarshan. Database System Concepts.. McGraw-Hill, 2019, 7th edition.
The book is available online from our university library

Exam

The exam will be written. In the case of very few registrations for an exam date, the exam may be held as an oral exam; in this case the students will be notified before the exam.

The exam dates will be announced on PlusOnline.

At the written exam you are allowed to use one A4 sheet with your personal notes (both sides, hand written or printed). During the oral exam no notes are allowed.

Previous exams: (the topics covered in the lecture may have changed over the years)

You may register or cancel the registration up to 48 hours before the exam. If you do not show up for a registered exam, you will be blocked for this exam according to the university regulations §15(7).

Lab (PS)

The proseminar will complement the material covered in the lecture. Throughout the course of the semester, students will gain hands-on experience by working on several programming assignments. The assignments are designed to deepen the understanding by implementing (simplified) algorithms used in parallel/distributed database systems as presented in the lecture.

For questions and discussions (also among students), please use the Slack channel #nsdb-ps-2024ss (Workspace dbteaching.slack.com).

Assignments

You will work on the projects in groups of three people each. The assignment sheets will be published on Blackboard and for each assignment, we will provide skeleton files in which you are expected to implement your solution. We will ship the skeleton files in respositories using GitHub Classroom to manage deadlines and team accesses for collaboration. For each assignment, you will receive a new Classroom link (and thus a new repository), but your team won’t change throughout the semester. More details on the setup will be given in Assignment 0.

Assignment Total Points Release Date Due Date
Assignment 0: Setup & Warmup 10 points 05.03.2024 25.03.2024 @ 23:59
Assignment 1: Parallel Range-Partitioning Sort 20 points 26.03.2024 15.04.2024 @ 23:59
Assignment 2: Parallel Hash Join 20 points 16.04.2024 06.05.2024 @ 23:59
Assignment 3: Two-Phase Commit 30 points 07.05.2024 27.05.2024 @ 23:59

Submission

Commit and push your team's solution to the repository provided by GitHub Classroom. You can push as many changes as you want, only the most recent commit on the main branch will be graded. You cannot push to the repository after the deadline has passed. Do not post your project on a public GitHub repository and do not copy solutions from anyone else.

Group Evaluation

After an assignment's deadline (except for Assignment 0), the lecturer will meet each group individually (in 15 minute slots) for evaluation (= after-assignment meeting). Every team member must have an in-depth understanding of all parts of their team's submission, otherwise individuals may lose points. The appointments will be announced in the schedule below. Attendance is obligatory for all members of the team that is evaluated.

Grading

Every assignment consists of multiple parts (implementation plus a few questions) and each part is labeled with the amount of points that can be achieved. In total, all four assignments sum up to 80 points and the final grade is computed as follows:

Score Grade
71-80 1
61-70 2
51-60 3
41-50 4
0-40 5

Course Unenrollment

Unenrollments are possible only until before the 3rd lab unit, i.e., all students that are still enrolled at the time of the 3rd lab unit will be graded.

Schedule

Date Mode Additional Information
05.03.2024 Kick-off meeting (mandatory) The slides are on Blackboard
12.03.2024 Framework Discussion The slides are on Blackboard
19.03.2024 Q&A (optional) -
09.04.2024 Q&A (optional) -
16.04.2024 After-Assignment Meeting Teams in slot A (see below)
23.04.2024 After-Assignment Meeting Teams in slot B (see below)
30.04.2024 Q&A (optional) -
07.05.2024 After-Assignment Meeting Teams in slot A (see below)
14.05.2024 After-Assignment Meeting Teams in slot B (see below)
28.05.2024 After-Assignment Meeting Teams in slot A (see below)
04.06.2024 After-Assignment Meeting Teams in slot B (see below)

After-Assignment Meetings

Slot A: 16.04. / 07.05. / 28.05. Slot B: 23.04. / 14.05. / 04.06.
Time Team Time Team
14:45 Rusty Nodes 14:45 KAS
15:00 RUSTyDatabase 15:00 IHaveNothingToSayAndIAmSayingIt
15:15 BirgitKilianPhilipp 15:15 LGM
15:30 AlPiTi der Tapir 15:30 TeamNumberOne
15:45 RustTeam9