The elastic scheduler

The elastic scheduler, available since the 2016.03 release, is able to use the information about elastic services encoded in ZApp descriptions to make efficient use of the available resources. The algorithm, along with a performance evaluation, is described in detail in this paper: Flexible Scheduling of Distributed Analytic Applications.

Scheduler classes

class zoe_master.scheduler.ZoeBaseScheduler(state: zoe_lib.state.sql_manager.SQLManager)

The base class for Zoe schedulers

incoming(execution: zoe_lib.state.execution.Execution)

This method adds the execution to the end of the FIFO queue and triggers the scheduler. :param execution: The execution :return:

quit()

Stop the scheduler.

stats()

Scheduler statistics.

terminate(execution: zoe_lib.state.execution.Execution) → None

Inform the master that an execution has been terminated. This can be done asynchronously. :param execution: the terminated execution :return: None

trigger()

Trigger a scheduler run.