Please wait a minute...
Frontiers of Computer Science

ISSN 2095-2228

ISSN 2095-2236(Online)

CN 10-1014/TP

Postal Subscription Code 80-970

2018 Impact Factor: 1.129

Front. Comput. Sci.    2019, Vol. 13 Issue (1) : 16-34    https://doi.org/10.1007/s11704-017-6523-9
RESEARCH ARTICLE
A high-performance and endurable SSD cache for parity-based RAID
Chu LI, Dan FENG(), Yu HUA, Fang WANG
Wuhan National Lab for Optoelectronics, Key Laboratory of Information Storage System, (School of Computer Science and Technology, Huazhong University of Science and Technology), Ministry of Education of China,Wuhan 430074, China
 Download: PDF(1049 KB)  
 Export: BibTeX | EndNote | Reference Manager | ProCite | RefWorks
Abstract

Solid-state drives (SSDs) have been widely used as caching tier for disk-based RAID systems to speed up dataintensive applications. However, traditional cache schemes fail to effectively boost the parity-based RAID storage systems (e.g., RAID-5/6), which have poor random write performance due to the small-write problem. What’s worse, intensive cache writes can wear out the SSD quickly, which causes performance degradation and cost increment. In this article, we present the design and implementation of KDD, an efficient SSD-based caching system which Keeps Data and Deltas in SSD. When write requests hit in the cache, KDD dispatches the data to the RAID storage without updating the parity blocks to mitigate the small write penalty, and compactly stores the compressed deltas in SSD to reduce the cache write traffic while guaranteeing reliability in case of disk failures. In addition, KDD organizes the metadata partition on SSD as a circular log to make the cache persistent with low overhead.We evaluate the performance of KDD via both simulations and prototype implementations. Experimental results show that KDD effectively reduces the small write penalty while extending the lifetime of the SSD-based cache by up to 6.85 times.

Keywords solid-state drive (SSD)      parity-based RAID      small write problem      write endurance     
Corresponding Author(s): Dan FENG   
Just Accepted Date: 24 July 2017   Online First Date: 13 June 2018    Issue Date: 31 January 2019
 Cite this article:   
Chu LI,Dan FENG,Yu HUA, et al. A high-performance and endurable SSD cache for parity-based RAID[J]. Front. Comput. Sci., 2019, 13(1): 16-34.
 URL:  
