Lazy Exact Deduplication

作者:Ma, Jingwei; Stones, Rebecca J.; Ma, Yuxiang; Wang, Jingui; Ren, Junjie; Wang, Gang*; Liu, Xiaoguang*
来源:ACM Transactions on Storage, 2017, 13(2): 11.
DOI:10.1145/3078837

摘要

Deduplication aims to reduce duplicate data in storage systems by removing redundant copies of data blocks, which are compared to one another using fingerprints. However, repeated on-disk fingerprint lookups lead to high disk traffic, which results in a bottleneck. @@@ In this article, we propose a "lazy"data deduplication method, which buffers incoming fingerprints that are used to perform on-disk lookups in batches, with the aim of improving subsequent prefetching. In deduplication in general, prefetching is used to improve the cache hit rate by exploiting locality within the incoming fingerprint stream. For lazy deduplication, we design a buffering strategy that preserves locality in order to facilitate prefetching. Furthermore, as the proportion of deduplication time spent on I/O decreases, the proportion spent on fingerprint calculation and chunking increases. Thus, we also utilize parallel approaches (utilizing multiple CPU cores and a graphics processing unit) to further improve the overall performance. @@@ Experimental results indicate that the lazy method improves fingerprint identification performance by over 50% compared with an "eager"method with the same data layout. The GPU improves the hash calculation by a factor of 4.6 and multithreaded chunking by a factor of 4.16. Deduplication performance can be improved by over 45% on SSD and 80% on HDD in the last round on the real datasets.