For some class meetings, readings will be assigned. Usually, these
readings will consist of relevant technical papers, articles or
instructor-prepared notes. Paper copies of assigned readings and
notes will be provided in class and online. However, please note that
online versions of the readings are only available when accessed from
a 128.2.* (CMU) IP address or a local-only CMU IP address.
The readings listed should be read BEFORE class on the assigned
day.
December 7: Evolution of Google FS
Guest Speaker: Larry Greenfield, Google
- The Tail at Scale. Jeffrey Dean, Luiz Andre' Barroso. Communications of the ACM, 56(2), February 2013. (pdf)
November 28: Deduplicating Storage Systems
Guest Speaker: R. Hugo Patterson II, Distinguished PDL Alumni
Co-founder and CTO, Datrium; former CTO, Data Domain (acquired by EMC)
- Venti: a New Approach to Archival Storage. Sean Quinlan, Sean Dorward. 2002 USENIX Conference on File and Storage Technologies (FAST). (pdf)
- Avoiding the Disk Bottleneck in the Data Domain Deduplication File System. Benjamin Zhu, Kai Li, Hugo Patterson. 2008 USENIX Conference on File and Storage Technologies (FAST). (pdf)
November 21 (Gibson guest lecture): LSM and B-trees in storage
- TableFS: Enhancing Metadata Efficiency in the Local File System. Kai Ren and Garth Gibson. Published as Technical Report CMU-PDL-13-102, January 2013. (available here)
- Optional reading:
- WiscKey: Separating Keys from Values in SSD-conscious Storage. Lanyue Lu, Thanumalayan Sankaranayana Pillai, Andrea Arpaci-Dusseau, Remzi Arpaci-Dusseau. Appears in the 2016 USENIX File and Storage Technologies Conference (FAST). (pdf)
November 16 (L17): AFS In Depth
- Synchronization and Caching Issues in the Andrew File System, Sections 3-5. Michael Kazar. CMU-ITC Tech Report.
(available here)
- Scale and Performance in a Distributed File System. (from Lecture 12 below).
November 14 (L16): More reliability techniques
- Architectures and Algorithms for On-Line Failure Recovery in Redundant Disk Arrays. Mark Holland, Garth A. Gibson, and Daniel P. Siewiorek. Appears in the Journal of Distributed and Parallel Databases, Vol. 2, No. 3, July 1994.
(available here)
- Scalable performance of the Panasas Parallel File System. (from Lecture 14 below).
November 9 (L15): Data protection
- Designing for disasters. Kimberly Keeton, Cipriano Santos, Dirk Beyer, Jeffrey Chase, John Wilkes. Appears in the Proceesings of the Third Usenix Conference of File and Storage Technologies (FAST'04). (pdf)
- Optional reading:
- Getting Back Up: Understanding How Enterprise Data Backups Fail. George Amvrosiadis, Medha Bhadkamkar. Appears in the 2016 USENIX Annual Technical Conference (ATC). (pdf)
November 7 (L14): Parallel File Systems
- GPFS: A Shared-Disk File System for Large Computing Clusters. Frank Schmuck and Roger Haskin. Appears in FAST, January 2002. (pdf)
- Scalable performance of the Panasas Parallel File System. Brent Welch, Marc Unangst, et al. Appears in FAST, February 2008. (pdf)
October 31 (L13): Storage for data-intensive computing
- The Google File System. Sanjay Ghemawat, Howard Gobioff, Shun-Tak Leung. Appears in ACM Symposium on Operating Systems Principles (SOSP), 2003.
(pdf)
- Bigtable: A Distributed Storage System for Structured Data. Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, Robert E. Gruber. Appears in USENIX Symposium on Operating Systems Design and Implementation (OSDI), 2006.
(pdf)
- Recommended optional reading:
- MapReduce: Simplified Data Processing on Large Clusters. Jeffrey Dean and Sanjay Ghemawat. Appears in USENIX Symposium on Operating Systems Design and Implementation (OSDI), 2004.
(pdf)
October 24 (L12): Multi-server Distributed file systems
- Same readings as Lecture L12.
- Recommended optional reading:
Serverless Network File Systems (xFS). Thomas E. Anderson, Michael D. Dahlin, Jeanna M. Neefe, David A. Patterson, Drew S. Roselli, Randolph Y. Wang. Appears in the ACM Transactions on Computer Systems, Vol. 14, No. 1. February 1996. (pdf)
October 19 (L11): Distributed file systems and NAS Interfaces
- The Design and Implementation of the 4.4BSD Operating System (Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, and John S. Quarterman, 1996)
Chapter 9 (The Network Filesystem) (pdf)
- Recommended optional reading:
-
Scale and Performance in a Distributed File System. John H. Howard, Michael L. Kazar, Sherri G. Menees, David A. Nichols, M. Satyanarayanan, Robert N. Sidebotham, Michael J. West. Appears in the ACM Transactions on Computer Systems, Vol. 6, No. 1, Pages 51-81. February 1988. (pdf)
-
AT&T RFS Paper, Rifkin et al (Google Books, pp92-102)
Optional reading:
NFS Version 3 Protocol Specification (RFC 1813: B. Callaghan, B. Pawlowski, P. Staubach, June 1995) (txt)
October 5 (L10): Disk array systems
- RAID: High-Performance, Reliable Secondary Storage. Peter M. Chen,
Edward K. Lee, Garth A. Gibson, Randy H. Katz, and David A. Patterson.
ACM Computing Surveys (CSUR), June 1994.
(PDF, same as L9)
- System Impacts of Storage Trends: Hard Errors and Testability.
Steven R. Hetzler. USENIX ;login: Vol. 36, No. 3, June 2011.
(PDF)
- Optional: Mean time to meaningless: MTTDL, Markov models, and
storage system reliability. Kevin M. Greenan, James S. Plank,
Jay J. Wylie. 2nd USENIX Workshop on Hot Topics in Storage and File Systems
(HotStorage '10). June 2010.
(PDF)
- Optional: Parity Lost and Parity Regained. Andrew Krioukov,
Lakshmi N. Bairavasundaram, Garth R. Goodson, Kiran Srinivasan, Randy Thelen,
Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau. USENIX Conference on File
and Storage Technologies (FAST), 2008.
(PDF)
October 3 (L9): Disk array organization
- RAID: High-Performance, Reliable Secondary Storage. Peter M. Chen,
Edward K. Lee, Garth A. Gibson, Randy H. Katz, and David A. Patterson.
ACM Computing Surveys (CSUR), June 1994.
(PDF)
- Disk failures in the real world: What does an MTTF of 1,000,000 hours
mean to you? Bianca Schroeder and Garth A. Gibson. USENIX Conference
on File and Storage Technologies (FAST), 2007.
(PDF)
- Optional: Flash Reliability in Production: The Expected and the
Unexpected. Bianca Schroeder, Raghav Lagisetty, and Arif Merchant.
USENIX Conference on File and Storage Technologies (FAST), 2016.
(PDF)
September 28 (L8): Journaling FSs
Same as Sept 26 readings.
September 26 (L6): Caching and FS integrity
- Soft Updates: A Solution to the Metadata Update Problem. Gregory R. Ganger, Markall Kirk McKusick, Craig A.N. Soules, Yale N. Patt. ACM Transactions on Computer Systems. May 2000. (pdf)
- Practical File System Design with the Be File System (Dominic Giampaolo, 1999)
- Chapter 7 (Journaling) (pdf)
- Recommended Optional Verifying File System Consistency at Runtime. Daniel Fryer, Kuei Sun, Rahat Mahmood, TingHao Cheng, Shaun Benjamin, Ashvin Goel, Angela Demke Brown. Conference on File and Storage Technologies (FAST), 2012. (pdf)
September 21 (L7): Potpourri
- MTBF Description, Kevin Dally. 1995. (txt)
September 19 (L5): File system organization
- UNIX Internals: The New Frontiers. Uresh Vahalia. 1996.
- Chapter 8 (File system interface and framework) (pdf)
- Recommended optional: Practical File System Design with the Be File System. Dominic Giampaolo. 1999.
- Chapter 2 (What is a file system?) (pdf)
September 14 (L4): File system storage layout
It may be useful to read the September 19 (L5) readings for more overview of file systems, to help in building background for this day's readings.
- The Design and Implementation of the 4.4BSD Operating System (Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, and John S. Quarterman, 1996)
- Chapter 8 (Local filestores) (pdf)
- F2FS: A New File System for Flash Storage. Changman Lee, Dongho Sim, Jooyoung Hwang, Sangyeon Cho. Appears in FAST 2015. (pdf)
- Optional: TableFS: Enhancing Metadata Efficiency in the Local File System. Kai Ren and Garth Gibson. Published as Technical Report CMU-PDL-13-102, January 2013. (available here)
- Optional: BTRFS: The Linux B-Tree Filesystem. Ohad Rodeh, Josef Bacik, and Chris Mason. Appears in ACM Transactions on Storage, Vol. 9, No. 3, Article 9, Publication date: August 2013. (pdf)
September 12 (L3): Disk drive operation and characteristics
- An Introduction to Disk Drive Modeling. Chris Ruemmler and John Wilkes, 1994. (pdf)
- Scheduling Algorithms for Modern Disk Drives. Bruce L. Worthington, Gregory R. Ganger, and Yale N. Patt. Appears in the Proceedings of the ACM Sigmetrics Conference. May, 1994. (ps)
- Optional additional reading
- Digital Large System Mass Storage Handbook. Paul Massiglia. 1986.
August 31 (L2): Flash Storage
- Design Tradeoffs for SSD Performance.
Nitin Agrawal, Vijayan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, and Rina Panigrahy. Published in 2008 USENIX Annual Technical Conference.
- Recommended optional: DFS: A File System for Virtualized Flash Storage,
William K. Josephson, Lars A. Bongo, David Flynn, Kai Li.
Published in FAST 2010.
- Recommended optional: Operating System Support for NVM+DRAM Hybrid Main Memory,
Jeffrey C. Mogul, Eduardo Argollo, Mehul Shah, Paolo Faraboschi.
Published in Hotos 2009.
August 29 (L1): Introduction to 746 and Storage performance metrics
This first meeting will be more than just organizational in nature.
Of course, we will discuss how the class is going to work and what will
(and won't) be covered.
See the 15-746/18-746 overview for a recap of the
general information.
We will also dive into the course by discussing storage performance metrics.
Even though you likely won't have read them before class, there are readings
associated with Lecture 1:
- Computer Architecture: A Quantitative Approach, 3rd ed. John L. Hennessy and David A. Patterson. 2002. (pdf)
- Section 7.7: "I/O performance measures"
- Section 7.8: "A Little queuing theory"
- Section 7.9: "Benchmarks of storage performance and availability"
- Recommended: Probability Refresher. Mor Harchol-Balter. 2000. (pdf)