Distributed Request Processing via Segmented Data Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In systems where data is constantly updated and accessed simultaneously, using locks to serialize reading and writing becomes inefficient due to high volumes of requests, leading to potential data inconsistency and bottlenecks.
Innovation Solution
Implementing a distributed computing environment where data is stored across multiple locations, with each location maintaining a local version that is periodically updated from a centralized version, reducing competition for data and allowing for efficient handling of requests without a single point of contention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If locks are used to serialize reading and writing of data, then data consistency is maintained, but system efficiency and productivity deteriorate due to high volumes of concurrent requests
Solution Approach 1:
The patent segments the centralized data into multiple distributed copies stored across different locations. Each location maintains a local version of the data that can be accessed independently, eliminating the need for a single lock to protect all data operations. This segmentation allows concurrent read and write operations at different locations without compromising data consistency.
Solution Approach 2:
The patent introduces a data version identifier as an intermediary mechanism to coordinate access to distributed data copies. Instead of using locks to directly control data access, the system uses version identifiers to mediate between readers and writers, allowing efficient concurrent access while maintaining consistency through version tracking.
2Reliability
If a single lock protects constantly updated and accessed data, then data consistency is ensured, but system scalability and ease of operation worsen due to bottlenecks
Solution Approach 1:
The patent divides the single centralized data storage into multiple distributed data locations, each with its own local data copy. This segmentation eliminates the single point of contention (the single lock) and allows the system to scale by adding more data locations without increasing bottleneck complexity.
Solution Approach 2:
The patent transitions from a single-dimensional centralized data model to a multi-dimensional distributed data model. By adding the dimension of spatial distribution across multiple locations, the system achieves better scalability and operational flexibility while maintaining data consistency through version control mechanisms.
3Reliability
If data is stored in a single centralized location with lock protection, then data consistency is maintained, but access speed and productivity deteriorate due to waiting times
Solution Approach 1:
The patent segments centralized data storage into multiple distributed data locations that can serve requests simultaneously. This eliminates the queuing effect inherent in single-location storage with locks, as multiple locations can process read and write operations in parallel, significantly improving data access speed.
Solution Approach 2:
The patent combines multiple data locations and their local data copies into a unified distributed data system. This merging of resources allows the system to handle high volumes of concurrent requests efficiently while maintaining data consistency through coordinated version management across the distributed locations.
Data Source
AI summary
Processing a request is disclosed. A request associated with a first identifier is received. A selected request handler is selected among a first plurality of request handlers to process the request. The selection of the selected request handler is based at least in part on the first identifier. The request is processed using a second identifier included in the request. Processing the request includes using a local version of a data associated with the second identifier and stored in a storage managed by the selected request handler. The local version of the data has been updated using a centralized version of the data. The centralized version of the data has been determined using processing performed by a second plurality of request handlers. The selected request handler is included in the second plurality of request handlers.


