Dynamic Direct Indirect Mapping for File System Performance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The performance degradation when using the network block services protocol to access a SCSI LUN contained in a UNIX-based container file system is caused by mapping overhead due to the need to fetch indirect metadata blocks, which is not necessary for all data block allocations.

Innovation Solution

Implementing a method to switch between direct and indirect mapping states for file access, allowing data block mapping without indirect blocks in the direct state for improved performance and switching to indirect mapping for flexible allocation when needed, using a file server that converts between these states based on client requests and file requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If indirect mapping is used for file system block allocation, then flexibility of block allocation is improved, but data access performance deteriorates due to mapping overhead from fetching indirect metadata blocks

Engineering Contradiction:
Improveflexibility of block allocationVSAvoiddata access performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements dynamic mapping state management that allows the file system to switch between direct and indirect mapping states based on operational requirements. The system transitions from a static mapping approach to a dynamic one where the mapping state can be changed during runtime, enabling optimal performance for different access patterns while maintaining allocation flexibility when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the mapping parameter state by introducing a convertible mapping mechanism. The file system can alter the mapping parameter from direct to indirect state and vice versa, allowing the system to adapt its block allocation strategy based on whether flexibility or performance is the current priority, thereby resolving the contradiction between these two opposing requirements.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If direct mapping is used for file access, then data access performance is improved by eliminating indirect block fetching, but flexibility of block allocation deteriorates

Engineering Contradiction:
Improvedata access performanceVSAvoidflexibility of block allocation
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal mapping system that can perform both direct and indirect mapping functions within the same file system infrastructure. The convertible mapping mechanism allows the system to serve multiple functions - high-performance direct access when needed and flexible allocation when required - making the file system adaptable to different operational contexts without requiring separate systems.

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

Solution Approach 2:

The system transitions from a static direct mapping approach to a dynamic convertible mapping approach. The mapping state can be changed during runtime based on operational requirements, allowing the system to maintain high performance for sequential access while preserving the ability to switch to flexible indirect mapping when allocation adaptability becomes necessary.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If UNIX file system allows data blocks to be allocated from any convenient location on disk, then sparse files and de-duplication are supported, but mapping overhead increases due to indirect block lookups

Engineering Contradiction:
Improvesupport for sparse files and de-duplicationVSAvoidmapping overhead time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies local quality by making the mapping approach location and context-dependent. Instead of using a uniform indirect mapping approach for all file operations, the system selectively applies direct mapping for performance-critical operations and indirect mapping for operations requiring flexibility. This localized optimization reduces mapping overhead time while preserving support for sparse files and de-duplication where needed.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses partial action by implementing direct mapping for the portion of file operations where performance is critical (sequential access, hot data) while maintaining indirect mapping capabilities for operations requiring flexibility (sparse file allocation, de-duplication). This partial application of direct mapping eliminates unnecessary overhead for performance-critical paths while preserving flexibility where required.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8903772B1Direct or indirect mapping policy for data blocks of a file in a file system
Publication Date: 2014.12.02 EMC IP HLDG CO LLC
  • US8903772B1 patent drawing
  • US8903772B1 patent drawing
  • US8903772B1 patent drawing

AI summary

A file is initially created to have metadata and a data block allocation for direct mapping without access to any indirect blocks. Therefore file access performance is increased because the direct mapping eliminates delay otherwise caused by fetching one or more indirect blocks. When needed, the functionality enabled by indirect mapping is provided by creating an indirect mapping for the file and then accessing the file using the indirect mapping. When the functionality enabled by the indirect mapping is no longer needed, the file is reorganized to a direct mapping and then accessed using the direct mapping. For example, a container file for a network attached SCSI LUN is created and accessed without a performance degradation until conversion to an indirect mapping occurs automatically and seamlessly upon activation of a supplementary storage service such as a file-based snapshot copy and replication facility.