Selective Locking for Critical Sub-Operations in Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face interference and performance degradation when multiple instances perform operations simultaneously, leading to failed operations and invalid data states due to insufficient locking techniques that do not account for host device and storage system resources.
Innovation Solution
A method that identifies critical sub-operations in storage system operations, applies specific locks (such as snap locks, bus locks, and filespec locks) to provide exclusive access to one instance while denying access to others, and releases locks when no longer needed, allowing concurrent execution of non-critical sub-operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locking techniques are applied to prevent interference between simultaneous operations, then data integrity is improved, but operation latency and performance degradation occur
Solution Approach 1:
The patent segments operations into critical and non-critical sub-operations. Critical sub-operations (e.g., snapshot creation, metadata updates) acquire locks to ensure data integrity, while non-critical sub-operations (e.g., data transfer, I/O operations) execute concurrently without locks, reducing overall latency and avoiding performance degradation.
Solution Approach 2:
The patent applies locking selectively only to specific critical sub-operations rather than entire operations. This localized approach ensures data integrity where needed while allowing other parts of the system to operate concurrently, thereby minimizing the impact on overall system performance and reducing operation latency.
2Reliability
If operations are executed serially to ensure data integrity, then reliability is improved, but productivity and operational efficiency deteriorate
Solution Approach 1:
The patent divides operations into critical and non-critical sub-operations. Critical sub-operations execute serially with lock protection to ensure reliability, while non-critical sub-operations execute in parallel without locks, maintaining high productivity and operational efficiency without compromising data integrity.
Solution Approach 2:
The patent applies locking only partially to critical sub-operations rather than all operations. This selective locking approach provides sufficient protection for data integrity while allowing the majority of non-critical operations to proceed concurrently, thereby maintaining high operational efficiency and productivity.
3Reliability
If locks are applied to all sub-operations to prevent interference, then data integrity is improved, but device complexity and system overhead increase
Solution Approach 1:
The patent segments the locking mechanism to apply locks only to critical sub-operations. This reduces the complexity of the locking mechanism compared to locking all sub-operations, while still providing adequate data integrity protection where it is most needed.
Solution Approach 2:
The patent implements local quality by applying different locking strategies to different sub-operations. Critical sub-operations receive lock protection, while non-critical sub-operations do not, thereby reducing overall system complexity and overhead while maintaining data integrity.
4Productivity
If concurrent operations are allowed to improve productivity, then operational efficiency is improved, but harmful interference between operations occurs
Solution Approach 1:
The patent segments operations into critical and non-critical sub-operations. Non-critical sub-operations are allowed to execute concurrently to improve productivity, while critical sub-operations acquire locks to prevent harmful interference, thereby maintaining operational efficiency without compromising data integrity.
Solution Approach 2:
The patent applies protective locking locally only to critical sub-operations where interference would be harmful, while allowing non-critical sub-operations to proceed concurrently. This selective approach eliminates harmful interference where it matters most while preserving high operational efficiency.
Data Source
AI summary
A method, apparatus, and system of exclusive access during a critical sub-operation to enable simultaneous operations are disclosed. In one embodiment, a method of a host device includes identifying a critical sub-operation of an operation associated with a storage system, applying a lock associated with the critical sub-operation based on a type of the sub-operation, providing exclusive access of the critical sub-operation to a first instance requiring the critical sub-operation, denying other instances access to the critical sub-operation during an interval comprising a period when the first instance executes the critical sub-operation, and releasing the lock when the critical sub-operation is no longer required by the first instance. The first instance and the other instances may originate on different host devices.


