Data Storage Systems

Undergraduate course, Ilmenau University of Technology, 2023

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 & TimeTopic(s)SlidesSupplementary Materials
105-04-2023, 13:00 - 14:30Introduction Data Storage Systemsslides 
212-04-2023, 13:00 - 14:30Storage Devices & Firmwareslides 
319-04-2023, 13:00 - 14:30I/O Protocols & Interfacesslides 
426-04-2023, 13:00 - 14:30Linux I/O Subsystemslides 
503-05-2023, 13:00 - 14:30File System Implementationsslides 
610-05-2023, 13:00 - 14:30I/O Performance Tracing & Benchmarkingslides 
717-05-2023, 13:00 - 14:30High-Performance I/O & I/O Performance Tuningslides 
824-05-2023, 13:00 - 14:30Data Replication & Recoveryslides 
931-05-2023, 13:00 - 14:30Caching & Storage Tieringslides 
1007-06-2023, 13:00 - 14:30No Lectureslides 
1114-06-2023, 13:00 - 14:30Data Reduction Techniquesslides 
1221-06-2023, 13:00 - 14:30Distributed File Systemsslides 
1328-06-2023, 13:00 - 14:30Key-Value Stores & Cloud Storageslides 
1405-07-2023, 13:00 - 14:30Selected Data Storage System Research Topicsslides 
1512-07-2023, 13:00 - 14:30Backupslides