我对airflow和python都是新手,我正在尝试配置一个定时报告。报告需要从配置单元中提取数据并通过电子邮件发送结果。
到目前为止我的代码是:
from datetime import datetime, timedelta
from airflow import DAG
from airflow.operators.hive_operator import HiveOperator
default_args = {
'owner': 'me',
'depends_on_past': False,
'start_date': datetime(2015, 1, 1),
'email': ['email@example.com'],
'email_on_failure': True,
'email_on_retry': True,
'retries': 3,
'retry_delay': timedelta(hours=2)
}
dag = DAG(
dag_id='hive_report',
max_active_runs=1,
default_args=default_args,
schedule_interval='@once')
query = """
#query goes here
"""
run_hive_query = HiveOperator(
task_id="fetch_data",
hql=query,
dag=dag
)
我很确定我需要添加一个emailoperator任务来发送结果,因为它似乎只配置为在失败或重试时发送电子邮件。
我的问题是:hive操作符对结果集做了什么?将结果集从一个任务传递到另一个任务的最佳方法是什么?
暂无答案!
目前还没有任何答案,快来回答吧!