首页 > 解决方案 > 使用 Airflow 将本地目录上传到 GCS

问题描述

我正在尝试使用 Airflow 将目录(带有镶木地板文件)上传到 GCS。为此,我尝试了FileToGoogleCloudStorageOperator

我尝试了以下选项:

src=<Path>/*.parquet

它出错了:No such file found

src=<Path>-> 其中path是目录路径

它错误地说:Is a directory

问题

  1. 无论如何,FileToGoogleCloudStorageOperator 可以扩展到目录级别吗?
  2. 任何替代方式做同样的事情?

标签: google-cloud-platformdirectoryuploadairflow

解决方案


简短回答:目前不可能。但我会将其视为功能请求,并尝试在即将发布的版本中添加它。

到那时,您可以使用BashOperator和使用gsutil同时复制多个文件。

另一种选择是使用PythonOperator, 使用包列出文件os并循环它们并使用GoogleCloudStorageHook.upload上传每个文件。


推荐阅读