Scale-Out File Systems with Cluster-Level VDL Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face vulnerabilities due to lingering exposure of sensitive data after deletion, particularly in multi-tenant scenarios, and current VDL management imposes network traffic burdens, especially in distributed storage systems.

Innovation Solution

Implementing VDL controls on a per-cluster basis at edge data volume nodes, with centralized sequence controls and indicators, eliminating the need for synchronization at a master node, thereby reducing network traffic and maintaining data access control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If comprehensive initialization of storage clusters is performed during deallocation and reallocation, then data security is improved by preventing access to deleted data, but system performance deteriorates due to computational expense and reduced responsiveness

Engineering Contradiction:
Improvedata securityVSAvoidsystem responsiveness
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by setting VDL indicators to an initialized state when storage clusters are deallocated, and updates sequence controls before reallocation occurs. This prevents lingering data exposure without requiring comprehensive initialization during the reallocation process itself, thus maintaining security while preserving system responsiveness.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If per-file VDL controls are managed from a centralized node, then data access control is maintained, but network bandwidth is consumed due to the burden of processing client requests through the centralized node

Engineering Contradiction:
Improvedata access controlVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system segments VDL management by implementing per-cluster VDL indicators at edge data volume nodes rather than centralized per-file VDL management. This distributes the management burden across multiple nodes, reducing network traffic to the master node while maintaining data access control through localized validation at edge nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from a centralized management dimension to a distributed edge-based dimension by implementing VDL indicators at data volume nodes. This dimensional shift allows client requests to be processed locally at the edge without requiring constant communication with the centralized master node, thereby reducing network bandwidth consumption while maintaining control.

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

3Loss of energy

If per-cluster VDL indicators are implemented at edge data volume nodes without master node synchronization, then network traffic is reduced, but system complexity increases due to distributed state management

Engineering Contradiction:
Improvenetwork traffic reductionVSAvoiddistributed state management
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms where edge data volume nodes update sequence controls and VDL indicators locally, and the master node receives notifications of allocation changes. This feedback loop maintains consistency across the distributed system without requiring continuous synchronization, reducing network traffic while managing complexity through event-driven updates.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP4290357B1Scale out file system using refs and scale out volume
Publication Date: 2025.09.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP4290357B1 patent drawingFigure 1
  • EP4290357B1 patent drawingFigure 2
  • EP4290357B1 patent drawingFigure 3

AI summary

A client computing system configured to communicate with one or more data volume nodes and a master metadata volume node in a distributed storage system that includes one or more files stored on storage clusters of the one or more data volume nodes and that are centrally and remotely managed by the master metadata volume node, the client computing system comprising: at least one processor; and at least one computer-readable storage media having stored computer-executable instructions that are executable by the at least one processor to cause the client computing system to: provide a file access request to a master metadata volume node for access to a file; receive, in response to the file access request, an identification of one or more different storage clusters allocated to the file by the master metadata volume node, and which correspond with the file access request, along with one or more sequence numbers that are associated with the one or more different storage clusters, each of the one or more different storage clusters being associated with a corresponding sequence number; send a data access request to a particular data volume node containing at least a first storage cluster of the one or more different storage clusters along with the corresponding associated sequence number(s); and either, (1) receive an indication of the data access request being granted by the particular data volume node, or (2) receive an indication from the particular data volume node that the data access request is denied in response to at least a first of the corresponding sequence number(s) failing to be associated with a corresponding one of the at least the first storage cluster and/or in response to a VDL (valid data length) indicator indicating data has not yet been written to the one or more storage clusters by the file; wherein the computer-executable instructions are further executable to cause the client computing system to: obtain updated sequence number(s) from the master metadata node in response to receiving the indication from the particular data volume node that the file access request is denied; and provide the updated sequence number(s) to the data volume node with a new file access request and which causes the new file access request to be granted.