Metadata Block Cache Retention for Reference Count Contention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Access contention in active-active multi-node storage systems arises when multiple nodes access the same metadata block, leading to performance drops and increased latency due to invalidation of stale cache entries, degrading synchronous flows and bandwidth.

Innovation Solution

A method that retains existing copies of metadata blocks in cache memory systems across nodes, using shared-access locking to manage reference count updates and ensure consistency, while allowing operations that do not require a consistent reference count to proceed without invalidating cache entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional approaches invalidate cache memory entries on metadata block updates, then data consistency is maintained, but system performance and bandwidth deteriorate due to access contention

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the reference count update process from the metadata block content. Reference count updates are handled separately through delta container pages and reference count deltas, while the metadata block content remains cached. This segmentation allows consistency to be maintained for reference counts without forcing invalidation of the entire metadata block cache entries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces delta container pages as an intermediary structure between the metadata block and cache memory. These delta container pages store reference count changes (deltas) separately, allowing the system to track reference count updates without invalidating the cached metadata block content. This intermediary enables selective updates while maintaining cache efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cache memory entries are invalidated on every metadata block update, then stale data is prevented, but latency increases due to cache misses

Engineering Contradiction:
Improvedata freshnessVSAvoidaccess latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-establishing the delta container page structure and reference count delta mechanisms before updates occur. This allows the system to quickly apply reference count changes without needing to invalidate and re-fetch entire metadata blocks, reducing latency while maintaining data freshness through the delta application process.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If shared-access locking is used to manage reference count updates, then concurrent access is improved, but system complexity increases

Engineering Contradiction:
Improveconcurrent access throughputVSAvoidlocking mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by implementing locking mechanisms specifically for reference count delta operations rather than for the entire metadata block. The shared-access locking is localized to the delta container page and reference count delta structures, allowing other parts of the system to access cached metadata blocks without contention. This localized approach improves concurrent access while managing complexity through targeted rather than universal locking.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11467963B2System and method for reducing reference count update contention in metadata blocks
Publication Date: 2022.10.11 EMC IP HLDG CO LLC
  • US11467963B2 patent drawing
  • US11467963B2 patent drawing
  • US11467963B2 patent drawing

AI summary

A method, computer program product, and computing system for receiving, at a node of a multi-node storage system, one or more updates to a reference count associated with a metadata block. One or more reference count deltas associated with the metadata block may be stored in a cache memory system of the node. An existing copy of the metadata block in a cache memory system of each other node of the multi-node storage system may be retained.