Cache Index Mapping for Memory-Efficient Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern storage systems face challenges in effectively controlling the size of caches while improving their use efficiency, particularly due to high memory consumption when large amounts of data are buffered, leading to inefficiencies in SSD-based cache solutions.

Innovation Solution

Implementing an index structure for caching that records index information of data in a memory-efficient manner, using a hash function to distribute data evenly and evicting cache entries based on access times to manage cache size and memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is buffered in cache to improve access efficiency, then data access speed is improved, but memory consumption increases significantly

Engineering Contradiction:
Improvedata access speedVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential index information (hash values and offsets) from the cached data, storing minimal metadata in the cache index structure rather than duplicating entire data blocks. This allows the system to track cached data with negligible memory overhead while maintaining fast access through direct offset calculation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of copying actual data blocks into the cache index, the patent uses hash-based index entries that reference original data locations. The index stores compressed representations (hash values and byte offsets) rather than full data copies, reducing memory consumption while preserving access capability.

Inventive Principle:
Principle #26Copying

2Productivity

If cache size is increased to improve data access efficiency, then cache hit rate is improved, but cost increases

Engineering Contradiction:
Improvecache hit rateVSAvoidcache size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent changes the fundamental parameters of cache storage by using hash-based indexing with compact offset storage instead of traditional block-based caching. This parameter transformation allows the same cache memory to accommodate exponentially more index entries, effectively increasing cache capacity without physical memory expansion.

Inventive Principle:
Principle #35Parameter changes

3Loss of time

If index information is stored for all cached data to enable efficient querying, then query efficiency is improved, but memory consumption increases

Engineering Contradiction:
Improvequery timeVSAvoidmemory consumption
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent segments the index structure into hash-based buckets that distribute index entries across memory space. Each bucket contains only relevant index entries for its hash range, enabling efficient localized queries without scanning the entire index. This segmentation reduces memory overhead by eliminating unnecessary index entries from each query operation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11113195B2Method, device and computer program product for cache-based index mapping and data access
Publication Date: 2021.09.07 EMC IP HLDG CO LLC
  • US11113195B2 patent drawing
  • US11113195B2 patent drawing
  • US11113195B2 patent drawing

AI summary

Embodiments for accessing data are provided. A method of accessing data comprises: receiving a request to access first data in a storage device, at least a part of data in the storage device being cached in a cache, and index information of the at least a part of data being recorded in an index structure associated with the cache; querying the index structure to determine whether the first data is cached in the cache; and accessing the first data based on a result of the query. Embodiments of the present disclosure can improve data accessing efficiency while saving memory consumption.