В настоящее время я готовлюсь к экзамену GCP Data Engineer и изо всех сил пытаюсь понять, когда использовать Cloud Scheduler и где использовать Cloud Composer.
После чтения документации у меня сложилось впечатление, что Cloud Composer следует использовать, когда есть взаимозависимости между заданиями, например нам нужен вывод задания, чтобы запускать другое, когда первое завершается, и использовать зависимости, полученные от первого задания. Затем вы можете гибко объединить в цепочку столько «рабочих процессов», сколько захотите, а также предоставить возможность перезапускать задания в случае сбоя, запускать пакетные задания, сценарии оболочки, цепочки запросов и т. Д.
Что касается Cloud Scheduler, он имеет очень похожие возможности в отношении того, какие задачи он может выполнять, однако он больше используется для обычных заданий, которые вы можете выполнять через регулярные промежутки времени, и не обязательно используется, когда у вас есть взаимозависимости между заданиями или когда вам нужно дождаться других заданий, прежде чем начинать новое. Поэтому, похоже, больше подходит для использования в «более простых» задачах.
Эти мысли пришли после попытки ответить на некоторые вопросы экзамена, которые я нашел. Однако я был удивлен найденными «правильными ответами» и надеялся, что кто-то сможет уточнить, верны ли эти ответы и понял ли я, когда использовать один вместо другого.
Вот примеры вопросов, которые сбили меня с толку относительно этой темы:
Вопрос 1
Вы реализуете несколько пакетных заданий, которые должны выполняться по расписанию. У этих заданий есть много взаимозависимых шагов, которые должны выполняться в определенном порядке. Части заданий включают выполнение сценариев оболочки, выполнение заданий Hadoop и выполнение запросов в BigQuery. Ожидается, что задания будут выполняться от многих минут до нескольких часов. Если шаги не удались, их необходимо повторить определенное количество раз. Какую службу следует использовать для управления выполнением этих заданий?
А. Облачный планировщик
Б. Облачный поток данных
C. Облачные функции
D. Cloud Composer
Правильный ответ: А
Вопрос 2
Вы хотите автоматизировать выполнение многоэтапного конвейера данных, работающего в Google Cloud. В конвейер входят задания Cloud Dataproc и Cloud Dataflow, которые имеют множество зависимостей друг от друга. Вы хотите использовать управляемые службы там, где это возможно, и конвейер будет работать каждый день. Какой инструмент использовать?
А. cron
Б. Cloud Composer
C. Облачный планировщик
D. Шаблоны рабочих процессов в Cloud Dataproc
Правильный ответ: D
Вопрос 3
У вашей компании есть инициатива по гибридному облаку. У вас есть сложный конвейер данных, который перемещает данные между службами облачных провайдеров и использует сервисы от каждого из облачных провайдеров. Какой облачный сервис следует использовать для оркестровки всего конвейера?
A. Cloud Dataflow
Б. Cloud Composer
C. Cloud Dataprep
D. Cloud Dataproc
Правильный ответ: D
Мы будем очень благодарны за любое понимание этого. Спасибо !