Airflow 常见问题汇总
Airflow 常见问题汇总
1- 中文注释导致dag 不显示
2- task 依赖关系
3- dag 依赖
ExternalTaskSensor
参考以下代码:
# -*- coding: utf-8 -*-
import pendulum
import airflow
from airflow import DAG
from airflow.decorators import task
from airflow.operators.bash import BashOperator
from airflow.operators.python import PythonOperator
from airflow.operators.empty import EmptyOperator
from airflow.sensors.external_task import ExternalTaskSensor
import pandas as pd
from datetime import timedelta
from impala.dbapi import connect
import configparser#-------------------------------------------------------------------------------
# password meta file
ini_path = "/root/tmp/qiu_tmp/profile_kw.ini"def config_read_ini(db_name):config=configparser.ConfigParser()config.read(ini_path)db_host_o=config.get(db_name,"HOST")db_port_o=config.get(db_name,"PORT")db_user_o=config.get(db_name,"USERNAME")db_pass_o=config.get(db_name,"PASSWORD")db_base_o=config.get(db_name,"DB")db_ini = [db_host_o,db_port_o,db_user_o,db_pass_o,db_base_o]return db_ini# impala host_port_user_password read
impala_ini = config_read_ini("IMPALA")# read meta list
def read_meta_lst(db_nam):meta_sql = f'''select id,table_nam from bi_ods.dask_bi_meta where run_flag = 1 and table_nam like '{db_nam}%' order by id asc ; ''' cursor = connect(host=impala_ini[0],port=impala_ini[1],user=impala_ini[2],password=impala_ini[3],database=impala_ini[4]).cursor()cursor.execute(meta_sql)meta_lst = cursor.fetchall() print(meta_lst)meta_lst = [i[1] for i in meta_lst]cursor.close() print(meta_lst) return meta_lstdws_meta_lst = read_meta_lst('bi_data_dws')
ads_meta_lst = read_meta_lst('bi_ads_ads') default_args = {'owner': 'david.qiu','depends_on_past': False,'start_date': pendulum.datetime(2022, 12, 6, 22, tz="Asia/Shanghai"),'email': ['qiuswh@126.com'],'email_on_failure': False,'email_on_retry': False,'retries': 1,'retry_delay': timedelta(minutes=5)
}#-------------------------------------------------------------------------------
with DAG(dag_id="kw_dws_dag",default_args=default_args,description='kw_dws_dag',schedule='11 4 * * *'
) as dag:kw_dwd_dag_check=ExternalTaskSensor(task_id="kw_dwd_dag_check", external_dag_id='kw_dwd_dag', external_task_id=None, allowed_states=['success'], execution_delta=timedelta(minutes=10))start_task = EmptyOperator(task_id="start")mid_task = EmptyOperator(task_id="mid_task" )end_task = EmptyOperator(task_id="end" ) kw_dwd_dag_check >> start_taskfor i in range(len(dws_meta_lst)):dws_meta_lst[i] = BashOperator(task_id=dws_meta_lst[i],depends_on_past=False,bash_command=f'''ssh root@100.0.0.1 "impala-shell -f /root/bi/bi_data/{dws_meta_lst[i]} ;" ''' )start_task >> dws_meta_lst[i] >> mid_task for j in range(len(ads_meta_lst)):ads_meta_lst[j] = BashOperator(task_id=ads_meta_lst[j],depends_on_past=False,bash_command=f'''ssh root@100.0.0.1 "impala-shell -f /root/bi/bi_ads/{ads_meta_lst[j]} ;" ''' ) mid_task >> ads_meta_lst[j] >> end_taskdws_meta_lst[0] >> dws_meta_lst[2] ads_meta_lst[3] >> ads_meta_lst[0] ads_meta_lst[4] >> ads_meta_lst[1]
Airflow 常见问题汇总相关推荐
- AirFlow常见问题汇总
airflow常见问题的排查记录如下: 1,airflow怎么批量unpause大量的dag任务 普通少量任务可以通过命令airflow unpause dag_id命令来启动,或者在web界面点 ...
- exec不同文件l怎么汇总_ABAQUS常见问题汇总 - 2.0版.doc
您所在位置:网站首页 > 海量文档  > 计算机 > C/C++资料 ABAQUS常见问题汇总 - 2.0版.doc1 ...
- 使用maven下载依赖包及maven常见问题汇总
最近下载了SPRING3.1.4,发现只有SPRING相关的源码,没有其依赖的jar包.SPRING依赖的jar相当多,自己一个一个的下载比较费劲,就仔细阅读了SPRING下载说明,新版本的SPRIN ...
- java 遇到的问题_Java常见问题汇总(一)
原标题:Java常见问题汇总(一) 每天在写Java程序,其实里面有一些细节大家可能没怎么注意,这不,有人总结了一个我们编程中常见的问题.虽然一般没有什么大问题,但是最好别这样做.另外这里提到的很多问 ...
- 系统部署常见问题汇总
系统部署常见问题汇总 文章目录 系统部署常见问题汇总 引用文件路径问题 前端代码兼容IE问题 IE不支持Promise问题 IE浏览器GET请求缓存问题 前端代码混淆问题 npx的使用 IE兼容new ...
- 集成 jpush-react-native 常见问题汇总 ( iOS 篇)
给 iOS 应用添加推送功能是一件比较麻烦的事情,本篇文章收集了集成 jpush-react-native 的常见问题,目的是为了帮助用户更好地排查问题 1.收不到推送 确保是在真机上测试,而不是在模 ...
- fastText中常见问题汇总
fastText中常见问题汇总: 1.什么是fastText fastText是一个用于文本分类和词向量表示的库,它能够把文本转化成连续的向量然后用于后续具体的语言任务,目前教程较少! 2.为什么训练 ...
- 软考考后常见问题汇总
摘要:软考考后常见问题汇总,查询成绩.证书领取.考试复核等 一.考试分数线什么时间出?合格分数线会不会有变化? 答:合格分数线出成绩一个月左右,如2020年12月18日出成绩,2021年1月11日出合 ...
- oracle 数据库问题,ORACLE数据库常见问题汇总,oracle常见问题汇总
ORACLE数据库常见问题汇总,oracle常见问题汇总 提交事务的时候提示(数据库被一个用户锁住的解决方法) select object_id,session_id,locked_mode from ...
最新文章
- [翻译]Joomla 1.5架构(十一) model 包
- 072_Math对象
- Nginx+Keepalived实现双机热备
- Theano2.1.5-基础知识之打印出theano的图
- 学习笔记-AngularJs(四)
- CF1042F Leaf Sets (贪心+树上构造)
- 哈工大未来计算机院士,2017年中国高校新增工程院院士名单出炉,哈工大依然很强!...
- iframe内容适应div大小_使用lt;iframegt;方式在WordPress中插入视频并自适应屏幕尺寸
- 虚拟化、云计算、开放源代码及其他
- 数字图像处理,中值滤波和均值滤波及其改进算法的C++实现
- 谷歌浏览器报错“您的连接不是私密连接攻击者可能会试图从 xxx 窃取您的信息(例如:密码、通讯内容或信用卡信息)“
- 芯邦主控的U盘量产教程
- 安卓手机卸载手机自带软件(adb)
- java excel 饼图_Java 在 Excel 中创建饼图/环形图
- 第五天学习--存储结构与磁盘划分
- MAC系统下解决Teamviewer 是商业用途只能连5分钟的问题--修改Teamviewer的id
- error: resource style/Theme.AppCompat.Light.NoActionBar
- Android课程设计:基于离线地图服务器的Android地图应用
- Unity之2D摄像机跟随
- SSAO By Computer Shader(三)