Data Storage Systems
Undergraduate course, Friedrich-Schiller University Jena, 2021
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 | 13-04-2021, 16:00 - 18:00 | Introduction Data Storage Systems | slides | |
2 | 20-04-2021, 16:00 - 18:00 | Hardware Devices & Firmware | slides | |
3 | 27-04-2021, 16:00 - 18:00 | I/O Protocols & Interfaces | slides | |
4 | 04-05-2021, 16:00 - 18:00 | Linux I/O Subsystem | slides | |
5 | 11-05-2021, 16:00 - 18:00 | File Systems | slides | |
6 | 18-05-2021, 16:00 - 18:00 | Benchmarking I/O | slides | |
7 | 25-05-2021, 16:00 - 18:00 | I/O Performance Enhancements | slides | |
8 | 01-06-2021, 16:00 - 18:00 | Replication & Crash Recovery | slides | |
9 | 08-06-2021, 16:00 - 18:00 | Storage Tiering & Caching | slides | |
10 | 15-06-2021, 16:00 - 18:00 | Data Deduplication | slides | |
11 | 22-06-2021, 16:00 - 18:00 | Distributed File Systems | slides | |
12 | 29-06-2021, 16:00 - 18:00 | KV-Stores & Object Storage | slides | |
13 | 06-07-2021, 16:00 - 18:00 | Cloud Storage | slides | |
14 | 13-07-2021, 16:00 - 18:00 | Recent Trends in the Storage Landscape | slides |