ABSTRACT
Because of the explosive growth of flash disk usage in portable computers and mobile devices, building data center storage systems using these commodity flash disks has become a compelling option. A vanilla approach to integrating multiple flash disks into a storage system is to put them under the control of a RAID controller. However, this approach incurs longer write latency than necessary and leads to reduction in the overall system lifetime. This paper describes a log-structured flash array architecture called SOFA (Software Orchestrated Flash Array), in which the flash translation layer (FTL) sits on top of rather than below disk array management logic, and is judiciously partitioned between a central control server and the on-disk controllers. By directly managing the resource usage in individual flash disks, SOFA is able to avoid the load and wear imbalance problems associated with existing flash disk array systems. Empirical measurements of an industrial-strength SOFA prototype show it could execute more than 7,000 random 8KB writes per second per SATA-2 flash disks, and sustains the same per-disk random write performance when the system holds up to 24 flash disks.
- Datatest (DT). http://www.scsifaq.org/RMiller_Tools/dt.html.Google Scholar
- FileBench. http://sourceforge.net/apps/mediawiki/filebench.Google Scholar
- FusionIO, ioDrive. http://www.fusionio.com.Google Scholar
- Intel Corporation and Seagate Technology, Serial ATA Native Command Queue. http://www.seagate.com/content/pdf/whitepaper/D2c_tech_paper_intc-stx_sata_ncq.pdf.Google Scholar
- Kernel asynchronous I/O support for Linux. http://lse.sourceforge.net/io/aio.html.Google Scholar
- Sun Storage F5100 Flash Array. http://www.oracle.com/us/products/servers-storage/storage/disk-storage/043967.html.Google Scholar
- TPC-C. http://www.tpc.org/tpcc/default.asp.Google Scholar
- Violin Memory, 3200 Flash Memory Array. http://www.violin-memory.com.Google Scholar
- XDD. http://www.ioperformance.com/.Google Scholar
- Samsung NAND Flash, Revision 2.0, Samsung Electronics Japan, Tokyo, 1994/1995.Google Scholar
- I. Ahmad. Easy and efficient disk i/o workload characterization in vmware esx server. In IISWC 2007 Sep., pages 149--158. Google ScholarDigital Library
- M. R. Andrew and P. Sachin. Flash recovery employing transaction log. U.S. Patent 7 979 626 B2, Jul. 12, 2011.Google Scholar
- M. A. Bender, M. Farach-Colton, R. Johnson, B. C. Kuszmaul, D. Medjedovic, P. Montes, P. Shetty, R. P. Spillane, and E. Zadok. Don't thrash: how to cache your hash on flash. volume 5. VLDB Endowment, 2012. Google ScholarDigital Library
- M. Canim, G. A. Mihaila, B. Bhattacharjee, K. A. Ross, and C. A. Lang. SSD bufferpool extensions for database systems. Proc. VLDB Endow., 3(1-2):1435--1446, 2010. Google ScholarDigital Library
- L. P. Chang. On efficient wear-leveling for large-scale flash-memory storage systems. In the 22nd ACM Symposium on Applied Computing (ACM SAC). Google ScholarDigital Library
- F. Chen, R. Lee, and X. Zhang. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processingr. In High Performance Computer Architecture (HPCA), 2011 IEEE 17th International Symposium, pages 266--277. Google ScholarDigital Library
- M. L. Chiang, P. C. H. Lee, and R. C. Chang. Using data clustering to improve cleaning performance for flash memory. Software Practice & Experience, Vol. 29, No.3, pp. 267--290, Mar. 1999. Google ScholarDigital Library
- Feitelson and D.G. Locality of sampling and diversity in parallel system workloads. In ICS 2007 Apr., pages 53--63. Google ScholarDigital Library
- L. M. Grupp, A. M. Caulfield, J. Coburn, S. Swanson, E. Yaakobi, P. H. Siegel, and J. K. Wolf. Characterizing flash memory: Anomalies, observations, and applications. In Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture, pages 24--33, 2009. Google ScholarDigital Library
- L. Guanlin, B. Debnath, and D. Du. A forest-structured bloom filter with flash memory. In 2011 IEEE Mass Storage Systems and Technologies 27th Symposium, pages 1--6. Google ScholarDigital Library
- M. Kamruzzaman, S. Swanson, and T. Dean. Inter-core prefetching for multicore processors using migrating helper threads. In Proceeding of ASPLOS 2011. Google ScholarDigital Library
- W.-H. Kang, S.-W. Lee, and B. Moon. Flash-based extended cache for higher throughput and faster recovery. Proc. VLDB Endow., 5(11):1615--1626, July 2012. Google ScholarDigital Library
- S. Kavalanekar, B. L. Worthington, Q. Zhang, and V. Sharda. Characterization of storage workload traces from production windows servers. In D. Christie, A. Lee, O. Mutlu, and B. G. Zorn, editors, 4th International Symposium on Workload Characterization (IISWC 2008), Seattle, Washington, USA, September 14-16, 2008, pages 119--128. IEEE, 2008.Google ScholarCross Ref
- S. H. Kim, J. S. Kim, and S. Maeng. Using solid state drives (SSDs) for virtual block devices. In Proceeding of RESoVLE 2012.Google Scholar
- Y. Kim, S. Oral, G. Shipman, J. Lee, D. Dillow, and F. Wang. Harmonia: A globally coordinated garbage collector for arrays of solid-state drives. In MSST 2011 May.Google Scholar
- E. K. Lee and B. L. Yeo. High-performance log-structured raid. U.S Patent, 2003/0120864, Jun. 26, 2003.Google Scholar
- J. Lee and J.-S. Kim. An empirical study of hot/cold data separation policies in solid state drives (ssds). In Proceedings of the 6th International Systems and Storage Conference, SYSTOR '13, pages 12:1--12:6, New York, NY, USA, 2013. ACM. Google ScholarDigital Library
- Y. J. Mo, J. H. Kim, D. H. Song, S. Lee, J. H. Hwang, and M. J. Jung. System with flash memory device and data recovery method thereof. U.S Patent, 2008/0104308 A1, May. 1, 2008.Google Scholar
- Y. Pan, G. Dong, and T. Zhang. Exploiting memory device wear-out dynamics to improve nand flash memory system performance. In Proceedings of the 9th USENIX conference on File and storage technologies (FAST'11). Google ScholarDigital Library
- S. Park, J. H. Yu, and S. Y. Ohm. Atomic write ftl for robust flash file system. In Consumer Electronics, 2005. (ISCE 2005). Proceedings of the Ninth International Symposium, pages 155--160.Google Scholar
- H. Roh, S. Park, S. Kim, M. Shin, and S.-W. Lee. B+-tree index optimization by exploiting internal parallelism of flash-based solid state drives. Proc. VLDB Endow., 5(4):286--297, Dec. 2011. Google ScholarDigital Library
- M. Rosenblum and J. K. Ousterhout. The design and implementation of a log-structured file system. In Proceedings of SOSP 1991, pages 1--15. Google ScholarDigital Library
- M. Wang, A. Ailamaki, and C. Faloutsos. Capturing the spatio-temporal behavior of real traffic data. In IFIP WG 7.3 2002, Sep., pages 23--27.Google Scholar
- C. H. Wu, T. W. Kuo, and L. P. Chang. An efficient b-tree layer implementation for flash-memory storage systems. In ACM Transactions on Embedded Computing Systems (TECS), Vol 6, Issue 3, pages 1--23. Google ScholarDigital Library
Index Terms
- Software Orchestrated Flash Array
Recommendations
A high performance NAND array file system based on multiple NAND flash memories
The existing NAND flash memory file systems have not taken into account multiple NAND flash memories for large-capacity storage. In addition, since large-capacity NAND flash memory is much more expensive than the same capacity hard disk drive, it is ...
Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD
Solid-state disks (SSDs), which are composed of multiple NAND flash chips, are replacing hard disk drives (HDDs) in the mass storage market. The performances of SSDs are increasing due to the exploitation of parallel I/O architectures. However, ...
An Efficient Array File System for Multiple Small-Capacity NAND Flash Memories
NBIS '11: Proceedings of the 2011 14th International Conference on Network-Based Information SystemsThe existing NAND flash memory file systems have not taken into account multiple NAND flash memories for large-capacity storage. To resolve these problems, this paper suggests a new file system called NAFS for large-capacity storage with multiple small-...
Comments