Multi-threaded Data Processing Workload Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing systems face inefficiencies in distributing workload across multiple processing threads, leading to suboptimal performance and resource utilization, as they struggle to balance workload decomposition and parallelism.
Innovation Solution
A method that analyzes data properties and record descriptions to determine expected workload, allowing for efficient allocation of data sets to processing threads, optimizing resource usage and reducing redundancy by dividing data into appropriate segments and allocating them to suitable processing threads based on available resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data is divided into more segments to increase parallelism, then processing throughput improves, but workload distribution becomes more complex and overhead increases
Solution Approach 1:
The patent segments data into multiple data sets that can be distributed across processing threads. The data is divided based on record descriptions and workload indicators, creating manageable segments that balance parallelism benefits with distribution complexity. Each segment is allocated to appropriate threads based on analyzed workload characteristics.
Solution Approach 2:
The patent performs preliminary analysis of record descriptions and determination of workload indicators before actual data processing begins. This preliminary action includes analyzing data properties, determining expected workload for different data records, and pre-planning the distribution strategy. By preparing the distribution plan in advance based on analyzed characteristics, the system avoids complex real-time decision-making during processing.
2Productivity
If processing threads are allocated uniformly across data sets, then implementation is simple, but processing performance deteriorates due to inefficient resource utilization
Solution Approach 1:
The patent applies local quality by allocating processing threads to data sets based on their specific workload characteristics rather than uniform distribution. Different data sets with different workload indicators receive different numbers of processing threads. The allocation is determined by analyzing record descriptions and workload indicators specific to each data set, ensuring optimal resource utilization for each local region of data.
3Productivity
If data analysis for workload determination is performed, then resource allocation optimization improves, but processing time before main task increases
Solution Approach 1:
The patent performs the data analysis and workload determination as a preliminary action before the main processing task. By analyzing record descriptions and determining workload indicators in advance, the system establishes an optimized thread allocation plan beforehand. This preliminary analysis enables efficient resource allocation during actual processing without requiring continuous analysis during the main task execution.
Data Source
AI summary
Methods are provided for data processing in a multi-threaded processing arrangement. The methods include receiving a data processing task to be executed on data including a plurality of data records, the data having an associated record description including information relating to parameters or attributes of the plurality of data records. Based on the received data processing task, the record description is analyzed to determine an indication of expected workload for the data records. Further, the data is divided into a plurality of data sets. Based on the determined indication of expected workload for the data records, the data sets are allocated processing threads for parallel processing by a multi-threaded processing arrangement.


