1 / 87

Deconstructing Storage Arrays

Learn about the Gray-box approach to deconstruct storage arrays, utilizing the Shear Algorithm to identify characteristics such as disk number, chunk size, and layout scheme for optimized file system performance and array management.

lamars
Download Presentation

Deconstructing Storage Arrays

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Timothy E. Denehy, John Bent, Florentina I. Popovici, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau University of Wisconsin, Madison Deconstructing Storage Arrays

  2. Gray-box Research • Computer systems becoming more complex • Transistors • Lines of code • Each component is becoming more complex • Interactions between subsystems can affect • Performance • Reliability • Power • Security

  3. Gray-box Research • Interfaces remain the same • Changes can be difficult and impractical • Support multiple platforms or legacy systems • Commercial acceptance for wide-spread adoption • Hardware and software phenomenon • IA-32 instruction set, POSIX OS, SCSI storage • Problem: lack of information

  4. Gray-box Solution • Treat target system as a gray-box • General characteristics are known • Extract information from an existing interface • e.g. determine cache contents • Exploit information to control system behavior • e.g. access cached data first

  5. Gray-box Information Techniques • Make assumptions about target system • Observe system inputs and outputs • Statistical methods • Draw inferences about internal structure • Microbenchmarks and probes • Parameterize system components • Observe system under controlled input

  6. Gray-box Applications • Gray-box techniques have been used to identify • Memory hierarchy parameters [Saavedra and Smith] • Processor cycle time [Staelin and McVoy] • Low-level disk characteristics [Worthington et al.] • Buffer cache replacement algorithms [Burnett et al.] • File system data structures [Sivathanu et al.] • storage array characteristics: Shear

  7. Shear • Software tool that automatically determines the important properties of a storage array • Enables file system performance tuning with knowledge of storage array characteristics • Acts as a management tool to help configure, monitor, and maintain storage arrays

  8. Outline • Introduction • Shear • Background • Algorithm • Case Studies • Performance: Stripe-aligned Writes • Management: Detecting Misconfiguration, Failure • Conclusion

  9. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Shear Goals • Determine storage array characteristics SCSI SCSI

  10. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Shear Goals • Determine storage array characteristics • Number of disks SCSI SCSI

  11. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Shear Goals • Determine storage array characteristics • Number of disks • Chunk size SCSI SCSI

  12. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Shear Goals • Determine storage array characteristics • Number of disks • Chunk size • Layout and redundancy scheme SCSI SCSI RAID-0

  13. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 16 17 18 19 20 21 22 23 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 24 25 26 27 28 29 30 31 Shear Goals • Determine storage array characteristics • Number of disks • Chunk size • Layout and redundancy scheme SCSI SCSI RAID-1

  14. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 P P P P 0 1 2 3 4 5 6 7 8 9 10 11 P P P P 16 20 21 22 23 17 18 19 12 13 14 15 P P P P 32 33 34 35 24 25 26 27 28 29 30 31 P P P P 36 37 38 39 40 41 42 43 44 45 46 47 Shear Goals • Determine storage array characteristics • Number of disks • Chunk size • Layout and redundancy scheme SCSI SCSI RAID-5

  15. Shear Motivation • Performance • Tune file systems to array characteristics • Management • Verify configuration • Detect failure

  16. Shear Techniques • Microbenchmarks and probes • Controlled, random access read and write patterns • Measure response time of access patterns • Measure steady-state performance • Statistical clustering • Automatically classify fast and slow regimes • Identify patterns that utilize only a single disk

  17. Shear Assumptions • Storage array • Layout follows a repeatable pattern • Composed of homogeneous disks • System • Able to bypass the file system and buffer cache • Little traffic from other processes

  18. Outline • Introduction • Shear • Background • Algorithm • Case Studies • Performance: Stripe-aligned Writes • Management: Detecting Misconfiguration, Failure • Conclusion

  19. Shear Algorithm • Pattern size • Chunk size • Layout of chunks to disks • Level of redundancy

  20. Determining the Pattern Size • Find the size of the layout's repeating pattern • Not always the stripe size • Choose a hypothetical pattern size • Perform random reads at multiples of that distance • Repeat for a range of pattern sizes • Cluster results and identify actual pattern size

  21. RAID-0 4 Disks 8 KB Chunks Pattern Size Example

  22. RAID-0 4 Disks 8 KB Chunks Testing 2 KB Pattern Size Example

  23. RAID-0 4 Disks 8 KB Chunks Testing 4 KB Pattern Size Example

  24. RAID-0 4 Disks 8 KB Chunks Testing 6 KB Pattern Size Example

  25. RAID-0 4 Disks 8 KB Chunks Testing 8 KB Pattern Size Example

  26. RAID-0 4 Disks 8 KB Chunks Testing 10 KB Pattern Size Example

  27. RAID-0 4 Disks 8 KB Chunks Testing 12 KB Pattern Size Example

  28. RAID-0 4 Disks 8 KB Chunks Testing 14 KB Pattern Size Example

  29. RAID-0 4 Disks 8 KB Chunks Testing 16 KB Pattern Size Example

  30. RAID-0 4 Disks 8 KB Chunks Testing 18 KB Pattern Size Example

  31. RAID-0 4 Disks 8 KB Chunks Testing 20 KB Pattern Size Example

  32. RAID-0 4 Disks 8 KB Chunks Testing 22 KB Pattern Size Example

  33. RAID-0 4 Disks 8 KB Chunks Testing 24 KB Pattern Size Example

  34. RAID-0 4 Disks 8 KB Chunks Testing 26 KB Pattern Size Example

  35. RAID-0 4 Disks 8 KB Chunks Testing 28 KB Pattern Size Example

  36. RAID-0 4 Disks 8 KB Chunks Testing 30 KB Pattern Size Example

  37. RAID-0 4 Disks 8 KB Chunks Testing 32 KB Pattern Size Example

  38. RAID-0 4 Disks 8 KB Chunks Pattern Size Example

  39. RAID-0 4 Disks 8 KB Chunks Actual 32 KB cluster cluster cluster Pattern Size Example

  40. Shear Algorithm • Pattern size • Chunk size • Layout of chunks to disks • Level of redundancy

  41. Determining the Chunk Size • Chunk size • amount of data contiguously allocated to one disk • Find the boundaries between disks • Choose a hypothetical boundary offset • Perform random reads on both sides of that offset • Repeat for all offsets in the pattern size • Cluster results and identify actual chunk size

  42. RAID-0 4 Disks 8 KB Chunks Chunk Size Example

  43. RAID-0 4 Disks 8 KB Chunks Testing 0 KB Chunk Size Example

  44. RAID-0 4 Disks 8 KB Chunks Testing 2 KB Chunk Size Example

  45. RAID-0 4 Disks 8 KB Chunks Testing 4 KB Chunk Size Example

  46. RAID-0 4 Disks 8 KB Chunks Testing 6 KB Chunk Size Example

  47. RAID-0 4 Disks 8 KB Chunks Testing 8 KB Chunk Size Example

  48. RAID-0 4 Disks 8 KB Chunks Testing 10 KB Chunk Size Example

  49. RAID-0 4 Disks 8 KB Chunks Testing 12 KB Chunk Size Example

  50. RAID-0 4 Disks 8 KB Chunks Testing 14 KB Chunk Size Example

More Related