N-Level Directory Tree File Load Balancing via CRC Hashing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Virtual tape storage systems face inefficiencies in data retrieval due to the large number of files and directories, leading to time-consuming searches for specific data files as the system grows, as existing methods require exhaustive searches through numerous directories or files.

Innovation Solution

Implementing a data storage system that uses a cyclic redundancy check (CRC) algorithm to convert virtual tape identifiers into a two-byte value, allowing for efficient directory allocation and retrieval by distributing virtual tapes across a balanced n-level directory tree, minimizing the number of directories searched.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If all virtual tapes are stored in a single directory, then the file system structure is simple, but data retrieval time increases significantly as the number of virtual tapes grows

Engineering Contradiction:
Improvefile system structureVSAvoiddata retrieval time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent divides the single directory into multiple subdirectories organized in a tree structure, where each subdirectory contains a manageable number of virtual tape files. This segmentation allows the system to maintain structural simplicity while enabling efficient retrieval by limiting the search space to specific subdirectories based on file identifiers.

Inventive Principle:
Principle #1Segmentation

2Loss of time

If each virtual tape is stored in a unique directory, then data retrieval is faster, but the system complexity and number of directories become unmanageable

Engineering Contradiction:
Improvedata retrieval timeVSAvoidnumber of directories
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent introduces a hierarchical dimension to the directory structure, organizing virtual tapes in a multi-level tree rather than flat or one-to-one mapping. This dimensional change allows efficient retrieval through path-based navigation while keeping the total number of directories manageable through shared parent directories and balanced tree depth.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Quantity of substance

If the virtual tape storage system capacity increases to replace more physical tapes, then storage capability improves, but the time to locate and retrieve specific data files increases

Engineering Contradiction:
Improvestorage capacityVSAvoidfile location time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent performs preliminary organization of virtual tape files into the hierarchical directory structure during the storage phase, using file identifiers to determine appropriate subdirectory placement. This preliminary action ensures that retrieval operations can directly navigate to the correct subdirectory without performing exhaustive searches across the entire storage system, even as capacity scales to millions of virtual tapes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9176967B2File load balancing in an N-level directory tree of a data storage system
Publication Date: 2015.11.03 ORACLE INT CORP
  • US9176967B2 patent drawing
  • US9176967B2 patent drawing
  • US9176967B2 patent drawing

AI summary

Implementations of the present disclosure involve a system and/or method for storing one or more data files in an n-level directory tree of a data storage system. In general, the system and/or method computes an n-byte value from a data file name which is used to create a directory path in the data storage system, where parts of the n-byte value are used to form each directory name in the directory path. Storage and retrieval of a data file is performed by storing in or retrieving data files from the computed directory. In one embodiment, the calculated n-byte value is obtained by computing the value with a cyclic redundancy check (CRC) algorithm. Use of the CRC algorithm to compute the directory path provides a balanced set of directories and number of data files that is repeatable such that location and retrieval of the data file is accomplished without the need to search through each directory of the system.