Mutual Exclusion Domains for Parallel File System Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In storage servers, the file system domain often experiences high processor utilization, leading to bottlenecks that limit throughput, as other domains like network and storage domains have lower utilization rates, resulting in inefficient processing of requests.
Innovation Solution
The creation of two mutually exclusive domains, FS-Exempt and FS-Main, where FS-Exempt allows multiple threads to execute processes in parallel for data access requests, and FS-Main processes are executed sequentially, with data logically divided into subsets called stripes to prevent concurrent operations on the same data, thereby spreading compute load across processors and reducing synchronization needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the file system domain uses a single sequential process to ensure data safety and consistency, then reliability is maintained, but processor utilization is low and throughput is limited
Solution Approach 1:
The file system domain is segmented into multiple mutual exclusion domains (MEX domains), each handling specific stripes of data. This segmentation allows parallel processing of different data portions while maintaining consistency within each domain, thereby increasing throughput without compromising reliability.
Solution Approach 2:
The patent introduces a new dimension of parallelism by creating multiple MEX domains that can execute processes simultaneously. Instead of a single sequential domain, the system now operates across multiple domains (e.g., MEX domain 0, MEX domain 1), enabling concurrent processing while maintaining data safety through domain-specific mutual exclusion.
2Productivity
If multiple processes are allowed to execute in parallel in the file system domain, then processor utilization increases, but data consistency and safety are compromised
Solution Approach 1:
The file system domain is divided into multiple MEX domains, each responsible for specific data stripes. This segmentation enables parallel execution of processes across different domains while maintaining data consistency within each domain through mutual exclusion mechanisms.
Solution Approach 2:
The patent introduces MEX domains as intermediary layers between the file system and the underlying storage. These domains act as mediators that manage access to data stripes, allowing parallel processing while ensuring data consistency through controlled access mechanisms.
3Productivity
If the file system domain is organized into a single pipeline stage, then simplicity is maintained, but it becomes a bottleneck limiting overall system throughput
Solution Approach 1:
The single file system domain is segmented into multiple MEX domains, each handling specific data stripes. This segmentation distributes the processing load across multiple domains, eliminating the bottleneck while maintaining relatively simple domain organization through systematic division.
Solution Approach 2:
The patent transforms the single-domain structure into a multi-dimensional domain organization where multiple MEX domains operate in parallel. This dimensional expansion increases throughput by utilizing multiple processing paths while organizing domains in a systematic manner that manages complexity.
Data Source
AI summary
Multiple domains are created for processes of a storage server. The processes are capable of execution on a plurality of processors in the storage server. The domains include a first domain, which includes multiple threads that can execute processes in the first domain in parallel, to service data access requests. A data set managed by the storage server is logically divided into multiple subsets, and each of the subsets is assigned to exactly one of the threads in the first domain, for processing of data access requests directed to the data set.


