Distributed Storage Node Write Concurrency via Peer Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In distributed storage systems, the primary storage node often becomes a data writing bottleneck, leading to increased data interaction between nodes and reduced write performance due to the need for data consistency.

Innovation Solution

A method where storage nodes in a distributed system receive and store data strips directly from clients without a primary node, using records to indicate data arrival order and backup records across nodes to ensure data consistency and reliability, thereby reducing interaction and improving write performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a primary storage node is used to receive and distribute data strips to maintain data consistency, then data consistency is ensured, but write performance deteriorates due to the primary node becoming a bottleneck

Engineering Contradiction:
Improvedata consistencyVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the primary storage node from the system architecture, allowing all storage nodes to operate as peer nodes without a centralized coordinator. Each node independently receives data strips and generates ordering records, eliminating the bottleneck caused by a single primary node while maintaining data consistency through distributed ordering mechanisms.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Each storage node autonomously generates ordering records and determines data arrival sequences independently without relying on a primary node. Nodes self-manage their own data strip reception and ordering, enabling parallel processing and improving overall write performance while ensuring consistency through the ordering record mechanism.

Inventive Principle:
Principle #25Self-service

2Reliability

If a primary storage node coordinates data distribution to ensure consistency, then data consistency is maintained, but data interaction between nodes increases

Engineering Contradiction:
Improvedata consistencyVSAvoiddata interaction
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent removes the primary storage node that acted as a central coordinator for data interaction. By distributing the coordination function to all nodes, the system reduces unnecessary data interactions through the primary node while maintaining consistency through direct peer-to-peer ordering record generation and sharing.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If ordering records are generated and backed up across storage nodes to determine latest version data, then data consistency is ensured, but system complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses ordering records as simplified copies of data arrival information that can be easily generated, stored, and exchanged between nodes. These lightweight records contain only essential ordering information, reducing the complexity overhead compared to more sophisticated consistency mechanisms while ensuring correct latest version determination.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP3889752B1Data storage method and apparatus in distributed storage system, and computer program product
Publication Date: 2024.09.25 HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
  • EP3889752B1 patent drawingFigure 1
  • EP3889752B1 patent drawingFigure 2
  • EP3889752B1 patent drawingFigure 3~4

AI summary

The solution discloses a data storage method in a distributed storage system: A client generates data of a stripe and concurrently sends data of strips in the stripe to storage nodes corresponding to the strips, so that data interaction between the storage nodes is reduced, and write concurrency is improved; and the storage node receives the data of the strips sent by the client and records a sequence of data of strips corresponding to a same logical address, so that write performance of a distributed block storage system is improved and data consistency is ensured.