Top Banner
Bridging the Information Gap in Storage Protocol Stacks Timothy E. Denehy, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau University of Wisconsin, Madison http://www.cs.wisc.edu/wind/
34

Bridging the Information Gap in Storage Protocol Stacks

Mar 20, 2016

Download

Documents

Bridging the Information Gap in Storage Protocol Stacks. Timothy E. Denehy, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau University of Wisconsin, Madison http://www.cs.wisc.edu/wind/. State of Affairs. File System Storage System. Namespace Files Metadata Layout Liveness - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Bridging the Information Gap in Storage Protocol Stacks

Bridging the Information Gapin Storage Protocol Stacks

Timothy E. Denehy,Andrea C. Arpaci-Dusseau,

and Remzi H. Arpaci-Dusseau

University of Wisconsin, Madisonhttp://www.cs.wisc.edu/wind/

Page 2: Bridging the Information Gap in Storage Protocol Stacks

2 of 31

State of Affairs

NamespaceFiles

MetadataLayout

Liveness

ParallelismRedundancy

File System

Storage System

Page 3: Bridging the Information Gap in Storage Protocol Stacks

3 of 31

• Information gap may cause problems– Poor performance

• Partial stripe write operations– Duplicated functionality

• Logging in file system and storage system– Reduced functionality

• Storage system lacks knowledge of files• Time to re-examine the division of labor

Problem

Page 4: Bridging the Information Gap in Storage Protocol Stacks

4 of 31

• Enhance the storage interface– Expose performance and failure information

• Use information to provide new functionality– On-line expansion– Dynamic parallelism– Flexible redundancy

Our Approach

Informed LFS

Exposed RAID

Page 5: Bridging the Information Gap in Storage Protocol Stacks

5 of 31

Outline

• ERAID Overview• I·LFS Overview• Functionality and Evaluation• Conclusion

Page 6: Bridging the Information Gap in Storage Protocol Stacks

6 of 31

• Goals– Backwards compatibility

• Block-based interface• Linear, concatenated address space

– Expose information to the file system above• Allows file system to utilize semantic knowledge

ERAID Overview

Page 7: Bridging the Information Gap in Storage Protocol Stacks

7 of 31

• Region– Contiguous portion of the address space

• Regions can be added to expand the address space• Region composition

– RAID: one region for all disks– Exposed: separate regions for each disk– Hybrid

ERAID Regions

ERAID

Page 8: Bridging the Information Gap in Storage Protocol Stacks

8 of 31

• Exposed on a per-region basis• Throughput and queue length• Reveals

• Static disk heterogeneity• Dynamic performance and load fluctuations

ERAID Performance Information

ERAID

Page 9: Bridging the Information Gap in Storage Protocol Stacks

9 of 31

• Exposed on a per-region basis• Number of tolerable failures• Regions may have different failure characteristics• Reveals dynamic failures to file system above

ERAID Failure Information

RAID1

ERAID

X

Page 10: Bridging the Information Gap in Storage Protocol Stacks

10 of 31

Outline

• ERAID Overview• I·LFS Overview• Functionality and Evaluation• Conclusion

Page 11: Bridging the Information Gap in Storage Protocol Stacks

11 of 31

• Modified NetBSD LFS– All data and metadata is written to a log– Log is a collection of segments– Segment table describes each segment– Cleaner process produces empty segments

I·LFS Overview

Page 12: Bridging the Information Gap in Storage Protocol Stacks

12 of 31

• Goals– Improve performance, functionality, and manageability– Minimize system complexity

• Exploits ERAID information to provide– On-line expansion– Dynamic parallelism– Flexible redundancy– Lazy redundancy

I·LFS Overview

Page 13: Bridging the Information Gap in Storage Protocol Stacks

13 of 31

• NetBSD 1.5• 1 GHz Intel Pentium III Xeon• 128 MB RAM• Four fast disks

– Seagate Cheetah 36XL, 21.6 MB/s• Four slow disks

– Seagate Barracuda 4XL, 7.5 MB/s

I·LFS Experimental Platform

Page 14: Bridging the Information Gap in Storage Protocol Stacks

14 of 31

I·LFS Baseline Performance

Page 15: Bridging the Information Gap in Storage Protocol Stacks

15 of 31

• Goal: expand storage incrementally– Capacity– Performance

• Ideal: instant disk addition– Minimize downtime– Simplify administration

• I·LFS supports on-line addition of new disks

I·LFS On-line Expansion

