Graph Query Routing Without Per-Request Thread Creation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed data storage systems face inefficiencies in processing large quantities of parallel data query requests due to the generation of numerous threads, which are time-consuming and hinder performance.
Innovation Solution
A method involving a first node device in a distributed data storage system processes data query requests by transmitting them through processing models, determining and utilizing additional models to handle vertices and intermediate vertices, thereby avoiding thread creation during query processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If threads are created for each data query request in a distributed data storage system, then the system can process multiple queries concurrently, but the thread creation becomes increasingly time-consuming and reduces processing efficiency
Solution Approach 1:
The patent pre-creates a pool of worker threads in advance before query processing begins. These threads are kept ready in the thread pool and can be immediately assigned to handle incoming data query requests without requiring new thread creation at query time. This preliminary preparation eliminates the time-consuming thread creation overhead while maintaining the ability to process multiple queries concurrently.
Solution Approach 2:
The worker threads in the thread pool are designed to be universal and can handle multiple different types of data query requests. Instead of creating dedicated threads for each specific query type or each individual request, the same pool of worker threads can be dynamically assigned to various query tasks, making the thread infrastructure multi-functional and reusable across different query scenarios.
2Adaptability or versatility
If a large quantity of threads are generated to handle parallel data query requests, then more queries can be processed simultaneously, but the system resource consumption and complexity increase
Solution Approach 1:
The patent segments the thread management into distinct functional components: a centralized thread pool manager that handles thread creation, allocation, and termination, and worker threads that focus solely on executing query tasks. This segmentation separates the complexity of thread lifecycle management from the actual query processing logic, making the system more manageable and reducing overall complexity while maintaining high concurrent processing capability.
Solution Approach 2:
The patent introduces a thread pool manager as an intermediary component between the query request system and the worker threads. This intermediary handles the complex tasks of thread creation, assignment, synchronization, and termination, shielding the query processing logic from direct thread management complexity. The manager acts as a mediator that simplifies the interface between request submission and task execution while managing the underlying thread infrastructure.
Data Source
AI summary
A data query request processing method is provided. In the method, a node device receives a data query request transmitted by another node device for querying data related to a first vertex in a graph database through a first processing model. The data query request carries an identifier of a start vertex. The node device transmits the data query request to a second processing model through the first processing model. The second processing model is configured to process data of the start vertex. The node device determines a third processing model based on the data query request through the second processing model, the third processing model being configured to process data of the first vertex or an intermediate vertex between the start vertex and the first vertex. The node device transmits the data query request to the third processing model through the second processing model.


