Понимание задачи и подзадачи в Flink - PullRequest
0 голосов
/ 26 января 2019

Я новичок во Flink, и вроде как запутался с Task и SubTask.

Мне кажется, что

  1. Задача эквивалентна TaskSet или Stage в Spark

  2. Подзадача эквивалентна Задаче в Spark

Если я правильно понял, то приведу простой пример следующего будет 1 задание и 4 подзадачи?

object TaskAndSubTaskTest {
  def main(args: Array[String]): Unit = {
    val benv = ExecutionEnvironment.getExecutionEnvironment
    benv.fromCollection(1 to 20).map(_ * 3).filter(_ > 50).setParallelism(4).print()
  }
}

1 Ответ

0 голосов
/ 14 июля 2019

Задача и подзадача наиболее плохо спроектированы и реализованы как в концепции, так и в коде. subtask - это наименьшая единица работы, выполняемая потоком, но в исходном коде Flink нет класса с именем Subtask или чего-то подобного. Что касается проводов, существует класс с именем Task, который реализует Runanble, что означает, что Task - это модуль, который будет выполняться в потоке.

Задача во Flink больше похожа на TaskSet или Stage in Spark, а подзадача во Flink больше похожа на Task в Spark

...