问题标签 [airflow-scheduler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
163 浏览

airflow - 将气流从 1.8.0 升级到 1.8.1 时暂停的 dag 重新启动?

最近我将气流从 1.8.0 升级到 1.8.1。升级很顺利,但是一旦我重新启动 Web 服务器和调度程序,所有暂停的 dag 都会自动重新启动,并从停止之日起开始运行多次。它弄乱了大部分用户数据,我们需要手动清理。我们如何在未来的升级中防止这种情况发生?

0 投票
1 回答
3471 浏览

airflow - 在相同的 Airflow 版本上运行 Airflow 升级命令是否安全?

Airflow 有一个 upgradeb 命令,在升级 Airflow 版本时需要运行该命令。我想知道即使版本相同也可以安全运行

0 投票
0 回答
1081 浏览

airflow - 气流“one_success”任务未触发

我正在使用 LocalExecutor 在 4 CPU 机器上运行 Airflow

我已经将上游任务定义为一次成功

...

但即使有些被明确标记为成功,任务也不会触发

“下载任务”确实并行运行,所以这不是问题

图形

检查任务显示:

依赖性:未知

原因:满足所有依赖关系但任务实例未运行。在大多数情况下,这只是意味着任务可能很快就会被安排,除非: - 调度程序已关闭或负载过重 - 此任务实例已经运行并且手动更改了它的状态(例如在 UI 中清除)

我查看了负载,它确实很高:

平均负载:2.45、3.55、3.71 CPU 在 50-60%

但是其他的任务都已经完成了,应该有空闲的资源可以开始下一个任务吧?

0 投票
0 回答
2045 浏览

airflow - Airflow dag 任务卡在运行或无状态

我创建了一个 dag,其中包含几个运行简单 bash 命令的 subdag。我可以看到,几乎从一开始,许多任务就陷入了运行或无状态模式,并且无法继续。一段时间后,我可以看到越来越多的 dag 实例被卡住,而我只剩下一个实例真正在运行。我能做些什么来确保不会发生这种情况?

这是我的一天:

0 投票
1 回答
1282 浏览

airflow - 每小时运行任务的apache气流外部任务传感器

在 apache 气流中,可以将外部任务传感器添加到日常工作中每小时运行的工作中。

我们有一个场景,在日常工作中,我们需要一些由日常工作更新的列。

但有时在 23:00 运行的每小时作业在每日作业开始之前并未完成。

在这种情况下,我们错过了按小时工作所做的一些更新。

我们可以从日常工作中添加对每小时工作的依赖吗?

0 投票
0 回答
79 浏览

airflow - 为什么 Airflow 会创建多个日志文件?

我最近开始研究 Airflow 调度程序。而且我一直在观察它正在为每个计划的作业创建多个日志文件。我可以知道如何将其限制为一个文件。我检查了airflow.cfg 文件,但找不到与日志文件副本数相关的任何参数。

0 投票
1 回答
5493 浏览

python - 如何使用 start_date 和 End_date 安排气流作业?

我正在尝试安排每天以 3 小时为间隔动态运行的作业,从 13:45 开始,到 14:30 PM 结束。我的代码如下:

无法使用 start_date 和 end_date 运行,但它以正常的 5 分钟间隔运行,请帮助解决此问题

0 投票
1 回答
1188 浏览

python - 气流 DAG 触发

我们最近尝试采用 Airflow 作为我们的“数据工作流”引擎,虽然我已经弄清楚了大部分事情,但我仍然处于关于调度程序如何计算何时触发 DAG 的灰色地带。

看看这个简单的 dag:

时间表将选择它,但不会执行它。现在,如果我将“start_date”更改为:

xxxx,yyyy,zzzz 是今天的日期,它将开始执行。造成这种情况的原因是调度程序不断从源 dag 文件夹中重新读取此 dag,每次执行 datetime.now(),注意到开始日期与当前排队的时间不同,重新添加此 dag 并因此重新调度/将执行日期向前推(我的dag_dir_list_interval是 300)?

此外,据我了解,在气流中,当 dag 未暂停(或添加 dags_are_paused_at_creation = False)时,调度程序将按如下方式安排执行:

  • 第一次 dag 执行:(start_date + interval) 之后的瞬间
  • 第二次 dag 执行:(start_date + (interval * 2)) 之后的瞬间
  • 第三次 dag 执行:(start_date + (interval * 3)) 之后的瞬间

这是正确的假设吗?

更新(2017 年 7 月 30 日)

基于上述假设,我今天(2017 年 7 月 30 日)创建了这个 dag:

应该从(UTC)开始:

  • 2017 年 7 月 30 日 20:20:00
  • 2017 年 7 月 30 日 20:30:00
  • 2017 年 7 月 30 日 20:40:00

不幸的是,这并没有发生。以下是我的仪表板的一些屏幕截图:

有人可以解释为什么 20:21:00 dag 没有执行吗?20:31:00 之后它仍然没有执行......我在这里错过了什么?

顺便说一句,我还注意到,出于某种原因,每次我通过仪表板手动启动 dag 时,它只是处于“运行”阶段。为什么是这样?手动启动它是否与任何开始时间选项(start_date/interval/etc)有关?

感谢您提供的任何澄清

0 投票
2 回答
839 浏览

airflow - 气流在定义中按 dag 取消暂停

有什么办法让服务器保持默认..

dags_are_paused_at_creation = True

...但是对于一个特定的 dag,默认情况下将其定义为未暂停?

0 投票
1 回答
1000 浏览

airflow - 无论下游发生什么,气流任务都会运行

我一天完成三项任务。

任务 A 先运行。如果任务 A 成功,则任务 B 运行。

我有任务 C,它在任务 B 之后运行,但它不依赖于任务 B 或任务 A 的成功或失败。

无论任务A和B发生什么,任务C都需要。但是,它需要在任务A和B完成后运行。

任何想法 ?