Distributed Storage Unique Identifier Allocation via Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed fixed-content storage systems face challenges in ensuring unique identifiers for objects, particularly in large-scale environments where node and network failures are common, leading to potential identifier collisions and data integrity issues.

Innovation Solution

A distributed storage system allocates unique identifiers by partitioning a range of identifiers into subsets, using a linear feedback shift register for transformation, and employing a quorum-based allocation mechanism to ensure uniqueness, even in islanded environments.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a distributed storage system uses a large number of nodes to increase storage capacity, then the storage capacity and geographic distribution increase, but the probability that all nodes are functional decreases rapidly

Engineering Contradiction:
Improvestorage capacityVSAvoidprobability of all nodes being functional
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The system segments the identifier allocation process into multiple independent components: a global identifier space is divided into subsets, each managed by different nodes. This segmentation allows the system to maintain overall identifier uniqueness even when individual nodes fail, as each node independently manages its allocated subset without requiring all nodes to be operational.

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the system uses a probabilistic approach to allocate identifiers, then identifier allocation is simple, but object collisions increase especially as the number of objects grows

Engineering Contradiction:
Improveidentifier allocation simplicityVSAvoididentifier uniqueness
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The system performs preliminary action by pre-allocating specific subsets of the identifier space to individual nodes before they begin operating. Each node receives a predetermined range or subset of identifiers, ensuring that no two nodes will generate duplicate identifiers. This preliminary allocation eliminates the need for complex collision detection and resolution mechanisms while guaranteeing identifier uniqueness.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the system must guarantee unique identifiers across all nodes, then data integrity is maintained, but the complexity of the identifier allocation mechanism increases

Engineering Contradiction:
Improvedata integrityVSAvoididentifier allocation mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary component that manages the global identifier space and allocates subsets to individual nodes. This intermediary acts as a mediator between the global system requirements and individual node operations, simplifying the complexity by centralizing the coordination function while allowing nodes to operate independently within their allocated subsets.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If nodes operate in islanded environments due to network failures, then service continuity is maintained, but the risk of identifier collision increases

Engineering Contradiction:
Improveservice continuityVSAvoididentifier collision risk
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The identifier space is segmented into distinct subsets allocated to different nodes, allowing each node to operate independently in islanded environments without risking identifier collisions. Each node's isolated operation is confined to its allocated subset, ensuring uniqueness even when network connectivity is lost and nodes cannot communicate with the central coordinator.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS7590672B2Identification of fixed content objects in a distributed fixed content storage system
Publication Date: 2009.09.15 NETAPP INC
  • US7590672B2 patent drawing
  • US7590672B2 patent drawing
  • US7590672B2 patent drawing

AI summary

This disclosure describes identification of fixed content objects in a distributed fixed content storage system. Unique object identifiers are assigned in a distributed object storage system which consists of a plurality of storage media interconnected over networks subject to disruptions. The object identifier assignment prevents object identifier collisions in a distributed non-connected system regardless of the numbers of objects being stored and ensures continued operation of the object storage system in the presence of network disruptions without requiring unique identifiers for entities performing allocations. Embodiments may be used within any system where there is a need for globally unique identifiers, and the allocation of the globally unique identifiers needs to occur in the absence of network connectivity. The globally unique identifiers may be transformed for security purposes.