Data Storage Systems
Undergraduate course, Ilmenau University of Technology, 2022
Objectives:
This course is primarily designed for undergraduate students, who already completed introductionary courses in database & distributed systems, algorithms & data structures, and operating systems. The course puts a strong emphasis on a systemic view of data storage systems, ranging from the physical inner workings of modern data storage devices, such as HDDs and SSDs, to full-fledged, distributed, cloud-based exascale storage systems. The students will gradually gain a deeper understanding of fundamental concepts and algorithms of data storage systems, including replication & crash recovery, data deduplication, and storage tiering & caching, but also insights into systematic I/O performance analysis & tuning on the device and the file system level. In the second half of the course, the fundamental concepts of file systems and large-scale distributed storage systems will be discussed. Finally, we conclude the course with an outlook into active areas of research and novel storage technologies that will come up (or are already on the market) and will have a quite dramatic impact on any data-intensive application having to deal with large data volumes.
Prerequisites:
An undergraduate-level understanding of maths, programming, data structures & algorithms, operating systems, and distributed systems is assumed.
Tentative Course Schedule:
Date & Time | Topic(s) | Slides | Supplementary Materials | |
---|---|---|---|---|
1 | 06-04-2022, 11:00 - 12:30 | Introduction Data Storage Systems | slides | |
2 | 13-04-2022, 11:00 - 12:30 | Storage Devices & Firmware | slides | |
3 | 20-04-2022, 11:00 - 12:30 | I/O Protocols & Interfaces | slides | |
4 | 20-04-2022, 11:00 - 12:30 | Linux I/O Subsystem | slides | |
5 | 04-05-2022, 11:00 - 12:30 | File System Implementations | slides | |
6 | 11-05-2022, 11:00 - 12:30 | I/O Performance Tracing & Benchmarking | slides | |
7 | 18-05-2022, 11:00 - 12:30 | High-Performance I/O & I/O Performance Tuning | slides | |
8 | 25-05-2022, 11:00 - 12:30 | Data Replication & Recovery | slides | |
9 | 01-06-2022, 11:00 - 12:30 | No Lecture | slides | |
10 | 08-06-2022, 11:00 - 12:30 | Caching & Storage Tiering | slides | |
11 | 15-06-2022, 11:00 - 12:30 | Data Reduction Techniques | slides | |
12 | 22-06-2022, 11:00 - 12:30 | Distributed File Systems | slides | |
13 | 29-06-2022, 11:00 - 12:30 | Key-Value Stores & Cloud Storage | slides | |
14 | 06-07-2022, 11:00 - 12:30 | Selected Data Storage System Research Topics | slides | |
15 | 13-07-2022, 11:00 - 12:30 | Backup | slides |