https://academic.hep.com.cn/fcs/EN/10.1007/s11704-017-6523-9
https://academic.hep.com.cn/fcs/EN/Y2019/V13/I1/16
1 D APatterson, GGibson, R HKatz. A case for redundant arrays of inexpensive disks (raid). In: Proceedings of ACM SIGMOD International Conference on Management of Data. 1988, 109–116
https://doi.org/10.1145/50202.50214
2 DStodolsky, GGibson, MHolland. Parity logging overcoming the small write problem in redundant disk arrays. In: Proceedings of Annual International Symposium on Computer Architecture. 1993, 64–75
3 QYang, JRen. I-CASH: intelligently coupled array of SSD and HDD. In: Proceedings of the 17th IEEE International Symposium on High Performance Computer Architecture. 2011, 278–289
https://doi.org/10.1109/HPCA.2011.5749736
4 MSaxena, M MSwift, Y YZhang. Flashtier: a lightweight, consistent and durable storage cache. In: Proceedings of ACM European Conference on Computer Systems. 2012, 267–280
https://doi.org/10.1145/2168836.2168863
5 R SLiu, C LYang, C HLi, G Y Chen. Duracache: a durable SSD cache using MLC NAND flash. In: Proceedings of the 50th Annual Design Automation Conference. 2013
https://doi.org/10.1145/2463209.2488939
6 CLi, DFeng, YHua, F Wang. Improving raid performance using an endurable ssd cache. In: Proceedings of International Conference on Parallel Processing. 2016, 396–405
https://doi.org/10.1109/ICPP.2016.52
7 BMao, S ZWu. Exploiting request characteristics and internal parallelism to improve SSD performance. In: Proceedings of IEEE International Conference on Computer Design. 2015, 447–450
https://doi.org/10.1109/ICCD.2015.7357145
8 BMao, S ZWu, L DDuan. Improving the SSD performance by exploiting request characteristics and internal parallelism. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2018, 37(2): 472–484
https://doi.org/10.1109/TCAD.2017.2697961
9 RMicheloni. Solid-state drive (SSD): a nonvolatile storage system. Proceedings of the IEEE, 2017, 105(4): 583–588
https://doi.org/10.1109/JPROC.2017.2678018
10 L MGrupp, J DDavis, SSwanson. The bleak future of nand flash memory. In: Proceedings of USENIX Conference on File and Storage Technologies. 2012, 17–24
11 RKoller, LMarmol, RRangaswami, SSundararaman, M Talagala, Zhao. Write policies for host-side flash caches. In: Proceedings of USENIX conference on File and Storage Technologies. 2013, 45–58
12 ELee, YOh, DLee. SSD caching to overcome small write problem of disk-based raid in enterprise environments. In: Proceedings of Annual ACM Symposium on Applied Computing. 2015, 2047–2053
https://doi.org/10.1145/2695664.2695886
13 FChen, TLuo, XZhang. CAFUL: a content-aware flash translation layer enhancing the lifespan of flash memory based solid state drives. In: Proceedings of USENIX Conference on File and Stroage Technologies. 2011, 77–90
14 J PYang, N Plasson, GGillis, NTalagala, S Sundararaman, RWood. HEC: improving endurance of high performance flash-based cache devices. In: Proceedings of the 6th International Systems and Storage Conference. 2013
https://doi.org/10.1145/2485732.2485743
15 W JLi, G Jean-Baptise, JRiveros, GNarasimhan, TZhang, MZhao. CacheDedup: in-line deduplication for flash caching. In: Proceedings of USENIX Conference on File and Storage Technologies. 2016, 301–314
16 Y PChai, Z HDu, XQin, D A Bader. WEC: improving durability of SSD cache drives by caching write-efficient data. IEEE Transactions on Computers, 2015, 64(11): 3304–3316
https://doi.org/10.1109/TC.2015.2401029
17 QYang, W JXiao, JRen. Trap-array: a disk array architecture providing timely recovery to any point-in-time. In: Proceedings of Annual International Symposium on Computer Architecture. 2006, 289–301
https://doi.org/10.1145/1150019.1136511
18 C BMorrey, D Grunwald. Peabody: the time travelling disk. In: Proceedings of Mass Storage Systems and Technologies. 2003, 241–253
https://doi.org/10.1109/MASS.2003.1194861
19 E JLee, J EJang, HBahn. DTFS: exploiting the similarity of data versions to design a write-efficient file system in phase-change memory. In: Proceedings of Annual ACM Symposium on Applied Computing. 2014, 1535–1540
https://doi.org/10.1145/2554850.2555032
20 G YWu, X BHe. Delta-FTL: improving SSD lifetime via exploiting content locality. In: Proceedings of ACM European Conference on Computer Systems. 2012, 253–266
https://doi.org/10.1145/2168836.2168862
21 X BZhang, J PLe, HWang, K Zhao, TZhang. Reducing solid-state storage device write stress through opportunistic in-place delta compression. In: Proceedings of USENIX Conference on File and Storage Technologies. 2016, 111–124
22 MRosenblum, J K Ousterhout. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems, 1992, 10(1): 26–52
https://doi.org/10.1145/146941.146943
23 Y MHu, QYang. DCD—disk caching disk: a new approach for boosting I/O performance. In: Proceedings of Annual International Symposium on Computer Architecture. 1996, 169–178
https://doi.org/10.1145/232973.232991
24 DArteaga, MZhao. Client-side flash caching for cloud systems. In: Proceedings of International Conference on Systems and Storage. 2014
https://doi.org/10.1145/2611354.2611372
25 D HYoon, N Muralimanohar, J CChang, P,Ranganathan N PJouppi, MErez. Free-p: protecting non-volatile memory against both hard and soft errors. In: Proceedings of IEEE International Symposium on High Performance Computer Architecture. 2011, 466–477
https://doi.org/10.1109/HPCA.2011.5749752
26 M KQureshi, J Karidis, MFranceschini , VSrinivasan, L Lastras, BAbali. Enhancing lifetime and security of PCM-based main memory with start-gap wear leveling. In: Proceedings of the 42nd IEEE/ACM International Symposium on Microarchitecture. 2009, 14–23
https://doi.org/10.1145/1669112.1669117
27 MSrinivasan, M Callaghan. Flashcache at facebook. Facebook White Paper, 2010
28 Application, OLTP I/O. UMass Trace Repository
29 DNarayanan, A Donnelly, ARowstron. Write off-loading: practical power management for enterprise storage. ACM Transactions on Storage, 2008, 4(3): 10
https://doi.org/10.1145/1416944.1416949
30 M FOberhumer. Lzo real-time data compression library. 2005
31 LTian, DFeng, HJiang, K Zhou, L FZeng, J XChen, Z KWang, Z LSong. Pro: a popularity-based multi-threaded reconstruction optimization for raid-structured storage systems. In: Proceedings of USENIX Conference on File and Storage Technologies. 2007, 277–290
32 JAxboe. Fio- flexible I/O tester synthetic benchmark
33 D GAndersen, J Franklin, MKaminsky, APhanishayee, LTan, VVasudevan. Fawn: a fast array of wimpy nodes. In: Proceedings of ACM Symposium on Operating Systems Principles. 2009, 1–14
https://doi.org/10.1145/1629575.1629577
34 CGough, I Steiner, WSaunders. Energy Efficient Servers: Blueprints for Data Center Optimization. New York: Apress Media, 2015
https://doi.org/10.1007/978-1-4302-6638-9
35 W WHsu, A JSmith. Characteristics of I/O traffic in personal computer and server workloads. IBM Systems Journal, 2003, 42(2): 347–372
https://doi.org/10.1147/sj.422.0347
36 GSoundararajan, V Prabhakaran, MBalakrishnan, TWobber. Extending SSD lifetimes with disk-based write caches. In: Proceedings of USENIX Conference on File and Storage Technologies. 2010, 101–114
37 CLi, DFeng, YHua, W Xia, FWang. Gasa: a new page replacement algorithm for nand flash memory. In: Proceedings of IEEE International Conference on Networking, Architecture and Storage. 2016, 1–9
https://doi.org/10.1109/NAS.2016.7549403
38 QLi, LShi, C JXue, K J Wu, CJi, Q FZhuge, E H MSha. Access characteristic guided read and write cost regulation for performance improvement on flash memory. In: Proceedings of USENIX Conference on File and Storage Technologies. 2016, 125–132
39 SSavage, JWilkes. Afraid: a frequently redundant array of independent disks. In: Proceedings of USENIX Annual Technical Conference. 1996, 27–39
40 SIm, DShin. Flash-aware raid techniques for dependable and highperformance flash memory SSD. IEEE Transactions on Coumputers, 2011, 60(1): 80–92
https://doi.org/10.1109/TC.2010.197
41 C CChung, H HHsu. Partial parity cache and data cache management method to improve the performance of an SSD-based raid. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2013, 22(7): 1470–1480
42 KMogi, M Kitsuregawa. Hot mirroring: a method of hiding parity update penalty and degradation during rebuilds for raid5. In: Proceedings of ACM SIGMOD International Conference on Management of Data. 1996, 183–194
https://doi.org/10.1145/233269.233331
43 JWilkes, R Golding, CStaelin, TSullivan. The HP autoraid hierarchical storage system. ACM Transactions on Computer Systems, 1996, 14(1): 108–136
https://doi.org/10.1145/225535.225539
44 KMogi, M Kitsuregawa. Dynamic parity stripe reorganizations for raid5 disk arrays. In: Proceedings of International Conference on Parallel and Distributed Information Systems. 1994, 17–26
https://doi.org/10.1109/PDIS.1994.331736
45 SByan, J Lentini, AMadan, LPabón. Mercury: host-side flash caching for the data center. In: Proceedings of Mass Storage Systems and Technologies. 2012, 1–12
https://doi.org/10.1109/MSST.2012.6232368
46 DQin, A DBrown, AGoel. Reliable writeback for client-side flash caches. In: Proceedings of USENIX Annual Technical Conference. 2014, 451–462
47 YOh, ELee, CHyun, J Choi, DLee, S HNoh. Enabling cost-effective flash based caching with an array of commodity SSDs. In: Proceedings of Annual Middleware Conference. 2015, 63–74
https://doi.org/10.1145/2814576.2814814
48 Y,Klonatos TMakatos, MMarazakis, M D Flouris, ABilas. Transparent online storage compression at the block-level. ACM Transactions on Storage, 2012, 8(2): 5
https://doi.org/10.1145/2180905.2180906
49 CLi, P Shilane, FDouglis, HShim, S Smaldone, GWallace. Nitro: a capacity-optimized ssd cache for primary storage. In: Proceedings of USENIX Annual Technical Conference. 2014, 501–512
50 TPritchett, M Thottethodi. Sievestore: a highly-selective, ensemblelevel disk cache for cost-performance. In: Proceedings of Annual International Symposium on Computer Architecture. 2010, 163–174
https://doi.org/10.1145/1815961.1815982
51 SHuang, Q SWei, J XChen, C Chen, DFeng. Improving flash-based disk cache with lazy adaptive replacement. In: Proceedings of Mass Storage Systems and Technologies. 2013, 1–10
https://doi.org/10.1109/MSST.2013.6558447
52 TKgil , D Roberts, TMudge. Improving nand flash based disk caches. In: Proceedings of Annual International Symposium on Computer Architecture. 2008, 327–338
https://doi.org/10.1109/ISCA.2008.32
53 YOh, JChoi, DLee, S H Noh. Caching less for better performance: balancing cache size and update cost of flash memory cache in hybrid storage systems. In: Proceedings of USENIX Conference on File and Storage Technologies. 2012, 313–326
54 JJeong, S SHahn, SLee, J Kim. Lifetime improvement of nand flashbased storage systems using dynamic program and erase scaling. In: Proceedings of USENIX Conference on File and Storage Technologies. 2014, 61–74
55 S ZWu, Y PLin, BMao, H Jiang. GCaR: garbage collection aware cache management with improved performance for flash-based SSDs. In: Proceedings of International Conference on Supercomputing. 2016
https://doi.org/10.1145/2925426.2926263
56 S ZWu, BMao, Y PLin, H Jiang. Improving performance for flashbased storage systems through GC-aware cache management. IEEE Transactions on Parallel and Distributed Systems, 2017, 28(10): 2852–2865
https://doi.org/10.1109/TPDS.2017.2692757
57 CLi, DFeng, YHua, F Wang, C TJiang, WZhou. A log-aware synergized scheme for page-level FTL design. In: Proceedings of Design, Automation Test in Europe Conference Exhibition. 2017, 1080–1085
https://doi.org/10.23919/DATE.2017.7927150
58 FMargaglia, GYadgar, EYaakobi, Y Li, ASchuster, ABrinkmann. The devil is in the details: implementing flash page reuse with WOM codes. In: Proceedings of USENIX Conference on File and Storage Technologies. 2016, 95–109
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed