Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Airflow 气流-对多个下游任务使用上游任务_Airflow - Fatal编程技术网

Airflow 气流-对多个下游任务使用上游任务

Airflow 气流-对多个下游任务使用上游任务,airflow,Airflow,好吧,如果这是一个愚蠢的问题,我很抱歉,因为很明显,它应该有效。但我找不到它的文档,我们正在研究我们的选项,我们正在寻找建立一个新的数据管道,我真的希望这是一个功能 如果上游流程只运行一次,那么多个下游流程是否可以依赖于单个上游流程。换句话说,我可以一次提取一个表,然后将其加载到我的数据仓库中,并拥有多个依赖于该加载完成的聚合吗 要了解更多信息,我们尝试转到异步提取加载转换,在该转换中开始提取,然后加载和转换在从提取中获得所需的表子集后立即完成 在我看来,这就像是一个措辞不同寻常的普通DAG。我

好吧,如果这是一个愚蠢的问题,我很抱歉,因为很明显,它应该有效。但我找不到它的文档,我们正在研究我们的选项,我们正在寻找建立一个新的数据管道,我真的希望这是一个功能

如果上游流程只运行一次,那么多个下游流程是否可以依赖于单个上游流程。换句话说,我可以一次提取一个表,然后将其加载到我的数据仓库中,并拥有多个依赖于该加载完成的聚合吗


要了解更多信息,我们尝试转到异步提取加载转换,在该转换中开始提取,然后加载和转换在从提取中获得所需的表子集后立即完成

在我看来,这就像是一个措辞不同寻常的普通DAG。我理解所需的结构如下:

extract_table_task \
                   |- task1_do_stuff
                   |- task2_do_some_other_stuff
                   |- task3_...
或在气流代码中:

extract_table_task.set_downstream(task1_do_stuff)
extract_table_task.set_downstream(task2_do_some_other_stuff)
extract_table_task.set_downstream(task3_...)

然后确保为您的工作流程选择正确的触发规则,例如,如果某些任务在出现问题时仍应运行:

在我看来,这就像是一个措辞不寻常的常用DAG。我理解所需的结构如下:

extract_table_task \
                   |- task1_do_stuff
                   |- task2_do_some_other_stuff
                   |- task3_...
或在气流代码中:

extract_table_task.set_downstream(task1_do_stuff)
extract_table_task.set_downstream(task2_do_some_other_stuff)
extract_table_task.set_downstream(task3_...)

然后确保为您的工作流选择正确的触发规则,例如,如果某些任务即使出现问题也应该运行:

如果我理解这个问题,是的,您可以将下游任务设置为依赖于上游任务的成功

我们在许多类似于此示例DAG的情况下使用Dummy运算符:

在这种情况下,我们希望dummyOperator首先启动并在下游任务启动之前做一些事情。这使得清除失败的运行变得更容易,而且我们可以简单地同时清除虚拟操作符和下游任务


您可以使用
depend_on_pass=True
参数要求在下游任务排队之前运行上游任务,否则可以根据上游任务中的逻辑跳过上游任务

如果我理解这个问题,是的,您可以将下游任务设置为取决于上游任务的成功

我们在许多类似于此示例DAG的情况下使用Dummy运算符:

在这种情况下,我们希望dummyOperator首先启动并在下游任务启动之前做一些事情。这使得清除失败的运行变得更容易,而且我们可以简单地同时清除虚拟操作符和下游任务


您可以使用
depend_on_pass=True
参数要求在下游任务排队之前运行上游任务,否则可以根据上游任务中的逻辑跳过上游任务

解压缩正在针对应用程序数据库运行。表被提取到文件中,移动到报表数据库服务器,并加载到报表数据库中。在这一点上,有大量的转换来创建数据集市。这些转换依赖于许多不同的提取表。在大多数数据管道模型中,都会先进行完全提取,然后进行完全加载,然后开始运行转换。但是,我们正在尝试这样做,以便在文件准备好后立即从提取文件加载表,并在获得数据后立即运行转换。感谢您的澄清。对于“尽快…准备就绪”部分,气流确实有帮助。提取是针对应用程序数据库运行的。表被提取到文件中,移动到报表数据库服务器,并加载到报表数据库中。在这一点上,有大量的转换来创建数据集市。这些转换依赖于许多不同的提取表。在大多数数据管道模型中,都会先进行完全提取,然后进行完全加载,然后开始运行转换。但是,我们正在尝试这样做,以便在文件准备好后立即从提取文件加载表,并在获得数据后立即运行转换。感谢您的澄清。对于“一旦……准备就绪”部分,气流确实有助于实现这一点。