如何在气流中向Python程序提交参数?

2024-09-20 06:32:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我们有一个前端服务器,它直接使用dagapi(DagBag()get_dag(),然后dag_run())执行dags

dag运行良好,问题是,我们无法找到一种方法来执行具有特定参数的dag。在

最接近的解决方案是使用变量API,它使用set()get()方法,但这些变量是全局的,在处理可能使用相同变量名的并发操作时可能会发生冲突。在

我们如何运行dag并设置可用于其执行的参数?我们主要使用的是Python。在

编辑1: 我们的程序是一个pythondjango前端服务器。所以,我们用气流通过另一个Python程序。这意味着我们通过Python触发dag,因此使用DagBag.get_dag()从气流服务中检索信息。run_dag()无法传递直接参数


Tags: 方法run程序服务器api参数get解决方案
1条回答
网友
1楼 · 发布于 2024-09-20 06:32:14

如果使用trigger_dag_run(通过命令行或从另一个dag)来触发dag,则可以将任何json作为有效负载传递。在

另一个选择是将参数列表存储在文件中,并将文件位置存储为变量。然后,DAG可以将这个文件位置传递给python操作符,然后操作符可以处理读取该文件并解析其中的参数。在

如果这两个解决方案都不适用于您的用例,那么提供关于您的dag的更多细节和类型的参数可能会有所帮助。在

相关问题 更多 >