CSE290-A:  Modern Storage Systems

This course will cover a range of topics related to modern storage systems, including storage hardware, storage arrays, system firmware and software, storage reliability, storage performance, and the interaction between storage and applications.

The course will involve a lot of paper reading and in-class discussion.  There will be an implementation-based project.  You will work in pairs.

Slides

Slides are available here.  You’ll need to be logged in via your @eng google account.

Grading

You must register for four units.

Grading will work like so:

  • Paper summaries:  30%
  • Class participation:  30%
  • Project: 20%
  • Final: 20%

Logistics

The course meets Tuesdays and Thursdays from 2:00-3:20 in CSE4258.

Office hours are by appointment in CSE3212.  Good times to schedule office hours are Wednesdays and Thursdays 2-4.

The final is December 12th at 3pm in the same room we meet in.

Project

For the project, you will join the most recent storage system revolution and building a fast, scalable, crash-consistent persistent memory data structure — namely a key-value store.

We will provide an interface, test harness, and programming tools.  You’ll build the fastest, most robust persistent memory KV store you can.

We’ll evaluate the your KV store based on performance, crash consistency, and the quality of your write up about how you achieved such amazing performance.

Paper Reviews

Use this form to submit paper reviews.  You’ll need to log in with your @eng account.  Reviews are due at 9am the day of class.

Reading Schedule

To access many of the papers, you’ll need to be on campus or connect via the campus VPN.

You can download the slides here (login with your @eng account).

The schedule below is listed by class #.   The course schedule show which classes occur on which days.

Class 1: Introduction and metrics

Class 2:  Hard Drives, Singular and Plural (HDD1)

Readings

Sorry, no publications matched your criteria.

Class 3: Hard drive reliability

Readings

Sorry, no publications matched your criteria.

Class 4: Flash Memory and SSDs I

Readings

Sorry, no publications matched your criteria.

Class 5: Flash Memory and SSDs II

Readings

Sorry, no publications matched your criteria.

The NVMe Spec: https://drive.google.com/drive/folders/1Adw3ww2lu6INfs_y5Hx-qz2qK1cBbLfh?ths=true

Sections 1-1.4, 1.6, 4-4.2, 4.6, and 7.1-7.2.4, 7.5 (but not subsections),

Class 6: Flash Reliability

Readings

Sorry, no publications matched your criteria.

Class 7: Fast Non-Volatile Memories

Readings

Sorry, no publications matched your criteria.

Class 8: File Systems

Readings

Operating Systems: Three Easy Pieces. Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. March 2015.
Chapter 39 (Files and Directories): available here.
Chapter 40 (File System Implementation): available here.

Class 9: File Systems for Disk I

Readings

Operating Systems: Three Easy Pieces. Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. March 2015.
Chapter 41 (The Fast File System): available here.
Chapter 42 (FSCK and Journaling): available here.

Class 10  File Systems for Disks II

Readings

Read the second paper first.

Sorry, no publications matched your criteria.

Class 11: Log Structured File Systems

Operating Systems: Three Easy Pieces. Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. March 2015.

Chapter  43:  Log structured File systems:  http://pages.cs.wisc.edu/~remzi/OSTEP/file-lfs.pdf

Sorry, no publications matched your criteria.

Class 12: File Systems for New Technologies

Paper about JFFS: http://sources.redhat.com/jffs2/jffs2.pdf

Sorry, no publications matched your criteria.

Class 13: Remote and Distributed File Systems/Storage I

Operating Systems: Three Easy Pieces. Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau. March 2015.

Chapter 48:  Sun’s Network File System: http://pages.cs.wisc.edu/~remzi/OSTEP/dist-nfs.pdf

Sorry, no publications matched your criteria.

Class 14: Remote and Distributed File Systems/Storage II

Sorry, no publications matched your criteria.

Optional, but interesting: https://www.usenix.org/system/files/login/articles/login_summer16_08_bent.pdf

Class 15: Remote and Distributed File Systems/Storage III

Read these two to slide decks (they are all I can find about Colossus) and the GPFS paper from last week.

https://swanson.ucsd.edu/MSS-data/PDSW-DISCS-Google-Keynote.pdf

https://swanson.ucsd.edu/MSS-data/storage_architecture_and_challenges.pdf

Class 16: RAMCloud

Sorry, no publications matched your criteria.

Class 17:  TBD

Class 18:  Review