minFlash: A minimalistic clustered flash array

NAND flash is seeing increasing adoption in the data center because of its orders of magnitude lower latency and higher bandwidth compared to hard disks. However, flash performance is often degraded by (i) inefficient storage I/O stack that hides flash characteristics under Flash Translation Layer (FTL), and (ii) long latency network protocols for distributed storage. In this paper, we propose a minimalistic clustered flash array (minFlash). First, minFlash exposes a simple, stable, error-free, shared-memory flash interface that enables the host to perform cross-layer flash management optimizations in file systems, databases and other user applications. Second, minFlash uses a controller-to-controller network to connect multiple flash drives with very little overhead. We envision minFlash to be used within a rack cluster of servers to provide fast scalable distributed flash storage. We show through benchmarks that minFlash can access both local and remote flash devices with negligible latency overhead, and it can expose near theoretical max performance of the NAND chips in a distributed setting.

[1]  Ilia Petrov,et al.  NoFTL: Database Systems on FTL-less Flash Storage , 2013, Proc. VLDB Endow..

[2]  Yong Wang,et al.  SDF: software-defined flash for web-scale internet storage systems , 2014, ASPLOS.

[3]  Ming Liu,et al.  A transport-layer network for distributed FPGA platforms , 2015, 2015 25th International Conference on Field Programmable Logic and Applications (FPL).

[4]  Sungjin Lee,et al.  Refactored Design of I/O Architecture for Flash Storage , 2015, IEEE Computer Architecture Letters.

[5]  Sungjin Lee,et al.  BlueDBM: An appliance for Big Data analytics , 2015, 2015 ACM/IEEE 42nd Annual International Symposium on Computer Architecture (ISCA).

[6]  Hairong Kuang,et al.  The Hadoop Distributed File System , 2010, 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST).

[7]  Arvind,et al.  A Comparative Evaluation of High-Level Hardware Synthesis Using Reed–Solomon Decoder , 2010, IEEE Embedded Systems Letters.

[8]  Dhabaleswar K. Panda,et al.  Beyond block I/O: Rethinking traditional storage primitives , 2011, 2011 IEEE 17th International Symposium on High Performance Computer Architecture.

[9]  Adam Silberstein,et al.  Benchmarking cloud serving systems with YCSB , 2010, SoCC '10.

[10]  Joo Young Hwang,et al.  F2FS: A New File System for Flash Storage , 2015, FAST.

[11]  Steven Swanson,et al.  QuickSAN: a storage area network for fast, distributed, solid state disks , 2013, ISCA.

[12]  John Ankcorn,et al.  Software-Driven Hardware Development , 2015, FPGA.

[13]  Peter Desnoyers,et al.  Empirical evaluation of NAND flash memory performance , 2010, OPSR.

[14]  Jim Zelenka,et al.  A cost-effective, high-bandwidth storage architecture , 1998, ASPLOS VIII.