0
State of the Art Thin Provisioning<br />Stephen Foskett<br />stephen@fosketts.net<br />twitter.com/sfoskett<br />
Storage Is Supposed To Be Getting Cheaper!<br />Disk cost is dropping rapidly<br />$250 buys:<br />1994: 2 GB<br />1999: 2...
Where Is The Cost?<br />Hardware and software make up a small percentage of total enterprise storage spending…<br />…and h...
Over-Allocation and Under-Utilization<br />4<br />Raw Disk Capacity Purchased<br />Conventional storage provisioning is gr...
Thin Provisioning Simplified!<br />5<br />Traditional storage provisioning<br />Thin storage provisioning<br />Allocated b...
Thin Provisioning: Potentially Problematic<br />Storage is commonly over-allocated to servers<br />Some arrays can “thinly...
Are You Solving a Technical or Business Issue?<br />7<br />
Ever Play the “Telephone” Game?<br />Application<br />IV<br />File/Record Layer<br />File System<br />Database<br />III<br...
File System<br />It’s (Relatively) Easy to Allocate on Write<br />9<br />As applications write data<br />Storage<br />Capa...
File System<br />But What About De-Allocate on Delete?<br />10<br />Data is deleted<br />Storage<br />Capacity is freed up...
Two Approaches To Thin<br />11<br />
Server Smarts: Metadata Monitoring<br />File system/VM combos can handle thin provisioning on their own<br />ZFS, Veritas ...
Storage Smarts: Zero Page Reclaim<br />Storage arrays watch for “pages” containing all zeros and simply don’t write them<b...
Zero Page Reclaim: Pros and Cons<br />Pro:<br />Straightforward to implement in storage<br />Some implementation: VMware e...
The Lingo: WRITE_SAME<br />Facilitates zero page reclaim<br />“Write this block 1,000,000 times”<br />Pro:<br />Conserves ...
The Bridge: Veritas Thin API<br />Thin Reclamation API can communicate de-allocation to arrays by zeroing using WRITE_SAME...
What About TRIM?<br />TRIM (ATA) and TRIM/UNMAP/PUNCH (SCSI) can inform storage that a block is no longer needed<br />Desi...
TRIM Isn’t For Thin<br />Not really a thin-provisioning command but could play one on TV<br />NetApp proposed a hole punch...
More Obstacles!<br />
Large page – no thin provisioning<br />Granularity (Page Sizes)<br />20<br />Small page – thin even with fragmentation<br />
Processing and Scheduling<br />21<br />Intensive<br />Ineffective<br />
Fragmentation Kills Thin Provisioning<br />22<br />Fragmented file<br />system spans<br />thin pages<br />Defragmented<br ...
The Performance Crunch<br />How high can we drive utilization without killing performance?<br />
Stephen’s Dream<br />Thin provisioning could be awesome, provided it is integrated at all levels of the stack<br />Smart a...
Thank You!<br />Stephen Foskett<br />stephen@fosketts.net<br />twitter.com/sfoskett<br />+1(508)451-9532<br />FoskettServi...
Upcoming SlideShare
Loading in...5
×

State of the Art Thin Provisioning

