Alex Conway, Ainesh Bakshi, Arghya Bhattacharya, Rory Bennett, Yizheng Jiao, Eric Knorr, Yang Zhan, Michael A. Bender, William Jannen, Rob Johnson, Bradley C. Kuszmaul, Donald E. Porter, Jun Yuan, Martin Farach-Colton
{"title":"文件系统老化","authors":"Alex Conway, Ainesh Bakshi, Arghya Bhattacharya, Rory Bennett, Yizheng Jiao, Eric Knorr, Yang Zhan, Michael A. Bender, William Jannen, Rob Johnson, Bradley C. Kuszmaul, Donald E. Porter, Jun Yuan, Martin Farach-Colton","doi":"arxiv-2401.08858","DOIUrl":null,"url":null,"abstract":"File systems must allocate space for files without knowing what will be added\nor removed in the future. Over the life of a file system, this may cause\nsuboptimal file placement decisions that eventually lead to slower performance,\nor aging. Conventional wisdom suggests that file system aging is a solved\nproblem in the common case; heuristics to avoid aging, such as colocating\nrelated files and data blocks, are effective until a storage device fills up,\nat which point space pressure exacerbates fragmentation-based aging. However,\nthis article describes both realistic and synthetic workloads that can cause\nthese heuristics to fail, inducing large performance declines due to aging,\neven when the storage device is nearly empty. We argue that these slowdowns are caused by poor layout. We demonstrate a\ncorrelation between the read performance of a directory scan and the locality\nwithin a file system's access patterns, using a dynamic layout score. We\ncomplement these results with microbenchmarks that show that space pressure can\ncause a substantial amount of inter-file and intra-file fragmentation. However,\nour results suggest that the effect of free-space fragmentation on read\nperformance is best described as accelerating the file system aging process.\nThe effect on write performance is non-existent in some cases, and, in most\ncases, an order of magnitude smaller than the read degradation from\nfragmentation caused by normal usage. In short, many file systems are exquisitely prone to read aging after a\nvariety of write patterns. We show, however, that aging is not inevitable.\nBetrFS, a file system based on write-optimized dictionaries, exhibits almost no\naging in our experiments. We present a framework for understanding and\npredicting aging, and identify the key features of BetrFS that avoid aging.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"1 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-01-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"File System Aging\",\"authors\":\"Alex Conway, Ainesh Bakshi, Arghya Bhattacharya, Rory Bennett, Yizheng Jiao, Eric Knorr, Yang Zhan, Michael A. Bender, William Jannen, Rob Johnson, Bradley C. Kuszmaul, Donald E. Porter, Jun Yuan, Martin Farach-Colton\",\"doi\":\"arxiv-2401.08858\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"File systems must allocate space for files without knowing what will be added\\nor removed in the future. Over the life of a file system, this may cause\\nsuboptimal file placement decisions that eventually lead to slower performance,\\nor aging. Conventional wisdom suggests that file system aging is a solved\\nproblem in the common case; heuristics to avoid aging, such as colocating\\nrelated files and data blocks, are effective until a storage device fills up,\\nat which point space pressure exacerbates fragmentation-based aging. However,\\nthis article describes both realistic and synthetic workloads that can cause\\nthese heuristics to fail, inducing large performance declines due to aging,\\neven when the storage device is nearly empty. We argue that these slowdowns are caused by poor layout. We demonstrate a\\ncorrelation between the read performance of a directory scan and the locality\\nwithin a file system's access patterns, using a dynamic layout score. We\\ncomplement these results with microbenchmarks that show that space pressure can\\ncause a substantial amount of inter-file and intra-file fragmentation. However,\\nour results suggest that the effect of free-space fragmentation on read\\nperformance is best described as accelerating the file system aging process.\\nThe effect on write performance is non-existent in some cases, and, in most\\ncases, an order of magnitude smaller than the read degradation from\\nfragmentation caused by normal usage. In short, many file systems are exquisitely prone to read aging after a\\nvariety of write patterns. We show, however, that aging is not inevitable.\\nBetrFS, a file system based on write-optimized dictionaries, exhibits almost no\\naging in our experiments. We present a framework for understanding and\\npredicting aging, and identify the key features of BetrFS that avoid aging.\",\"PeriodicalId\":501333,\"journal\":{\"name\":\"arXiv - CS - Operating Systems\",\"volume\":\"1 1\",\"pages\":\"\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-01-16\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Operating Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2401.08858\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2401.08858","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
File systems must allocate space for files without knowing what will be added
or removed in the future. Over the life of a file system, this may cause
suboptimal file placement decisions that eventually lead to slower performance,
or aging. Conventional wisdom suggests that file system aging is a solved
problem in the common case; heuristics to avoid aging, such as colocating
related files and data blocks, are effective until a storage device fills up,
at which point space pressure exacerbates fragmentation-based aging. However,
this article describes both realistic and synthetic workloads that can cause
these heuristics to fail, inducing large performance declines due to aging,
even when the storage device is nearly empty. We argue that these slowdowns are caused by poor layout. We demonstrate a
correlation between the read performance of a directory scan and the locality
within a file system's access patterns, using a dynamic layout score. We
complement these results with microbenchmarks that show that space pressure can
cause a substantial amount of inter-file and intra-file fragmentation. However,
our results suggest that the effect of free-space fragmentation on read
performance is best described as accelerating the file system aging process.
The effect on write performance is non-existent in some cases, and, in most
cases, an order of magnitude smaller than the read degradation from
fragmentation caused by normal usage. In short, many file systems are exquisitely prone to read aging after a
variety of write patterns. We show, however, that aging is not inevitable.
BetrFS, a file system based on write-optimized dictionaries, exhibits almost no
aging in our experiments. We present a framework for understanding and
predicting aging, and identify the key features of BetrFS that avoid aging.