我对Airflow很新,而且我遇到了这个问题:我有一个dag处理txt文件并将它们转换为csv,这是配置:
one_days_ago = datetime.combine(datetime.today() - timedelta(1),
datetime.min.time())
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': one_days_ago,
'email_on_failure': False,
'email_on_retry': False,
'retries': 1,
'retry_delay': timedelta(minutes=1),
'max_active_runs':1,
# 'queue': 'bash_queue',
# 'pool': 'backfill',
# 'priority_weight': 10,
# 'end_date': datetime(2016, 1, 1),
}
dag = DAG('process_file', default_args=default_args, schedule_interval='@daily')
问题是,当dag运行时,从当天处理文件,但也会提供以前的运行结果,所以我不会只有一个csv文件,就在今天,我有那个和其他4个或前几天的5个文件。 我读过关于回填的文章,但我不确定如何避免它或我做错了什么。有什么建议吗?可以清除以前执行的成功运行结果吗?
答案 0 :(得分:0)
当DAG的start_date发生变化时,Airflow不喜欢它。事实上,在最新版本(1.8+)中,如果你的start_date不明确,它将抛出异常。我想如果你保持start_date固定不会重新运行所有内容。