4,966

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,966
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
128
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "State of the Art Thin Provisioning"

  1. 1. State of the Art Thin Provisioning<br />Stephen Foskett<br />stephen@fosketts.net<br />twitter.com/sfoskett<br />
  2. 2. Storage Is Supposed To Be Getting Cheaper!<br />Disk cost is dropping rapidly<br />$250 buys:<br />1994: 2 GB<br />1999: 20 GB<br />2004: 200 GB<br />2009: 2000 GB<br />But enterprise storage costs keep rising!<br />2<br />
  3. 3. Where Is The Cost?<br />Hardware and software make up a small percentage of total enterprise storage spending…<br />…and hard disk drive capacity makes up a small percentage of that!<br />Data center/environmental, administrative personnel, maintenance, and data protection are much bigger<br />The biggest opportunity is inefficiency, but this has always been hard to tackle<br />3<br />
  4. 4. Over-Allocation and Under-Utilization<br />4<br />Raw Disk Capacity Purchased<br />Conventional storage provisioning is grossly inefficient<br />Usable Protected Storage<br />Capacity Allocated to Servers<br />Requested Capacity<br />Used by Files<br />Required Capacity<br />
  5. 5. Thin Provisioning Simplified!<br />5<br />Traditional storage provisioning<br />Thin storage provisioning<br />Allocated but unused<br />Free for allocation<br />Actually Used<br />Used<br />
  6. 6. Thin Provisioning: Potentially Problematic<br />Storage is commonly over-allocated to servers<br />Some arrays can “thinly” provision just the capacity that actually contains data<br />500 GB request for new project, but only 2 GB of initial data is written – array only allocates 2 GB and expands as data is written<br />What’s not to love?<br />Oops – we provisioned a petabyte and ran out of storage<br />Chunk sizes and formatting conflicts<br />Can it thin unprovision?<br />Can it replicate to and from thin provisioned volumes?<br />
  7. 7. Are You Solving a Technical or Business Issue?<br />7<br />
  8. 8. Ever Play the “Telephone” Game?<br />Application<br />IV<br />File/Record Layer<br />File System<br />Database<br />III<br />Each layer obscures the ones above and below it<br />IIc<br />Block<br />Aggregation<br />Host<br />IIb<br />Network<br />Device<br />IIa<br />Storage Devices<br />I<br />SNIA Shared Storage Model<br />
  9. 9. File System<br />It’s (Relatively) Easy to Allocate on Write<br />9<br />As applications write data<br />Storage<br />Capacity is allocated<br />File system write requests pass through to storage systems<br />so they can wait to allocate as requested<br />
  10. 10. File System<br />But What About De-Allocate on Delete?<br />10<br />Data is deleted<br />Storage<br />Capacity is freed up<br />Most file systems don’t send a consistent “de-allocate” message to storage<br />so many thin systems get fatter over time<br />
  11. 11. Two Approaches To Thin<br />11<br />
  12. 12. Server Smarts: Metadata Monitoring<br />File system/VM combos can handle thin provisioning on their own<br />ZFS, Veritas Volume Manager, VMware VMFS<br />Arrays can “watch” an operating system allocate and de-allocate storage<br />Perilous! Known file systems and volume formats only!<br />Data Robotics Drobo supports FAT32, NTFS, HFS+<br />12<br />Drobo watches the file allocation table for deletes<br />File System<br />Storage<br />
  13. 13. Storage Smarts: Zero Page Reclaim<br />Storage arrays watch for “pages” containing all zeros and simply don’t write them<br />IBM XIV, 3PAR, NetApp (with dedupe), HDS, EMC V-Max<br />Some storage vendors rely on utilities to reclaim<br />NetApp SnapDrive for Windows 5.0<br />Compellent Free Space Recovery<br />Veritas Storage Foundation Thin Reclamation<br />Can also force it with sdelete<br />13<br />
  14. 14. Zero Page Reclaim: Pros and Cons<br />Pro:<br />Straightforward to implement in storage<br />Some implementation: VMware eagerzeroedthick<br />Con:<br />Requires application/OS/file system to actually have written all zeroes - most just ignore unused space rather than zeroing<br />Most implementations are page-based<br />Drives more I/O<br />VMware thin/thick don’t work<br />14<br />
  15. 15. The Lingo: WRITE_SAME<br />Facilitates zero page reclaim<br />“Write this block 1,000,000 times”<br />Pro:<br />Conserves I/O operations<br />Popular with array vendors<br />Exists and is even implemented (a little)<br />Con:<br />Depends on file system layer intelligence<br />Still introduces extra I/O<br />Could be very, very bad in a thin-unaware array<br />15<br />
  16. 16. The Bridge: Veritas Thin API<br />Thin Reclamation API can communicate de-allocation to arrays by zeroing using WRITE_SAME/UNMAP<br />Introduced in 5.0 (UNIX) and 5.1 (Windows)<br />Supports 3PAR, EMC CLARiiON CX4, HDS USPV/VM, HP XP20k/24k, IBM XIV<br />Will also support Compellent, EMC Symmetrix DMX, Fujitsu Eternus, HP EVA, HDS AMS, IBM DS8k, NetApp<br />SmartMove copies only allocated blocks<br />Supports any/all storage systems<br />Works with thin-capable arrays<br />Speeds up migrations in all cases<br />16<br />
  17. 17. What About TRIM?<br />TRIM (ATA) and TRIM/UNMAP/PUNCH (SCSI) can inform storage that a block is no longer needed<br />Designed for SSD architecture:<br />Cells grouped into 4 kB pages and 512 kB blocks<br />Only empty pages can be written to<br />Writing to empty pages is quick!<br />Writing to used pages requires a block erase<br />Read-erase-write is slow(er)<br />OS support for TRIM:<br />Windows 7 & Server 2008 R2<br />Linux 2.6.33, Open Solaris, FreeBSD 9<br />17<br />
  18. 18. TRIM Isn’t For Thin<br />Not really a thin-provisioning command but could play one on TV<br />NetApp proposed a hole punching standard to INCITS T10 committee<br />HDS and EMC prefer UNMAP bit<br />A similar NetApp approach uses NFS and a Windows file system redirect<br />
  19. 19. More Obstacles!<br />
  20. 20. Large page – no thin provisioning<br />Granularity (Page Sizes)<br />20<br />Small page – thin even with fragmentation<br />
  21. 21. Processing and Scheduling<br />21<br />Intensive<br />Ineffective<br />
  22. 22. Fragmentation Kills Thin Provisioning<br />22<br />Fragmented file<br />system spans<br />thin pages<br />Defragmented<br />file system allows<br />thin provisioning<br />
  23. 23. The Performance Crunch<br />How high can we drive utilization without killing performance?<br />
  24. 24. Stephen’s Dream<br />Thin provisioning could be awesome, provided it is integrated at all levels of the stack<br />Smart applications that don’t spew data everywhere<br />Smart file systems and volume managers that communicate what is and isn’t used<br />Smart virtualization layers that don’t obscure usage<br />Smart storage systems that act on all of this information with granularity and without falling over dead<br />Smart monitoring systems to tie everything together and head off disaster<br />
  25. 25. Thank You!<br />Stephen Foskett<br />stephen@fosketts.net<br />twitter.com/sfoskett<br />+1(508)451-9532<br />FoskettServices.com<br />blog.fosketts.net<br />GestaltIT.com<br />25<br />
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×