Lockless Read Servicing with Write Indicators for Data Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional multi-node active/active data storage systems face inefficiencies due to the use of locks to manage concurrent access to storage locations, leading to resource utilization and overhead issues.
Innovation Solution
Storage processing circuitry creates write indicators for designated storage locations during read requests, buffering data, and checks these indicators to ensure data integrity without obtaining locks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locks are used to manage concurrent access to storage locations, then data coherency is maintained, but resource utilization and overhead increase
Solution Approach 1:
The patent extracts the locking mechanism from the data access protocol and replaces it with a lockless approach using version indicators. Read operations no longer require acquiring locks on storage locations,而是 use version numbers to detect write operations. This removes the overhead of lock management while maintaining data coherency through version checking.
Solution Approach 2:
The patent introduces version indicators as an intermediary mechanism between read and write operations. Instead of direct lock-based coordination, version numbers serve as mediators that allow read operations to detect write operations without blocking. The version indicator acts as a signaling mechanism that enables concurrent access while maintaining data integrity.
2Reliability
If locks are obtained for read operations, then data integrity is ensured, but processing latency increases
Solution Approach 1:
The patent applies preliminary action by pre-incrementing version indicators during write operations before the actual data write completes. This allows read operations to check the version indicator in advance and detect write operations without waiting for lock acquisition. The version check is performed preliminarily, enabling read operations to proceed without blocking latency.
Solution Approach 2:
The patent enables read operations to skip the lock acquisition step entirely and rush through to data retrieval by using version indicator checking. Instead of following the traditional path of acquiring locks before reading, the lockless approach allows reads to proceed directly to the storage location and use version numbers to verify data freshness, significantly reducing processing latency.
3Adaptability or versatility
If multi-node active/active configuration is used, then system availability is improved, but access conflict management becomes more complex
Solution Approach 1:
The patent segments the access conflict management into independent version indicators for each storage location. Instead of using centralized lock management that coordinates all nodes, each storage location has its own version indicator that nodes can check independently. This segmentation allows multi-node active/active operation without complex inter-node coordination for conflict management.
Solution Approach 2:
The patent implements self-service by enabling each node to independently manage its own read operations using local version indicator checks. Nodes do not need to coordinate with other nodes through lock protocols; instead, each node services its own read requests by checking version indicators at storage locations, simplifying access conflict management in multi-node configurations.
Data Source
AI summary
A technique is directed to servicing a read request. The technique includes establishing a set of write indicators corresponding to a set of storage locations designated by the read request. The technique further includes, while the set of write indicators is accessible to a possible write operation that designates the set of storage locations to be written to, buffering data from the set of storage locations. The technique further includes, after buffering the data from the set of storage locations, checking the set of write indicators to ascertain whether the set of storage locations has been designated to be written to since establishing the set of write indicators.


