Ответ 1
Ну, терминология всегда может быть трудной, поскольку она зависит от контекста. Во многих случаях вы можете использовать для "отправки задания в кластер", который для искры должен был представлять программу драйвера.
Тем не менее, у Spark есть свое определение "работа", непосредственно из глоссария:
Работа. Параллельное вычисление, состоящее из нескольких задач, которые получают порождается в ответ на действие Spark (например, save, collect); вот увидишь этот термин используется в журналах драйверов.
Итак, в этом контексте, скажем, вам нужно сделать следующее:
- Загрузите файл с именами и адресами людей в RDD1
- Загрузите файл с именами людей и телефонами в RDD2
- Присоедините RDD1 и RDD2 по имени, чтобы получить RDD3
- Карта на RDD3, чтобы получить хорошую презентационную карточку HTML для каждого человека как RDD4
- Сохранить RDD4 в файл.
- Карта RDD1 для извлечения zipcodes из адресов для получения RDD5
- Совокупность на RDD5 для подсчета количества людей, живущих на каждом zipcode, как RDD6
- Соберите RDD6 и распечатайте эти данные в стандартный вывод.
Итак,
- Программа драйвера - это весь фрагмент кода, выполняющий все 8 шагов.
- Создание всей HTML-карты, установленной на шаге 5, - это задание (ясно, потому что мы используем действие save, а не преобразование). То же самое со сборкой на шаге 8
- Другие шаги будут организованы в этапы, причем каждое задание будет результатом последовательности этапов. Для простых вещей задание может иметь один этап, но необходимость перераспределения данных (например, соединение на шаге 3) или что-либо, что нарушает локальность данных, обычно приводит к появлению большего количества этапов. Вы можете рассматривать этапы как вычисления, которые производят промежуточные результаты, которые на самом деле могут сохраняться. Например, мы можем сохранить RDD1, так как мы будем использовать его более одного раза, избегая перерасчета.
- Все 3 выше в основном говорят о том, как будет нарушена логика данного алгоритма. Напротив, задача представляет собой конкретный фрагмент данных, которые пройдут через данный этап, на данном исполнителе.
Надеюсь, что это станет проще, -)