使用Airflow

时间:2017-10-13 14:04:08

标签: python amazon-s3 airflow

我们正试图从Pentaho Kettle转移到Apache AIrflow来做ETL并将所有数据流程集中在一个工具下。

我们使用Kettle每日从Postgres / Mysql数据库中读取数据,并将数据移至S3 - >红移。

最简单的方法是什么?我没有看到可以直接做到这一点的运营商;我应该使用MySQL / Postgres运算符将数据放入本地文件,并使用S3运算符将数据移动到S3?

谢谢

2 个答案:

答案 0 :(得分:3)

您可以构建自己的运算符' mysql_to_s3'并将其作为插件添加到Airflow。

有一个运算符可以将数据从Mysql存档到gcs:

mysql_to_gcs.py

您可以使用s3_hook代替def _upload_to_gcs对所有代码进行一些更改:s3_hook.py

有关自定义插件的文档:

Airflow plugins: Blog article

Airflow plugins: Official documentation

答案 1 :(得分:0)

Airflow现在有一个MySqlToS3Operator,它将使用mysql查询的结果集并将其作为csv或json放在s3上。

https://github.com/airflow-plugins/mysql_plugin/blob/master/operators/mysql_to_s3_operator.py

从那里您可能可以使用s3_to_redshift运算符:https://airflow.readthedocs.io/en/latest/_modules/airflow/operators/s3_to_redshift_operator.html