File and Storage Technologies · 2016 · 54 citations · 35 references
ComputingComputer EngineeringComputer ScienceDatabasesOperating SystemsStorage SystemsData Storage SystemsFile SystemsMemory Hierarchy OptimizationSolid-state Drive ArchitectureStorage ManagementFile System InterfacesFile System PerformanceFlash MemoryFlash Memory StorageStorage Device InterfacesStorage I/o OptimizationStorage Performance Optimization
In flash storage, an FTL is a complex piece of code that resides completely inside the storage device and is provided by the manufacturer. Its principal virtue is providing interoperability with conventional HDDs. However, this virtue is also its biggest impediment in reaching the full performance of the underlying flash storage. We propose to refactor the flash storage architecture so that it relies on a new block I/O interface which does not permit overwriting of data without intervening erasures. We demonstrate how high-level applications, in particular file systems, can deal with this restriction efficiently by employing append-only segments. This refactoring dramatically reduces flash management overhead and improves performance of applications, such as file systems and databases, by permitting them to directly manage flash storage. Our experiments on a machine with the new block I/O interface show that DRAM in the flash controller is reduced by 128X and the performance of the file system improves by 80% over conventional SSDs.
35
Fay W. Chang, Sanjay Ghemawat, Wilson C. Hsieh et al. · ACM Transactions on Computer Systems · 2008 · 3.4K citations
The log-structured merge-tree (LSM-tree)
Patrick E. O׳Neil, E.T. Cheng, Dieter Gawlick et al. · Acta Informatica · 1996 · 1.3K citations
Aayush Gupta, Youngjae Kim, Bhuvan Urgaonkar · 2009 · 735 citations