Удаление SubDag из базы данных Airflow - PullRequest
0 голосов
/ 13 июня 2018

Я создал 4 SubDag внутри основного Dag, которые будут работать с другим schedule_interval.Я удалил операцию одного SubDag, но он все еще появляется в базе данных Airflow.Будет ли эта запись в базе данных выполняться?Есть ли способ удалить это из базы данных Airflow?

1 Ответ

0 голосов
/ 13 июня 2018

Запись будет сохранена в базе данных, однако, если DAG на самом деле не присутствует в планировщике (а рабочие в зависимости от вашего исполнителя), она не может быть добавлена ​​в DagBag и не будет запущена.

Посмотрите на этот упрощенный планировщик того, что делает планировщик:

def _do_dags(self, dagbag, dags, tis_out):
    """
    Iterates over the dags and schedules and processes them
    """
    for dag in dags:
        self.logger.debug("Scheduling {}".format(dag.dag_id))
        dag = dagbag.get_dag(dag.dag_id)
        if not dag:
            continue
        try:
            self.schedule_dag(dag)
            self.process_dag(dag, tis_out)
            self.manage_slas(dag)
        except Exception as e:
            self.logger.exception(e)

Планировщик проверит, содержится ли dag в DagBag, прежде чем он выполнит какие-либо действия.обработка на нем.Записи для групп обеспечения доступности баз данных хранятся в базе данных, чтобы вести исторический отчет о том, какие даты были обработаны, если вы добавите их в будущем.Но для всех намерений и целей вы можете рассматривать отсутствующий DAG как приостановленный DAG.

...