使用气流配置单元运算符并输出到文本文件

时间:2018-09-13 23:09:26

标签: python airflow airflow-scheduler

嗨,我想使用气流配置单元运算符执行配置单元查询并将结果输出到文件中。我不想在这里使用INSERT OVERWRITE。

hive_ex = HiveOperator(
    task_id='hive-ex',
    hql='/sql/hive-ex.sql',
    hiveconfs={
        'DAY': '{{ ds }}',
        'YESTERDAY': '{{ yesterday_ds }}',
        'OUTPUT': '{{ file_path }}'+'csv',
    },
    dag=dag
)

最好的方法是什么?

我知道如何使用bash运算符执行此操作,但想知道我们是否可以使用hive运算符

hive_ex = BashOperator(
    task_id='hive-ex',
    bash_command='hive -f hive.sql -DAY={{ ds }} >> {{ file_path }} 
    /file_{{ds}}.json',
    dag=dag
)

1 个答案:

答案 0 :(得分:1)

您需要气流挂钩。参见HooksHiveHook,有一种to_csv方法,也可以使用get_records方法然后自己完成。