Page 16: Bridging the Information Gap in Storage Protocol Stacks

16 of 31

• ERAID: an expandable address space• Expansion is equivalent to adding empty segments• Start with an oversized segment table• Activate new portion of segment table

I·LFS On-line Expansion Details

Page 17: Bridging the Information Gap in Storage Protocol Stacks

17 of 31

I·LFS On-line Expansion Experiment

• I·LFS takes immediate advantage of each extra disk

Page 18: Bridging the Information Gap in Storage Protocol Stacks

18 of 31

• Goal: perform well on heterogeneous storage– Static performance differences– Dynamic performance fluctuations

• Ideal: maximize throughput of the storage system• I·LFS writes data proportionate to performance

I·LFS Dynamic Parallelism

Page 19: Bridging the Information Gap in Storage Protocol Stacks

19 of 31

• ERAID: dynamic performance information• Most file system routines are not changed

– Aware of only the ERAID linear address space• Segment selection routine

– Aware of ERAID regions and performance– Chooses next segment based on current performance

• Minimizes changes to the file system

I·LFS Dynamic Parallelism Details

Page 20: Bridging the Information Gap in Storage Protocol Stacks

20 of 31

I·LFS Static Parallelism Experiment

• I·LFS provides the full throughput of the system• Simple striping runs at the rate of the slowest disk

Page 21: Bridging the Information Gap in Storage Protocol Stacks

21 of 31

I·LFS Dynamic Parallelism Experiment

• I·LFS adjusts to the performance fluctuation

Page 22: Bridging the Information Gap in Storage Protocol Stacks

22 of 31

• Goal: offer new redundancy options to users• Ideal: range of redundancy mechanisms and

granularities• I·LFS provides mirrored per-file redundancy

I·LFS Flexible Redundancy

Page 23: Bridging the Information Gap in Storage Protocol Stacks

23 of 31

• ERAID: region failure characteristics• Use separate files for redundancy

– Even inode N for original files– Odd inode N+1 for redundant files– Original and redundant data in different sets of regions

• Flexible data placement within the regions• Use recursive vnode operations for redundant files

– Leverage existing routines to reduce complexity

I·LFS Flexible Redundancy Details

Page 24: Bridging the Information Gap in Storage Protocol Stacks

24 of 31

I·LFS Flexible Redundancy Experiment

• I·LFS provides a throughput and reliability tradeoff

Page 25: Bridging the Information Gap in Storage Protocol Stacks

25 of 31

• Goal: avoid replication performance penalty• Ideal: replicate data immediately before failure• I·LFS offers redundancy with delayed replication• Avoids penalty for redundant, short-lived files

I·LFS Lazy Redundancy

Page 26: Bridging the Information Gap in Storage Protocol Stacks

26 of 31

• ERAID: region failure characteristics• Segments needing replication are flagged• Cleaner acts as replicator

– Locates flagged segments– Checks data liveness and lifetime– Generates redundant copies of files

I·LFS Lazy Redundancy

Page 27: Bridging the Information Gap in Storage Protocol Stacks

27 of 31

I·LFS Lazy Redundancy Experiment

• I·LFS avoids performance penalty for short-lived files

Page 28: Bridging the Information Gap in Storage Protocol Stacks

28 of 31

Outline

• ERAID Overview• I·LFS Overview• Functionality and Evaluation• Conclusion

Page 29: Bridging the Information Gap in Storage Protocol Stacks

29 of 31

Comparison with Traditional Systems

• On-line expansion– Yes, but capacity only, not performance

• Dynamic parallelism– Yes, but with duplicated functionality

• Flexible redundancy– No, the storage system is not aware of file composition

• Lazy redundancy– No, the storage system is not aware of file deletions

Page 30: Bridging the Information Gap in Storage Protocol Stacks

30 of 31

Conclusion

• Introduced ERAID and I·LFS• Extra information enables new functionality

– Difficult or impossible in traditional systems• Minimal complexity

– 19% increase in code size• Time to re-examine the division of labor

Page 31: Bridging the Information Gap in Storage Protocol Stacks

31 of 31

Questions?

• Full paper available on the WiND publications page– http://www.cs.wisc.edu/wind/

Page 32: Bridging the Information Gap in Storage Protocol Stacks

32 of 31

Extra Slides

Page 33: Bridging the Information Gap in Storage Protocol Stacks

33 of 31

Storage Failure

Page 34: Bridging the Information Gap in Storage Protocol Stacks

34 of 31

Crossed-pointer Problem