Deterministic M83 Filename Generation via Hash Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional file systems face inefficiencies in processing and resource usage when generating short filenames across different naming protocols, particularly in large directories, due to collision checking and resource-intensive operations.

Innovation Solution

A naming scheme that utilizes a unique numeric identifier associated with a particular naming protocol to generate short filenames, eliminating the need for collision checking and resource usage by leveraging an existing unique identifier for deterministic name generation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional collision checking is performed to generate unique M83 filenames, then filename uniqueness is ensured, but processing time and computational resources increase significantly

Engineering Contradiction:
Improvefilename uniquenessVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing the mapping between long filenames and their corresponding M83 filenames in a hash table during file creation. This allows the system to avoid collision checking during filename generation, as the unique M83 filename is determined directly from the pre-stored mapping, resolving the contradiction between ensuring uniqueness and reducing processing time

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses copying by creating a deterministic copy of the long filename through a hash function that always produces the same M83 filename for a given long filename. This deterministic copying eliminates the need for collision checking while ensuring uniqueness, as the same input always yields the same unique output

Inventive Principle:
Principle #26Copying

2Reliability

If conventional collision checking is performed to generate unique M83 filenames, then filename uniqueness is ensured, but computational resource consumption increases

Engineering Contradiction:
Improvefilename uniquenessVSAvoidprocessor resources
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing the mapping between long filenames and their corresponding M83 filenames in a hash table during file creation. This allows the system to avoid collision checking during filename generation, as the unique M83 filename is determined directly from the pre-stored mapping, resolving the contradiction between ensuring uniqueness and reducing processor resource consumption

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces the mechanical collision checking process with a deterministic hash function that directly computes the M83 filename from the long filename. This substitution eliminates the need for iterative collision detection and resolution, significantly reducing computational resource consumption while maintaining filename uniqueness

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If M83 filenames are stored in the directory, then filename compatibility is achieved, but disk space is consumed that could be used for file contents

Engineering Contradiction:
Improvefilename compatibilityVSAvoiddisk space
Core Design Contradiction:
Adaptability or versatilityVSVolume of stationary object

Solution Approach 1:

The patent extracts the M83 filename from the directory entry storage and computes it on-demand from the long filename using a deterministic hash function. This extraction eliminates the need to store M83 filenames in the directory, freeing up disk space for file contents while maintaining filename compatibility through deterministic computation

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying by creating a deterministic copy of the long filename through a hash function that produces the M83 filename only when needed. This on-demand copying eliminates the need to store M83 filenames permanently in the directory, reducing disk space consumption while maintaining adaptability across different naming protocols

Inventive Principle:
Principle #26Copying

4Reliability

If directory searching is performed to check for filename collisions, then filename uniqueness is ensured, but the operation becomes unwieldy and resource-intensive in large directories

Engineering Contradiction:
Improvefilename uniquenessVSAvoidsearch operation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing the mapping between long filenames and their corresponding M83 filenames in a hash table during file creation. This allows the system to avoid collision checking during filename generation, as the unique M83 filename is determined directly from the pre-stored mapping, resolving the contradiction between ensuring uniqueness and reducing search operation complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent replaces the mechanical directory searching process with a deterministic hash function that directly computes the M83 filename from the long filename. This substitution eliminates the need for iterative collision detection and resolution through directory searching, significantly reducing operational complexity while maintaining filename uniqueness

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9176972B1Implied M83 names in alternate name generation in directories supporting multiple naming protocols
Publication Date: 2015.11.03 EMC IP HLDG CO LLC
  • US9176972B1 patent drawing
  • US9176972B1 patent drawing
  • US9176972B1 patent drawing

AI summary

An improved technique involves providing a naming scheme that uses a unique numeric identifier associated with a particular naming protocol. Along these lines, when a storage processor receives a first name of a file that conforms to a first naming protocol, the storage processor places the first name and an inode number corresponding to the file in a directory entry. The storage processor associates this entry with a unique numeric identifier by which the entry can be located within the directory. Based on this unique identifier, the storage processor is configured to generate the second name that conforms to the second naming protocol.