File System Reorder Maps for Memory Data Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory sub-systems face challenges in preserving the order of application data due to out-of-order processing of write commands by memory sub-system controllers, leading to data corruption and increased complexity and overhead in reordering data within applications.

Innovation Solution

The file system is configured to generate and utilize reorder maps based on block allocation metadata to reorder data blocks retrieved from memory devices, allowing applications to directly access correctly ordered data by caching reordered data, thereby reducing resource requirements and latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory sub-system controllers process write commands in parallel for improved throughput, then productivity is improved, but data order preservation deteriorates leading to out-of-order data blocks

Engineering Contradiction:
Improvewrite command throughputVSAvoiddata block order
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The file system performs preliminary actions by generating reorder maps before data retrieval operations. These reorder maps predict the out-of-order placement of data blocks based on parallel write command processing patterns, enabling the system to pre-calculate the necessary reordering operations rather than reacting to disordered data after retrieval

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The reorder map serves as an intermediary data structure between the parallel write processing mechanism and the data retrieval operation. It translates the complex out-of-order placement patterns into a manageable reordering guide, mediating between the high-throughput parallel processing and the requirement for ordered data access

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If applications implement data reordering logic to preserve data order, then data order is improved, but device complexity and resource overhead increase

Engineering Contradiction:
Improvedata block orderVSAvoidapplication reordering logic
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The invention extracts the data reordering logic from the application layer and relocates it to the file system layer. By taking out the complex reordering algorithms from applications and implementing them in the file system using reorder maps, the solution reduces application complexity while maintaining data order preservation capabilities

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The file system creates a copy of the write command metadata in the form of reorder maps. These maps are generated by copying and processing metadata information about write command execution order, creating a simplified representation that guides data reordering without requiring complex logic in applications

Inventive Principle:
Principle #26Copying

3Stability of the object's composition

If applications repeatedly access memory devices to retrieve ordered data, then data order is ensured, but access time and latency increase

Engineering Contradiction:
Improvedata block orderVSAvoiddata access latency
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The file system performs preliminary data reordering operations by using the reorder map to rearrange data blocks into the correct sequence before returning them to the application. This preliminary action ensures data is delivered in the correct order in a single access operation, eliminating the need for repeated memory device accesses and reducing latency

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11816358B2Preserving application data order in memory devices
Publication Date: 2023.11.14 MICRON TECHNOLOGY INC
  • US11816358B2 patent drawing
  • US11816358B2 patent drawing
  • US11816358B2 patent drawing

AI summary

A system and method for reordering data blocks received from a zone of a memory device. An example method includes sending, by a host system to a memory sub-system comprising a memory device, a plurality of write commands; receiving, by the host system from the memory sub-system, block allocation metadata, wherein the block allocation metadata references one or more locations in the memory device corresponding to a zone; generating, by the host system, a reorder map based on the block allocation metadata; reading a plurality of data blocks associated with the zone; and reordering, by the host system, the plurality of data blocks based on the reorder map.