Font Size: a A A

Research On Key Techniques Of Constructing And Improving Flash-based Array

Posted on:2016-06-02Degree:DoctorType:Dissertation
Country:ChinaCandidate:Y M DuFull Text:PDF
GTID:1108330509461066Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
While big data era brings in increasingly higher demands on storage systems’ capacity, performance, power and reliability, the performance gap between disk-based storage systems and computing systems in current computer architecture becomes increasingly larger. As flash memories have low latency, low power and good shock resistance, constructing array based on them provides an opportunity to increase storage capacity, alleviate performance bottleneck and enhance storage reliability. Although both flash memories and flash-based SSDs(Solid State Drives) appear with different organization, media access methods etc. and other characteristics from disks, most existing techniques on array construction come directly from disk-based storage without fully considering flash memories’ traits, which hardly takes advantage of flash memories or handle their problems. Thus, this dissertation does researches on key techniques of constructing and improving flash-based array. Firstly, it investigates the parallelism inside SSD. Secondly, it works on constructing and improving flash array based on SSDs. The main contributions of this dissertation are as follows:1) Proposing dual-page accessing mode, extending the exploration of internal parallelism of SSDsSSDs that consist of a bunch of flash chips naturally have rich internal parallelism, which is one of the most important facts that contribute to their high performance. Constructing flash array based on flash chips and exploiting this parallelism is a main method to promote SSDs’ performance. Many previous studies make use of the parallelism from various perspectives such as SSD organization, data layout scheduler etc. However, internal parallelism of SSDs has been limited to plane level so far. This dissertation extends the parallelism beyond plane level, exploring the parallelism among pages within a block. It proposes dual-page mode that can access two pages simultaneously. Experimental results demonstrate that SSDs with dual-page mode can reduce the average response time of I/O by up to 38% compared with the ones without supporting dual-page mode.2) Proposing a constrained dynamic striping method in redundant array of independent SSDsSSD lacks the ability to update pages in-place. Random writes in traditional paritybased RAID based on SSD that has static striping result in significantly more writes, degraded performance, and shortened SSD lifetime. By dynamically forming full stripes, log-based design originally proposed in HDD RAID can mitigate the problem of frequent parity updates caused by random writes. However, it needs a directory to record locations for all data blocks, resulting in large space overhead and consequently sacrificing addressing efficiency. In this dissertation, we propose a constrained dynamic striping method, grouping requests that are from different SSD drives and places their corresponding unnecessarily consecutive logical blocks in one stripe. It reduces the number of parity updates, meanwhile remains the same addressing efficiency as static striping. Our experimental results show that, for random write dominated workloads, CDRAIS achieves 65% average response time improvement and 31% longer SSD lifespan over traditional RAID based on SSDs.3) Proposing content aware redundancy management for SSD-based RAID SystemsIn current flash storage systems, deduplication schemes are used to improve write performance and SSD lifetime while SSD-based RAID designs are adopted to improve reliability and read performance. These seemingly contradictory schemes co-exist in a system, leading to duplicated management and even impacting each other. In this dissertation, we propose R-Dedup, a content-aware redundancy management scheme for SSD-based RAID storage. By combining deduplication with replication, R-Dedup evaluates system performance, reliability, endurance and space utilization, and dynamically manages replicas to achieve better tradeoff. Our experimental results show that R-Dedup achieves 18% and 20% improvements on read and write performance, respectively, and extends SSD lifetime by 20% with no reliability compromise.4) Proposing a cross-SSD wear-leveling strategy in SSD-based RAID systemsFlash memory has limited erasure/program cycles. Hence, to meet their advertised capacity all the time, flash-based solid state drives(SSDs) must prolong their life span through a wear-leveling mechanism. However, there is no wear leveling among SSDs in SSD-based RAID systems, making some SSDs wear out faster than others, seriously impairing both system reliability and lifespan. We therefore propose cross-SSD wear leveling to enhance the endurance of entire SSD-based RAID systems. We introduce an age-driven dynamic parity distribution scheme to guarantee wear leveling among flash SSDs and thereby prolong the endurance of RAID systems. Furthermore, age-driven parity distribution benefits performance by maintaining better load balance. With insignificant overhead, adopting cross-SSD weal-leveling strategy can achieve good wear leveling among SSDs, which prolongs the lifespan of the entire system. Meanwhile, wearleveling among SSDs has good effects on balancing loads, thus drops the average response time by 10% to 15% over traditional SSD-based RAID without cross-SSD wealleveling.
Keywords/Search Tags:flash array, SSD, parallelism, RAID, striping, replication, deduplication, weal-leveling
PDF Full Text Request
Related items