tfs a transparent file system for contributory storage
play

TFS: A Transparent File System for Contributory Storage James Cipar - PowerPoint PPT Presentation

Florida International University TFS: A Transparent File System for Contributory Storage James Cipar Mark D. Corner Emery D. Berger Luis Useche lusec001@cs.fiu.edu 4/3/07 Overview Introduction TFS: Design TFS: Implementation


  1. Florida International University TFS: A Transparent File System for Contributory Storage James Cipar Mark D. Corner Emery D. Berger Luis Useche lusec001@cs.fiu.edu 4/3/07

  2. Overview Introduction TFS: Design TFS: Implementation Evaluation Conclusions References 04/03/07 Florida International University 2

  3. Introduction Users share resources from local machine to different uses: 04/03/07 Florida International University 3

  4. Introduction The sharing of CPU and memory is widely use. In contribution of storage is not the case. Reasons: – Low performance. – Users are generally reluctant to relinquish their free space. 04/03/07 Florida International University 4

  5. How is the I/O performance affected? Two types of contributions: static and dynamic. Watermarking: Preset a percent of disk to use. Problem: The file system should delete the contributory files when space needed. 04/03/07 Florida International University 5

  6. How is the I/O performance affected? II Problem: When the disk is almost full the FS allocation doesn't do a good work. – E.g. In an FFS throughput can drop 77% is the 75% of the disk is full. 04/03/07 Florida International University 6

  7. Contributory effects When the disk utilization 50 increase so does 45 40 the file 35 Time (s) 30 25 fragmentation 20 15 10 5 More contribution, 0 50 55 60 65 70 75 80 85 90 95 Disk Utiliztion (%) lower Ext2 Copy performance 04/03/07 Florida International University 7

  8. Solution: Transparent File System (TFS) Goal: Design a transparent file system that does not affect the normal function of the local FS. – Performance: does not affect the allocation policy. – Capacity: does not decrease the size of the local FS space. 04/03/07 Florida International University 8

  9. TFS Design Designers started TFS from a popular FS, ext2. New blocks type added: – transparent – free-and-overwritten – allocated-and-overwritten 04/03/07 Florida International University 9

  10. Allocation policy Allocation policy treats transparent and free blocks equally. – Benefit: The allocation policy is not affected. – Drawback: Overwrite of the contributory files. Contributory applications should use replication to prevent data loss. 04/03/07 Florida International University 10

  11. Allocation: An example 04/03/07 Florida International University 11

  12. Management of states When an ordinary file writes to a transparent block, the block is marked as: allocated-and- overwritten. Transparent data can only be written to free blocks. 04/03/07 Florida International University 12

  13. States Transition 04/03/07 Florida International University 13

  14. Cleaning of Overwritten blocks The cleaning is done when the transparent files are open. TFS scans the blocks of the opened transparent file: – if some block is overwritten, returns an error and deletes the corresponding inode. 04/03/07 Florida International University 14

  15. Cleaning of Overwritten blocks II Transparent files with overwritten blocks and never opened leads to unused space. Solution: user space application that periodically opens transparent files. 04/03/07 Florida International University 15

  16. TFS states overhead For each block TFS store its state. Representation of state: 3 bits. In a 100GB FS with blocks of size 4kB, the array of states occupies 6.25MB. Just part of this array will be in memory at any given time. 04/03/07 Florida International University 16

  17. Performance concession What happen is a transparent file is open and a user process overwrites it? – TFS yields to open files. What happen if a transparent meta-data is overwritten? – The transparent meta-data is stored in the FS regular space. 04/03/07 Florida International University 17

  18. Transparent data Allocation The ordinary data overwrites transparent blocks. TFS wants to avoid FS hot spots and minimize the overwritten transparent blocks. 04/03/07 Florida International University 18

  19. Hot Spots Block allocation shows high locality 04/03/07 Florida International University 19

  20. Avoiding High locality It keeps a histogram of the usage of each block. With this information and some desire rate of transparent overwriting is easy to obtain the fraction of blocks to avoid, f . 04/03/07 Florida International University 20

  21. Data loss vs. TFS disk usage When TFS avoid 3% of disk, the used disk will be overwritten at 0.1kB/s 04/03/07 Florida International University 21

  22. TFS: Implementation It was implemented for the Linux kernel 2.6.13.4. Used by one of the developers for 6 months to store his home and use Freenet. mke2fs, fsck, open, df modified. Aprox 900 lines of new code. 04/03/07 Florida International University 22

  23. Evaluation Goal: Measure each of the contributory storage systems with different metrics: – The amount of storage contributed. – The effect on the block allocation policy. – Overall performance effect. 04/03/07 Florida International University 23

  24. Evaluation: Contributed Storage Capacity Assuming a network of identical machines each with 100GB and 50% of disk full. 3 contributory systems analyzed: – Static contribution: 5% of contribution. – Dynamic system (watermarking): 35% of contribution. – TFS: 47% of contribution. Determined using the results from the data loss graph. 04/03/07 Florida International University 24

  25. Evaluation: Contributed Storage Capacity II Two traces evaluated from different type of networks: – Microsoft corporate network – Skype super-peers The contributed capacity calculated by: C = A(T,r)(B - F) 04/03/07 Florida International University 25

  26. Contributed Capacity: Microsoft corporate network In reliable systems, TFS contributes much more than other solutions. 04/03/07 Florida International University 26

  27. Contributed Capacity: Skype super-peer In unreliable networks, TFS behaves at least as good as other solutions. 04/03/07 Florida International University 27

  28. Evaluation: Performance Impact Disk fill 50% with the /usr directory files. Four cases measured: – No contribution (baseline) – 5% of contribution – 35% of contribution (Dynamic case) – TFS: The disk is filled with transparent data. Andrew benchmark ran. 04/03/07 Florida International University 28

  29. Andrew benchmark results 04/03/07 Florida International University 29

  30. Evaluation: Block allocation layout Two Ext2 machines with 0% and 40% of contributory space and one with TFS. Machines 50% filled with ordinary data, rest with transparent data and finally Andrew data. 04/03/07 Florida International University 30

  31. Block allocation II Different disk layouts 04/03/07 Florida International University 31

  32. Conclusions The key benefit of TFS is that it does not affect the local allocation. TFS avoids hot-spots keeping track of each block. In the worst case TFS behaves as good as other solutions. 04/03/07 Florida International University 32

  33. Conclusions II In the best case TFS provides 40% more storage than the best user-space technique. 04/03/07 Florida International University 33

  34. References James Cipar, Mark D. Corner and Emery D. Berger, “TFS: A Transparent File System for Contributory Storage”, FAST '07: 5 th USENIX Conference on File and Storage Technologies , (2007) Robin Harris, “Transparent File System – Can You See It?”, http://storagemojo.com/?p=408, (2007) 04/03/07 Florida International University 34

Recommend


More recommend