Transactional Metadata Update System for Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional approaches for processing metadata updates in storage systems require persisting bulk updates to non-volatile random access memory (NVRAM), leading to wasted NVRAM bandwidth, CPU resources, increased metadata commit latency, and inefficient use of NVRAM space, as they necessitate additional processing and waiting for write completion and scheduling cycles.

Innovation Solution

A method where delta updates are written to a non-volatile log, and bulk updates are written to mirrored metadata store positions, allowing for consistent transactional committing without an intermediate journal in NVRAM, thereby optimizing resource usage and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If bulk updates are persisted to NVRAM transactional areas, then updates can be recovered in case of failure, but NVRAM bandwidth is wasted and metadata commit latency increases

Engineering Contradiction:
Improveupdate recovery capabilityVSAvoidmetadata commit latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts bulk updates from the NVRAM transactional journaling path and directs them directly to the metadata store. By separating bulk updates from delta updates and eliminating the intermediate NVRAM journaling step for bulk updates, the system maintains recoverability through the transaction record while removing the latency bottleneck. This extraction resolves the contradiction by allowing fast direct writes to metadata store without sacrificing failure recovery capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a transaction record as an intermediary mechanism that tracks bulk updates without requiring them to be written to NVRAM. The transaction record serves as a mediator between the update operation and the metadata store, enabling the system to maintain consistency and recoverability information while allowing bulk updates to bypass the NVRAM journaling bottleneck entirely.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If bulk updates are processed through NVRAM journaling, then transactional consistency is maintained, but CPU resources and processing capacity are wasted

Engineering Contradiction:
Improvetransactional consistencyVSAvoidCPU processing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts bulk update processing from the CPU-intensive NVRAM journaling path and implements direct writes to the metadata store. By removing bulk updates from the transactional journaling process, the system maintains transactional consistency through the transaction record mechanism while eliminating unnecessary CPU processing and resource consumption associated with NVRAM journaling operations.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If large transactional areas in NVRAM are used for bulk updates, then update persistence is ensured, but expensive NVRAM space is wasted

Engineering Contradiction:
Improveupdate persistenceVSAvoidNVRAM space utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts bulk update persistence requirements from the NVRAM space constraint by implementing direct writes to the metadata store. The transaction record mechanism ensures persistence and recoverability without requiring allocation of expensive NVRAM space for transactional journaling of bulk updates, thereby resolving the contradiction between persistence assurance and space utilization.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11237771B1Transactional update system and method
Publication Date: 2022.02.01 EMC IP HLDG CO LLC
  • US11237771B1 patent drawing
  • US11237771B1 patent drawing
  • US11237771B1 patent drawing

AI summary

A method, computer program product, and computing system for receiving a plurality of updates to one or more metadata pages of a storage system, where the plurality of updates include one or more bulk updates and one or more delta updates. A transaction record may be defined. The delta updates may be written to a non-volatile log. The bulk updates may be written to a first metadata store position. The bulk updates may be written to a second metadata store position in response to writing the bulk updates to the first metadata store position. A status indicator for the transaction record may be set based upon, at least in part, writing the delta updates to the non-volatile log and one or more of writing the bulk updates to the first metadata store position and writing the bulk updates to the second metadata store position.