Packages

t

com.criteo.cuttle

Scheduler

trait Scheduler[S <: Scheduling] extends MetricProvider[S]

A scheduler interpret a Workflow and instanciate Executions for all defined Jobs. For example, a typical cuttle Scheduler is the TimeSeries scheduler that executes the graph for each time partition.

S

The king of Scheduling managed by this Scheduler.

Linear Supertypes
MetricProvider[S], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Scheduler
  2. MetricProvider
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def start(jobs: Workload[S], executor: Executor[S], xa: XA, logger: Logger): Unit

    Starts the scheduler for the given Workflow.

    Starts the scheduler for the given Workflow. Immediatly the scheduler will start interpreting the workflow and generate Executions sent to the provided Executor.

    jobs

    The jobs to run.

    executor

    The executor to use to run the generated Executions.

    xa

    The doobie transactor to use to persist the scheduler state if needed.

    logger

    The logger to use to log internal debug state if neeed.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val allContexts: doobie.imports.Fragment

    Provide a doobie SQL Fragment used to retrieve all execution contexts from the execution logs.

    Provide a doobie SQL Fragment used to retrieve all execution contexts from the execution logs.

    This fragment must be a SELECT query returning (id,json) tuples for all known scheduling contexts.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  11. def getMetrics(jobIds: Set[String], jobs: Workload[S]): Seq[Metric]
    Definition Classes
    MetricProvider
  12. def getStats(jobs: Set[String]): Json

    Returns a Json object containing the internal scheduler statistics informations.

    Returns a Json object containing the internal scheduler statistics informations. These data will be send to the UI and can be used by the scheduler UI if needed.

    jobs

    Filter the statistics for the provided list of jobs.

  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. def name: String
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  19. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from MetricProvider[S]

Inherited from AnyRef

Inherited from Any

Ungrouped