airflow - Apache Airflow:在操作员执行之间存储下载文件的位置?
问题描述
我开始使用 Apache Airflow 构建数据处理管道并遇到(可能)非常基本的问题:在哪里存储下载的文件operator1
然后必须由 处理operator2
?
operator1
- BashOperator 从外部资源下载 zip 文件。我这样做是curl
为了能够重试或重新开始下载,因为外部资源不稳定。
operator2
- airflow.contrib.operators.file_to_wasb 操作员上传到 Azure Blob
所以问题是如何operator2
访问下载的文件operator1
?应该operator1
在某处上传文件还是可以将其委托给下一个任务?
operator1 = BashOperator(
task_id='download_ds_archive',
bash_command="curl --retry 10 -O -C - https://extresource/file.zip",
xcom_push=True,
provide_context=True,
dag=dag,
)
operator2 = FileToWasbOperator(
task_id='stage_xml_files_to_azure_blob',
...
)
operator1 >> operator2
解决方案
推荐阅读
- powershell - 如何在powershell中实现一个循环来拆分多个CSV文件?
- javascript - GPS - 追踪准确度 - (使用 PHP Geo Plugins / HTML5 / JavaScript )
- c# - 在 .net core worker 服务中获取登录用户
- terraform - Terraform:声明结构化/类型化的本地或变量
- r - R - 原语 - sin
- javascript - 如何将 Liquid 数组转换为 Javascript 数组?
- botframework - 网络聊天与 Atlassian Confluence 的集成
- css - 如何使用 Material-ui Grid 在每个项目组件之间给出一列间隙?
- c# - C# 如何使用 amazon s3 存储桶将图像从本地上传到云服务器
- mongodb - 詹金斯通过批处理启动应用程序(mongod)正在立即关闭它