An FTL-Agnostic Layer to Improve Random Write on Flash Memory
Flash memories are considered a competitive alternative to rotating disks as non-volatile data storage for database management systems. However, even if the Flash Translation Layer – or FTL – allows both technologies to share the same block interface, they have different preferred access patterns. Database management systems could potentially benefit from flash memories as they provide fast random access for read operations although random writes are generally not as efficient as sequential writes. In this paper, we propose a simple data placement algorithm designed for flash memories, to reorganize inefficient random writes in a quasi-sequential access pattern. This access pattern is first established encouraging for a subset of flash devices by identifying a strong correlation between spatial locality and write performances, with a distance being defined to quantify this effect. This design is then validated by a formalization with a mathematical model, along with experimental results. With this optimization, random write potentially become as efficient as sequential write, improving random write speed by up to two orders of magnitude.
KeywordsAccess Pattern Flash Memory Database Management System Garbage Collection Read Operation
Unable to display preview. Download preview PDF.
- 1.Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M., Panigrahy, R.: Design Tradeoffs for SSD Performance. In: 2008 USENIX Annual Technical Conference, pp. 57–70. USENIX Association (2008)Google Scholar
- 3.Bouganim, L., Jónsson, B.T., Bonnet, P.: uFLIP: Understanding Flash IO Patterns. In: 4th Biennial Conference on Innovative Data Systems Research (2009)Google Scholar
- 4.Chen, S.: FlashLogging: Exploiting Flash Devices for Synchronous Logging Performance. In: 35th International Conference on Management of Data, pp. 73–86. ACM, New York (2009)Google Scholar
- 6.Kim, J., Oh, Y., Kim, E., Choi, J., Lee, D., Noh, S.H.: Disk Schedulers for Solid State Drives. In: 7th International Conference on Embedded Software, pp. 295–304. ACM, New York (2009)Google Scholar
- 7.Kim, Y.R., Whang, K.Y., Song, I.Y.: Page-Differential Logging: An Efficient and DBMS-independent Approach for Storing Data into Flash Memory. In: 36th International Conference on Management of Data, pp. 363–374. ACM, New York (2010)Google Scholar
- 8.Lee, S.W., Moon, B.: Design of Flash-Based DBMS: An In-Page Logging Approach. In: 33th International Conference on Management of Data, pp. 55–66. ACM, New York (2007)Google Scholar
- 9.Lee, S.W., Moon, B., Park, C.: Advances in Flash Memory SSD Technology for Enterprise Database Applications. In: 35th International Conference on Management of Data, pp. 863–870. ACM, New York (2009)Google Scholar
- 10.Nath, S., Gibbons, P.B.: Online Maintenance of Very Large Random Samples on Flash Storage. PVLDB 1(1), 970–983 (2008)Google Scholar
- 11.Stoica, R., Athanassoulis, M., Johnson, R., Ailamaki, A.: Evaluating and Repairing Write Performance on Flash Devices. In: 5th International Workshop on Data Management on New Hardware, pp. 9–14. ACM, New York (2009)Google Scholar
- 13.Zhou, D., Meng, X.: RS-Wrapper: Random Write Optimization for Solid State Drive. In: 18th Conference on Information and Knowledge Management, pp. 1457–1460. ACM, New York (2009)Google Scholar