Unified Cache Metadata Leaf Objects Mixed Pointer Types

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in cache management, particularly in handling read cache misses, which lead to performance penalties due to the traversal of metadata pages and increased CPU usage, and are not optimized for sequential reads or deduplication, resulting in duplicate content and high maintenance overhead.

Innovation Solution

A unified cache system that uses a page-based cache to store metadata leaf objects with multiple pointer types, allowing on-demand updating of pointers and supporting deduplication, thereby improving cache efficiency and reducing I/O latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional cache management with separate metadata caches is used, then cache structure is simple, but cache efficiency is low due to frequent read cache misses and traversal of metadata pages

Engineering Contradiction:
Improvecache efficiencyVSAvoidcache structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines the data cache and metadata cache into a single unified cache structure. This merging eliminates the need for separate cache management for data and metadata, reducing the number of cache misses and avoiding the need to traverse multiple metadata pages when handling read operations, thereby improving cache efficiency while maintaining a manageable unified structure.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The unified cache is designed to serve multiple functions: it stores both data blocks and metadata information, and can handle both data caching and metadata caching operations within the same structure. This multi-functionality allows the cache to improve overall system performance by addressing both data and metadata access patterns simultaneously, rather than requiring separate specialized caches.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Use of energy by moving object

If traditional cache management is used, then CPU usage is low for simple operations, but CPU usage increases due to traversal of metadata pages and handling of read cache misses

Engineering Contradiction:
ImproveCPU usageVSAvoidtime for handling cache misses
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The unified cache pre-loads and caches metadata information along with data blocks, so that when a read operation occurs, the metadata is already available in the cache without requiring additional traversal operations. This preliminary action of caching metadata proactively reduces the CPU workload and time required to handle read cache misses, as the system doesn't need to perform metadata page traversals at the time of data access.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If sequential reads are not optimized, then cache structure is simple, but I/O performance is poor due to repeated cache misses and metadata traversals

Engineering Contradiction:
ImproveI/O performanceVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The unified cache maintains continuous caching of both data and metadata, ensuring that sequential read operations can proceed without interruption from cache misses or metadata traversals. By keeping both data and its associated metadata continuously available in the unified cache structure, the system achieves sustained high I/O performance for sequential reads without requiring complex external cache management mechanisms.

Inventive Principle:
Principle #20Continuity of useful action

4Productivity

If deduplication is not implemented, then storage capacity is maximized, but cache efficiency is reduced due to duplicate content occupying cache space

Engineering Contradiction:
Improvecache efficiencyVSAvoidstorage capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The unified cache implements deduplication by identifying and eliminating duplicate content across the cached data and metadata. When duplicate content is detected, the system discards redundant copies and retains only unique data, thereby freeing up cache space for storing additional unique content. This improves cache efficiency by ensuring that cache resources are utilized for storing diverse, non-redundant information rather than duplicate copies.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS12164770B2Caching techniques using a unified cache of metadata leaf objects with mixed pointer types and lazy content resolution
Publication Date: 2024.12.10 DELL PROD LP
  • US12164770B2 patent drawing
  • US12164770B2 patent drawing
  • US12164770B2 patent drawing

AI summary

Techniques for processing a read I/O operation directed to a logical address LA1 can include: determining a logical address range R1 including LA1; determining whether a unified cache includes a cached object corresponding to R1; and responsive to determining that the unified cache does not include a cached object corresponding to R1, determining a unified cache miss with respect to R1 and performing unified cache miss processing including: traversing metadata pages, including a metadata leaf page, corresponding to LA1; storing indirect pointers from entries of the metadata leaf page to corresponding entries of a new metadata leaf object of the unified cache corresponding to R1; performing processing using an indirect pointer of an entry of the new metadata leaf object, where the entry corresponds to LA1 and the processing includes retrieving the content of LA1 using the indirect pointer; and returning the content in response to the read I/O operation.