Как я могу обрабатывать данные в хранилище Google через Apache Airflow?

У меня есть файл CSV в облачном хранилище Google. Я использую Google Cloud Composer для запуска Apache Airflow. Я хотел бы запустить несколько сценариев bash для моего CSV-файла и сохранить его обратно в облачном хранилище Google? Я попробовал поискать различных операторов, но не смог найти ни одного оператора, который обрабатывает файлы в хранилище Google. Есть ли способ сделать это?

Заранее спасибо.

1 ответ

Решение

Вот пример:

bash_operator.BashOperator(
    task_id="process_csv",
    bash_command="gsutil cp gs://your_bucket/your_file.csv your_file.csv && "
                 "process_file your_file.csv > processed_file.csv && "
                 "gsutil cp processed_file.csv gs://your_bucket/processed_file.csv",
    execution_timeout=timedelta(hours=1),
    dag=dag
)

Вы можете найти больше примеров в этом хранилище https://github.com/blockchain-etl/bitcoin-etl-airflow/blob/develop/dags/bitcoinetl/build_export_dag.py.

Вы также можете использовать PythonOperator вместо BashOperator. Некоторые примеры можно найти здесь https://github.com/blockchain-etl/ethereum-etl-airflow/blob/master/dags/export_dag.py

Другие вопросы по тегам