Concurrent Data Retrieval Using Ongoing Task Position
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing methods for high-concurrency services face significant delays due to the need to restart data reading from the beginning for each retrieval task, even if subsequent tasks can overlap with ongoing tasks, leading to inefficiencies and increased waiting times.
Innovation Solution
A method where the data reading location of an ongoing retrieval task is used to determine the start location for new retrieval tasks, allowing concurrent tasks to read data without waiting for the completion of the initial task, thereby improving efficiency and reducing service processing delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If data reading is restarted from the beginning for each retrieval task, then data reading accuracy is ensured, but service processing delay increases
Solution Approach 1:
The system performs preliminary actions by pre-reading data into a buffer before retrieval tasks are executed. When a retrieval task arrives, the data is already available in the buffer, eliminating the need to restart reading from the beginning. This preliminary data preparation resolves the contradiction by ensuring both data reading accuracy (through complete buffer population) and reduced service processing delay (through immediate data availability).
Solution Approach 2:
The system dynamically adjusts the data reading process by allowing concurrent retrieval tasks to share the same buffer without requiring sequential execution. Multiple tasks can simultaneously access the buffer, and the system dynamically manages buffer allocation and task scheduling. This dynamic approach maintains data reading accuracy while significantly reducing service processing delay through parallelism.
2Measurement precision
If data reading is performed sequentially for each retrieval task, then data processing accuracy is maintained, but concurrent service efficiency deteriorates
Solution Approach 1:
The system merges multiple retrieval tasks by allowing them to share a common data buffer. Instead of allocating separate buffers for each task, the same buffer is shared across concurrent tasks. This merging approach maintains data processing accuracy (through consistent data sources) while dramatically improving concurrent service efficiency (through resource sharing and parallel execution).
Solution Approach 2:
The data buffer is designed with universal functionality to serve multiple retrieval tasks simultaneously. The buffer can be accessed by any number of concurrent tasks, making it a multi-functional resource. This universality resolves the contradiction by enabling both accurate data processing (through standardized buffer access protocols) and high concurrent service efficiency (through shared resource utilization).
Data Source
AI summary
This application provides a data reading method for a retrieval task and a retrieval apparatus. The method includes receiving a first retrieval task request, where the first retrieval task request corresponds to a first retrieval start address and a first retrieval end address in a target data area, and reading data for a first retrieval task starting from the first retrieval start address. The method includes receiving a second retrieval task request in a process of reading data for the first retrieval task. The method further includes obtaining an address of data to be read for the first retrieval task after receiving the second retrieval task request, and determining a second retrieval start address of a second retrieval task in the target data area based on the address of the data to be read. The method further includes reading data for the second retrieval task starting from the second retrieval start address.


