Constructor and Description |
---|
TopologyResources(TopologyDetails td,
Assignment assignment) |
TopologyResources(TopologyDetails td,
SchedulerAssignment assignment) |
Modifier and Type | Method and Description |
---|---|
TopologyDetails |
Topologies.getById(String topologyId)
Get a topology given an ID.
|
TopologyDetails |
Topologies.getByName(String topologyName)
Get a topology given a topology name.
|
Modifier and Type | Method and Description |
---|---|
Collection<TopologyDetails> |
Topologies.getTopologies() |
Collection<TopologyDetails> |
Topologies.getTopologiesOwnedBy(String user)
Get all topologies submitted/owned by a given user.
|
Iterator<TopologyDetails> |
Topologies.iterator() |
List<TopologyDetails> |
Cluster.needsSchedulingTopologies() |
List<TopologyDetails> |
ISchedulingState.needsSchedulingTopologies()
Get all of the topologies that need scheduling.
|
Modifier and Type | Method and Description |
---|---|
int |
Cluster.getAssignedNumWorkers(TopologyDetails topology) |
int |
ISchedulingState.getAssignedNumWorkers(TopologyDetails topology)
Get the number of workers assigned to a topology.
|
Map<String,List<ExecutorDetails>> |
Cluster.getNeedsSchedulingComponentToExecutors(TopologyDetails topology) |
Map<String,List<ExecutorDetails>> |
ISchedulingState.getNeedsSchedulingComponentToExecutors(TopologyDetails topology)
Get the component name to executor list for executors that need to be scheduled.
|
Map<ExecutorDetails,String> |
Cluster.getNeedsSchedulingExecutorToComponents(TopologyDetails topology) |
Map<ExecutorDetails,String> |
ISchedulingState.getNeedsSchedulingExecutorToComponents(TopologyDetails topology)
Get the executor to component name map for executors that need to be scheduled.
|
Collection<ExecutorDetails> |
Cluster.getUnassignedExecutors(TopologyDetails topology) |
Collection<ExecutorDetails> |
ISchedulingState.getUnassignedExecutors(TopologyDetails topology)
get the unassigned executors of the topology.
|
boolean |
Cluster.needsScheduling(TopologyDetails topology) |
boolean |
ISchedulingState.needsScheduling(TopologyDetails topology)
Does the topology need scheduling.
|
boolean |
Cluster.needsSchedulingRas(TopologyDetails topology) |
boolean |
ISchedulingState.needsSchedulingRas(TopologyDetails topology)
Like
ISchedulingState.needsScheduling(TopologyDetails) but does not take into account the number of workers requested. |
void |
Cluster.setStatus(TopologyDetails td,
String statusMessage)
set scheduler status for a topology.
|
boolean |
Cluster.wouldFit(WorkerSlot ws,
ExecutorDetails exec,
TopologyDetails td,
NormalizedResourceOffer resourcesAvailable,
double maxHeap) |
boolean |
ISchedulingState.wouldFit(WorkerSlot ws,
ExecutorDetails exec,
TopologyDetails td,
NormalizedResourceOffer resourcesAvailable,
double maxHeap)
Would scheduling exec on ws fit? With a heap <= maxHeap total memory added <= memoryAvailable and cpu added <= cpuAvailable.
|
Constructor and Description |
---|
Topologies(TopologyDetails... details)
Create a new Topologies from a list of TopologyDetails.
|
Constructor and Description |
---|
Topologies(Map<String,TopologyDetails> topologies)
Create a new Topologies from a map of id to topology.
|
Modifier and Type | Method and Description |
---|---|
void |
DefaultPool.addTopology(TopologyDetails td) |
void |
FreePool.addTopology(TopologyDetails td) |
void |
IsolatedPool.addTopology(TopologyDetails td) |
abstract void |
NodePool.addTopology(TopologyDetails td)
Add a topology to the pool.
|
boolean |
DefaultPool.canAdd(TopologyDetails td) |
boolean |
FreePool.canAdd(TopologyDetails td) |
boolean |
IsolatedPool.canAdd(TopologyDetails td) |
abstract boolean |
NodePool.canAdd(TopologyDetails td)
Check if this topology can be added to this pool.
|
Constructor and Description |
---|
RoundRobinSlotScheduler(TopologyDetails td,
int slotsToUse,
Cluster cluster)
Create a new scheduler for a given topology.
|
Modifier and Type | Method and Description |
---|---|
TopologyDetails |
User.getNextTopologyToSchedule(ISchedulingState cluster) |
TopologyDetails |
User.getRunningTopologyWithLowestPriority(ISchedulingState cluster) |
Modifier and Type | Method and Description |
---|---|
TreeSet<TopologyDetails> |
User.getPendingTopologies(ISchedulingState cluster) |
TreeSet<TopologyDetails> |
User.getRunningTopologies(ISchedulingState cluster) |
Modifier and Type | Method and Description |
---|---|
void |
RasNode.assign(WorkerSlot target,
TopologyDetails td,
Collection<ExecutorDetails> executors)
Assigns a worker to a node.
|
void |
RasNode.assignSingleExecutor(WorkerSlot ws,
ExecutorDetails exec,
TopologyDetails td)
Assign a single executor to a slot, even if other things are in the slot.
|
boolean |
RasNode.couldEverFit(ExecutorDetails exec,
TopologyDetails td)
Is there any possibility that exec could ever fit on this node.
|
void |
RasNode.freeSingleExecutor(ExecutorDetails exec,
TopologyDetails topo)
frees a single executor.
|
void |
User.markTopoUnsuccess(TopologyDetails topo) |
void |
User.markTopoUnsuccess(TopologyDetails topo,
Cluster cluster,
String msg) |
boolean |
RasNode.wouldFit(WorkerSlot ws,
ExecutorDetails exec,
TopologyDetails td)
Would scheduling exec in ws fit with the current resource constraints.
|
Modifier and Type | Field and Description |
---|---|
protected LinkedList<TopologyDetails> |
DefaultSchedulingPriorityStrategy.SimulatedUser.tds |
Modifier and Type | Method and Description |
---|---|
TopologyDetails |
DefaultSchedulingPriorityStrategy.SimulatedUser.getNextHighest() |
TopologyDetails |
DefaultSchedulingPriorityStrategy.SimulatedUser.simScheduleNextHighest() |
TopologyDetails |
GenericResourceAwareSchedulingPriorityStrategy.GrasSimulatedUser.simScheduleNextHighest() |
Modifier and Type | Method and Description |
---|---|
List<TopologyDetails> |
ISchedulingPriorityStrategy.getOrderedTopologies(ISchedulingState schedulingState,
Map<String,User> userMap)
Prioritize the list of all topologies in the cluster.
|
List<TopologyDetails> |
DefaultSchedulingPriorityStrategy.getOrderedTopologies(ISchedulingState cluster,
Map<String,User> userMap) |
List<TopologyDetails> |
GenericResourceAwareSchedulingPriorityStrategy.getOrderedTopologies(ISchedulingState cluster,
Map<String,User> userMap) |
Modifier and Type | Method and Description |
---|---|
protected double |
GenericResourceAwareSchedulingPriorityStrategy.GrasSimulatedUser.getScore(double availableCpu,
double availableMemory,
Map<String,Double> availableGenericResources,
TopologyDetails td)
Get a score for the simulated user.
|
protected double |
DefaultSchedulingPriorityStrategy.SimulatedUser.getScore(double availableCpu,
double availableMemory,
TopologyDetails td)
Get a score for the simulated user.
|
Modifier and Type | Field and Description |
---|---|
protected TopologyDetails |
BaseResourceAwareStrategy.topologyDetails |
Modifier and Type | Method and Description |
---|---|
protected void |
ConstraintSolverStrategy.prepareForScheduling(Cluster cluster,
TopologyDetails topologyDetails) |
protected void |
BaseResourceAwareStrategy.prepareForScheduling(Cluster cluster,
TopologyDetails topologyDetails)
Initialize instance variables as the first step in
BaseResourceAwareStrategy.schedule(Cluster, TopologyDetails) . |
SchedulingResult |
IStrategy.schedule(Cluster schedulingState,
TopologyDetails td)
This method is invoked to calculate a scheduling for topology td.
|
SchedulingResult |
BaseResourceAwareStrategy.schedule(Cluster cluster,
TopologyDetails td)
Note that this method is not thread-safe.
|
static boolean |
ConstraintSolverStrategy.validateSolution(Cluster cluster,
TopologyDetails topo)
Determines if a scheduling is valid and all constraints are satisfied (for use in testing).
|
Constructor and Description |
---|
ConstraintSolverConfig(TopologyDetails topo) |
SchedulingSearcherState(Map<WorkerSlot,Map<String,Integer>> workerCompAssignmentCnts,
Map<RasNode,Map<String,Integer>> nodeCompAssignmentCnts,
int maxStatesSearched,
long maxTimeMs,
List<ExecutorDetails> execs,
LinkedList<ExecutorDetails> unassignedAckers,
TopologyDetails td,
Map<ExecutorDetails,String> execToComp) |
Modifier and Type | Field and Description |
---|---|
protected TopologyDetails |
NodeSorterHostProximity.topologyDetails |
protected TopologyDetails |
ExecSorterByConnectionCount.topologyDetails |
protected TopologyDetails |
NodeSorter.topologyDetails |
protected TopologyDetails |
ExecSorterByProximity.topologyDetails |
Constructor and Description |
---|
ExecSorterByConnectionCount(TopologyDetails topologyDetails) |
ExecSorterByConstraintSeverity(Cluster cluster,
TopologyDetails topologyDetails) |
ExecSorterByProximity(TopologyDetails topologyDetails) |
NodeSorter(Cluster cluster,
TopologyDetails topologyDetails,
BaseResourceAwareStrategy.NodeSortType nodeSortType)
Initialize for the default implementation node sorting.
|
NodeSorterHostProximity(Cluster cluster,
TopologyDetails topologyDetails) |
NodeSorterHostProximity(Cluster cluster,
TopologyDetails topologyDetails,
BaseResourceAwareStrategy.NodeSortType nodeSortType)
Initialize for the default implementation node sorting.
|
Copyright © 2023 The Apache Software Foundation. All rights reserved.