Random Blob Generation Using Multi-Reader Offset Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Generating random blobs is processor-bound and significantly slower than network transmission, creating a bottleneck in scenarios like load testing object storage services, and existing methods are either expensive or limited to small loads.
Innovation Solution
Implementing a multi-reader random blob generation system that reuses random multi-reader blobs by randomly accessing sub-blobs at random offsets and refreshes data at random times, using a bit-ring structure and modulo arithmetic to ensure continuous data access without an end point, and employing a shared list with a mutual exclusion lock to manage concurrent access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If traditional random blob generation methods are used, then the system is simple to implement, but the generation speed is significantly slower than network transmission speed
Solution Approach 1:
The patent divides the random data generation task into multiple segments by using multiple reader components that each read from different offset positions in the random data sequence. This segmentation allows parallel processing of data generation, significantly improving the generation speed while maintaining manageable system complexity through modular design
Solution Approach 2:
The patent introduces a new dimension by using offset positions to access the random data sequence. Instead of generating data sequentially from a single position, multiple readers access the same random data stream at different offsets simultaneously, enabling parallel data generation and achieving speeds orders of magnitude faster than traditional methods
2Productivity
If existing random blob generation methods are used, then the implementation is simple, but the system cannot handle large loads efficiently
Solution Approach 1:
The patent creates a universal random data generation system where multiple reader components can concurrently access the same random data sequence at different offsets. This multi-functional design allows the system to handle various load scenarios (testing, validation, monitoring) simultaneously, greatly improving productivity for large loads while keeping the core mechanism relatively simple
Solution Approach 2:
The patent performs preliminary action by pre-generating a sequence of random data that can be accessed by multiple readers simultaneously. The random data is generated once and then distributed to multiple readers at different offsets, eliminating the need for each reader to generate data independently and significantly boosting the system's ability to handle large loads
3Productivity
If traditional single-reader random blob generation is used, then the system is easy to implement, but it creates a bottleneck in load testing scenarios
Solution Approach 1:
The patent merges multiple reader components that simultaneously access the random data sequence at different offsets. This combining of multiple data generation operations into a unified system eliminates the bottleneck of single-reader generation, greatly improving load testing efficiency while maintaining coherence through the shared random data sequence
Solution Approach 2:
The patent ensures continuity of useful action by maintaining a continuous random data sequence that multiple readers can access simultaneously at different offsets. This eliminates gaps and waiting periods between data generation operations, keeping the system continuously productive during load testing scenarios
Data Source
AI summary
A system can read, by a first reader component, a first sub-sequence of a sequence of random computer data starting at a first offset position of the sequence of random computer data. The system can read, by a second reader component, a second sub-sequence of the sequence of random computer data starting at a second offset position of the sequence of random computer data, wherein the first offset position differs from the second offset position. The system can store the first sub-sequence as a first binary large object. The system can store the second sub-sequence as a second binary large object.


