Interface QueryResourceAllocator
- All Known Subinterfaces:
QueryResourceManager
- All Known Implementing Classes:
DefaultResourceManager.DefaultQueryResourceManager
,DefaultResourceManager.DefaultResourceAllocator
,ThrottledResourceManager.QueuedQueryResourceManager
,ThrottledResourceManager.QueuedResourceAllocator
public interface QueryResourceAllocator
Manages resources for an individual query in conjunction with the
global
ResourceManager
. Handles memory and CPU allocation.
Instances of this class handle query planning and are used when the
client wants to plan the query, but not execute it. An implementation
of QueryResourceManager
is used to both plan the query and
queue it for execution.
This interface allows a variety of resource management strategies to exist for different purposes.
The methods here assume external synchronization: a single query calls the methods at known times; there are no concurrent calls.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Make any needed adjustments to the query plan before parallelization.void
Provide the manager with the physical plan and node assignments for the query to be run.
-
Method Details
-
visitAbstractPlan
Make any needed adjustments to the query plan before parallelization.- Parameters:
plan
- physical plan
-
visitPhysicalPlan
Provide the manager with the physical plan and node assignments for the query to be run. This class will plan memory for the query.- Parameters:
work
- query work unit
-