Deduplicated SSD Cache via Fingerprint Indexing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional storage architectures face challenges in balancing cost, performance, and capacity, particularly in building a tiered infrastructure for Protection Integrated Primary (PIP) storage systems, where SSDs offer high performance but high cost and limited write cycles, and disk storage provides lower performance but higher capacity, necessitating an efficient deduplication and compression strategy.
Innovation Solution
A deduplicated and compressed storage device system that utilizes a fingerprint index and file index to identify and store cached data efficiently, employing a write-evict unit (WEU) to extend SSD lifespan and maintain a balanced tiered infrastructure, with mechanisms for efficient insertion and eviction to manage cache memory effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If SSD is used for cache storage, then performance (IOPS) is improved, but cost and limited write cycles are worsened
Solution Approach 1:
The patent segments data into fixed-size chunks and uses fingerprint-based deduplication to identify and eliminate duplicate chunks. This segmentation approach allows the system to store only unique data portions in the SSD cache, significantly reducing write operations and extending SSD lifespan while maintaining high read performance.
Solution Approach 2:
The patent changes the parameter of data representation by computing fingerprints (hash values) of data chunks. Instead of storing actual data content, the system stores fingerprint indices that map to cached chunks. This parameter transformation enables efficient deduplication and reduces the amount of data written to SSD, thereby preserving write cycles.
2Productivity
If SSD is used for cache storage, then performance is improved, but storage cost is worsened
Solution Approach 1:
The patent transforms data from its original form into fingerprint representations (hash values). By storing only the fingerprint index rather than the actual data content in the SSD cache, the system dramatically reduces storage requirements. The actual data chunks are stored in cheaper disk storage, creating a cost-effective tiered architecture that maintains high performance for frequently accessed data.
Solution Approach 2:
The patent creates a virtual copy mechanism where the fingerprint index serves as a reference to the actual data chunk stored elsewhere. When data is accessed, the system retrieves the chunk from disk storage using the fingerprint as a key, then caches it temporarily. This copying strategy allows the expensive SSD to store only metadata (fingerprints) rather than full data copies, reducing storage costs while maintaining performance.
3Quantity of substance
If deduplication is implemented, then cache capacity is improved, but system complexity is worsened
Solution Approach 1:
The patent divides data into fixed-size chunks and assigns each chunk a fingerprint identifier. This segmentation simplifies the deduplication process by creating uniform, manageable units that can be easily indexed and compared. The fixed-size approach avoids the complexity of variable-length chunking while still achieving effective deduplication through fingerprint matching.
Solution Approach 2:
The patent replaces complex content-based deduplication (which would require comparing actual data content) with a simpler fingerprint-based approach. By using hash functions to generate fingerprints, the system substitutes expensive, complex data comparison operations with fast, simple fingerprint matching. This mechanical substitution dramatically reduces computational complexity while maintaining deduplication effectiveness.
Data Source
AI summary
A computer-implemented method for caching content in a cache memory device is disclosed. The method starts with receiving a request for accessing a first data block associated with a first file, and a file manager provides access of the first data block in a persistent storage device of a storage system. The file manager then caches the first data block in a cache memory device including deduplicating the first data block, wherein at least some of data blocks stored in the cache memory device are deduplicated data blocks, and wherein at least one of the data blocks is referenced by different regions of an identical file or different files.


