airflow依赖上游设置

1 周任务依赖与上游天任务

1 只依赖上周的最后一天

1) 实现方式01

# 获取上周最后一天的日期
def  getTrueWeek(ds):
    import  datetime
	# 循环到本周末
    while ds.weekday() != 6:
        ds += datetime.timedelta(days=1)
    # 格式化到上游的定时
    return ds.replace(hour=23, minute=10, second=0)
    
from airflow.sensors.external_task_sensor import ExternalTaskSensor
depend_tab='table_name'
check_task = ExternalTaskSensor(
    task_id='check_'+depend_tab,
    external_dag_id=depend_tab+'_dag',
    external_task_id='finish',
    allowed_states=['success'],
    execution_date_fn=getTrueWeek, # 获取上游的定时
    pool='check_pool',
    dag=main_dag
    )

2) 实现方式02

检测的上游表有多个时, 周任务直接依赖同个需求的天任务,因为 天任务的检测和周任务是相同的.

-

-

-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值