我是 Airflow 新手,对 Airflow 及其处理器有疑问。
当处理器产生输出时,如何将该输出作为输入移动到下一个处理器?
有一个名为 nifi 的软件,它将中间输出存储到流文件中,据我所知,airflow 中没有这样的软件。
那么这是怎么发生的呢?
提前致谢。
气流用途Xcoms https://airflow.incubator.apache.org/concepts.html#xcoms在操作员之间传递数据。
如果流程是运算符 A -> 运算符 B,则运算符 A 必须将一个值“推送”到 xcom,而运算符 B 如果想要读取该值,则必须从 A 中“拉取”该值。
A 下游的任何操作员都可以访问 A 通过以下方式推送到 Xcom 的任何值:
value = context['task_instance'].xcom_pull(task_ids='operator_a', key='key_name')
运算符 A 会像这样推送这个值:
context['task_instance'].xcom_push(key_name,value,context['execution_date'])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)