GPU Cache Acceleration for Low-Migration Big Data Queries
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The separation of storage and computing resources in big data clusters leads to increased data migration requirements and deteriorated data processing performance, necessitating a solution to reduce data migration costs and improve efficiency.
Innovation Solution
A data processing system with a multi-level architecture that includes an engine layer, cache acceleration layer, and storage layer, utilizing GPU processing units to execute operators and optimize scheduling based on real-time resource usage, thereby reducing data migration and enhancing processing efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If storage and computing are separated into independent clusters, then resource flexibility and adaptability are improved, but data migration costs increase and data processing performance deteriorates
Solution Approach 1:
The system segments the data processing workflow into multiple operator types (data reading operators, preprocessing operators, computation operators, etc.) that can be independently scheduled and executed on different GPU processing units. This segmentation allows flexible resource allocation while minimizing data migration by executing operators close to where data resides.
Solution Approach 2:
The patent introduces a scheduling plan as an intermediary mechanism that coordinates between storage resources and computing resources. The scheduling plan includes operator execution sequences, data transmission sequences, and resource allocation information, enabling efficient coordination without requiring excessive data migration between separate storage and computing clusters.
2Adaptability or versatility
If storage and computing are separated into independent clusters, then resource flexibility and adaptability are improved, but data processing performance deteriorates
Solution Approach 1:
The system dynamically adjusts the scheduling plan based on real-time resource availability and data characteristics. The scheduling plan is generated and optimized to account for varying workloads, ensuring that data processing operations are executed efficiently on available GPU resources without requiring rigid fixed-ratio allocations.
Solution Approach 2:
The patent implements continuous data processing by maintaining pipelines where data flows through multiple operator stages without interruption. The scheduling plan ensures that data reading, preprocessing, and computation operators execute in continuous sequences, maximizing GPU utilization and maintaining high data processing efficiency throughout the workflow.
3Device complexity
If fixed ratio of storage resources to computing resources is used, then system simplicity is maintained, but adaptability to new requirements becomes difficult
Solution Approach 1:
The system changes the parameter of resource allocation from fixed ratios to dynamic, demand-based allocation. The scheduling plan adjusts computing resource allocation based on the specific requirements of different data processing tasks, allowing the system to adapt to varying workload demands while maintaining manageable complexity through automated scheduling.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
This application relates to a data processing system applied to big data, and a data processing method. The data processing system includes a first subsystem implementing an engine layer, a second subsystem implementing a cache acceleration layer, and a third subsystem implementing a storage layer. The cache acceleration layer and the storage layer include GPU processing units. The first subsystem is configured to determine primitive operators to be executed by the GPU processing units and a scheduling plan of the primitive operators based on a query request, and output the scheduling plan to the second subsystem. The second subsystem converts the primitive operators into intermediate representation operators and schedules the intermediate representation operators to second execution objects based on the scheduling plan. The second subsystem drives, by using a concurrency model, third execution objects to execute the intermediate representation operators. Execution results are output by the third execution objects to the first subsystem, and the execution results are used to obtain a query result. According to the data processing system in embodiments of this application, data migration costs in a scenario in which storage and computing are separated can be reduced, and data processing efficiency can be improved.