Final Exam
Thursday, May 4, 2023 ,2:00pm  4:00pm,Stuart Building SB104
The exam will be closed books and closed notes. Many of the topics have already been covered in the quizzes and mid term exam. Topics covered will be:
Solutions: Solutions are available here

Storage
 Compute disk access costs.

Answer questions about organization of data on disk:
 How to represent pointers to tuples? pointer swizzling?
 How to organize tuples on pages (fixed size vs. variable size, NULL values)?
 How to deal with insertions, updates, deletions?
 How to manage freespace?
 SQL: Write SQL queries and evaluate them.

Relational algebra
 Write relational algebra expressions.
 Translate SQL into relational algebra.
 Equivalences.

Index structures
 Btrees and B+trees: Execute operations on such trees (insert,delete) and answer questions about their properties (e.g., number of children).
 Hash indicies: Execute operations on hash indicies (insert, delete) and answer general questsion about these data strcutures (e.g., when to rebuild a directory for extensible hashing).

Logical query optimization
 Result size estimation.

Implementations of relational operators and their I/O cost and runtime complexity
 Joins: Nested Loop variants, Merge join, Hash join.
 Aggregation, Setoperations, Scans.

Schedules
 Classes of Schedules
 Determining whether a schedule belongs to a certain class
 Given a set of transactions create a schedule of a certain class