Advanced Topics in Computer Systems: Storage Systems
Prof. Scott A. Brandt
Computer Science Department
University of California, Santa Cruz
Note: Final papers are due on 12/6/01
Scott Banachowski, "Integrated
Networking and Scheduling for Centralized Transaction Servers".
Hui Miao, "Predictive Power Conservation based
on the Idle Time Pattern from Disk Access Data".
Lin Ying, "Power Consumption in MEMS-based Storage Devices".
Feng Wang, "Using MEMS Devices as Disk Write Buffers".
Zachary Peterson, "Data Placement Based on
Seek Time Analysis of MEMS-based Storage Devices".
Lan Xue and Yong Liu, "MDS Functionality
Good work, everyone!
This course is a graduate level study of the issues in the design and
implementation of storage systems. The readings are taken from the
current research literature and articles of historical
significance. The topics include, but are not limited to: Storage
Technologies, File Systems, Distributed File Systems, High-Performance
Storage Systems, Next Generation Storage Systems, and others.
The course proceeds by topic, beginning with systems of historical
significance and ending with more modern systems. As time permits we
will discuss current research topics of interest to the students in
the class (and the professor, of course).
In terms of preparation, you are expected to have basic operating
system knowledge, such as presented in a standard undergraduate course
such as CMPS 111. Furthermore, you are expected to have taken CMPS
221, Advanced Operating Systems. Others will be admitted with the
instructors permission based upon demonstrated systems background and
sophistication necessary for successful completion of the course.
One or more articles will be assigned as reading prior to each class
meeting - usually two per class. These articles should be read
carefully, and a short summary of each article and a few questions or
insightful comments about the material (at least 3 per paper) prepared
for the following class meeting. The summary of each article consists
of brief answers to the following seven questions:
- What is the problem the authors are trying to solve?
- What other approaches or solutions existed at the time that this
work was done?
- What was wrong with the other approaches or solutions?
- What is the authors' approach or solution?
- Why is it better than the other approaches or solutions?
- How does it perform?
- Why is this work important?
- 3+ comments/questions
Each student will give a presentation on two papers during the
quarter. The presentations will thoroughly cover the material in the
paper including the goals of the research, important background
information, the details of the research, the results, and the
significance of those results. The presenter will also be prepared to
lead the class discussion about the paper.
You will be required to write a report on a topic in the area of
storage systems. This report should be the results of a project,
original research (preferred), or a strong survey of prior
art. Reporting work done for another course is not acceptable. You
must choose a topic by second week of the quarter. Each student will
give a final presentation on their project at the end of the quarter.
Your grade in the course is based 25% on preparedness and class
participation, 25% for presentations, and 50% for your term project
Class attendance is required. This is a discussion-based seminar
course and you will not pass if you routinely miss class.
All the work you turn in must be your own. If you get
ideas or material from any source other than your own mind (even from
conversations with others), you must cite that source. Failure to do
so constitutes plagiarism and will not be tolerated - you will not
pass the course.
Readings will be handed out each week.
E Grochowski, "IBM Leadership in Disk Storage Systems Technology"
J. Hennessy and D. Patterson, "Computer Architecture: A Quantitative
Approach," Chapter 6, Morgan Kaufman, 1990
C. Ruemmler and J. Wilkes, "An Introduction to Disk Drive Modelling,"
IEEE Computer 27(3):17-28.
M. McKusick, W. Joy, S. Leffler, and R. Fabry, "A Fast File System
for Unix," ACM Transactions on Computer Systems 2,3, 181-197.
J. Ousterhout, H. Da Costa, D. Harrison, J. Kunze, M. Kupfer, and
J. Thompson, "A Trace-Drive Analysis of the UNIX
4.2 BSD File System", Operating System Review 19(5), Proceedings
of the 10th ACM Symposium on Operating Systems Principles, 1985,
M. G. Baker, J. H. Hartman, M. Kupfer, K. Shirriff, and
J. Ousterhout, "Measurements of a Distributed File
System", Proceedings of the 13th ACM Symposium on Operating
Systems Principles (Monterey, CA), October 1991, pages 198-212.
C. Ruemmler and J. Wilkes, "UNIX Disk Access
Patterns," Proceedings of the Winter 1993 USENIX Conference (San
Diego, CA), January 1993, pages 405-420.
K. Smith and M. Seltzer, "File System Aging -
Increasing the Relevance of File System Benchmarks", Proceedings
of the 1997 SIGMETRICS Conference (Seattle, WA), June 1997, pages
B. Worthington, G. Ganger, and Y. Patt, "Scheduling Algorithms for Modern Disk
Drives", ACM SIGMETRICS, 1994.
D. Jacobson and J. Wilkes, Disk
Scheduling Algorithms Based on Rotational Position", Proceedings
of the 1993 Winter USENIX Technical Conference, 1993.
M. Rosenblum and J. Ousterhout, "The LFS
Storage Manager", Proceedings of the Summer 1990 Usenix Technical
"The NFS Distributed File Service", SunSoft, 1995. -->Shorter paper here.
L. McVoy and S. Kleiman, "Extent-Like Performance from a Unix File System", USENIX Technical Conference, Winter 1991.
D. Santry, M. Feeley, N. Hutchinson, A. Veitch, R. Carton, and J. Ofir, "Deciding when to forget in the Elephant file system", 17th ACM Symposium on Operating System Principles, 1999.
E. Shriver, E. Gabber, L. Huang, and C. Stein, "Storage Management for Web Proxies", USENIX Technical Conference, 2001.
P. Chen, E. Lee, G. Gibson, R. Katz, and D. Patterson, "RAID:High-Performance, Reliable Secondary Storage," ACM Computing Surveys
26(2), June 1994, pages 145-185.
10/23/01 - No class today
A. Sweeney, D. Doucette, W. Hu, C. Anderson, M. Nishimoto, and
G. Peck, "Scalability in the XFS File System,"
Proceedings of the Winter 1996 USENIX Conference (San Diego, CA),
January 1996, pages 33-44.
M. Spasojevic and M. Satyanarayanan, "An
Empirical Study of a Wide-Area Distributed File System," ACM
Transactions on Computer Systems 14(2), May 1996, pages 171-199.
M. Nelson, B. Welch and J. Ousterhout, "Caching in the Sprite Network File System," ACM Transactions on Computer Systems, Vol. 6,
No. 1, February 1988, pp. 134-154.
J. Kistler and M. Satyanarayanan, "Disconnected Operation in the Coda File System," ACM Transactions on Computer Systems, Vol. 10,
No. 1, February 1992, pp. 3-25.
J. Hartman, J. Ousterhout, "The Zebra Striped Network File System", ACM Transactions on Computer Systems, Vol. 13, No. 3, Aug. 1995.
D. Long, B. Montague and L.-F. Cabrera, "SWIFT/RAID: a
distributed raid system," Computer Systems, Vol. 7., No. 3 (1994), pp. 333--359. 11
S. Iyer, P. Druschel, "Anticipatory Scheduling: A Disk
Scheduling Framework to Overcome Deceptive Idleness in Synchronous I/O", Proceedings of the
18th ACM Symposium on Operating Systems Principles (SOSP'01), October 21-24, 2001.
A. Muthitacharoen, B. Chen, David Mazières, "A
Low-Bandwidth Network File System", Proceedings of the 18th ACM
Symposium on Operating Systems Principles (SOSP'01), October 21-24, 2001.
G. Gibson et al, "File server scaling with network-attached
secure disks," Proceedings of the ACM International Conference on
Measurement and Modeling of Computer Systems (Sigmetrics '97),
Ethan L. Miller and Randy H. Katz, "RAMA: An Easy-To-Use,
High-Performance Parallel File System," Parallel Computing 23(4), July
1997, pages 419-446.
T. Anderson, M. Dahlin, J. Neefe, D. Patterson, D. Roselli, and
R. Wang, "Serverless network file systems",
Proceedings of the 15th Symposium on Operating System Principles,
pp. 109-126, 1995.
C. Thekkath, T. Mann, and E. Lee, "Frangipani: A Scalable Distributed File
System", Symposium on Operating Systems Principles, pp. 224-237,
N. Nieuwejaar, D. Kotz, A. Purakayastha, C. S. Ellis, and
M. L. Best, "File-Access Characteristics of Parallel
Scientific Workloads," IEEE Transactions on Parallel and
Distributed Systems, 7(10), October 1996.
P. F. Corbett and D. G. Feitelson, "The Vesta
Parallel File System," ACM Transactions on Computer Systems 14(3),
August 1996, pages 225-264.
O. Krieger and M. Stumm, "HFS: A
Performance-Oriented Flexible File System Based on Building-Block
Compositions," ACM Transactions on Computer Systems 15(3), August
1997, pages 286-321.
N. Nieuwejaar and D. Kotz, "The Galley
Parallel File System," Parallel Computing 23(4), 1997.
Here is the OceanStore paper. If you haven't already read the Galley
paper, read this one instead. If too many people have already read
the Galley paper we will decide in class which one to cover, or cover
J. Kubiatowicz, D. Bindel, Y. Chen, P. Eaton, D. Geels,
R. Gummadi, S. Rhea, H. Weatherspoon, W. Weimer, C. Wells, and
B. Zhao, "OceanStore: An Architecture for
Global-scale Persistent Storage," Proceedings of ACM ASPLOS, 2000.