【原创】Airflow调用talend
核心原理
因为talend job build出来是一个可直接运行的程序,可以通过shell命名启动job进程,因此可以使用airflow的bashoperator调用生成好的talend job包里面的sh脚本,启动talend job。
设计talend job任务
本例子主要将一批数据同步到mysql表中
导出talend job
将设计好的talend job build到zip包。
定义airflow dag
新建个airflow dag python文件,例如如下脚本,其中job_commd就是我们平时写的调用shell脚本的一个命令。
# -*- coding: utf-8 -*- import airflow from datetime import datetime from datetime import timedelta from airflow.operators.bash_operator import BashOperator from airflow.models import DAG from airflow.utils.email import send_email job_commd = "/softwares/shellscripts/airflow_exec_talend_job_demo/airflow_exec_talend_job_demo/airflow_exec_talend_job_demo_run.sh '/softwares/shellscripts/airflow_exec_talend_job_demo/airflow_exec_talend_job_demo'" default_args = { 'owner': 'airflow', 'depends_on_past': False, 'start_date': datetime(2019, 11, 4), 'email': ['1183744742@qq.com'], 'email_on_failure': True, 'email_on_success': True, 'retries':2, 'retry_delay': timedelta(minutes=1), } dag = DAG( dag_id='airflow_exec_talend_job_demo', default_args=default_args, schedule_interval='0 12 * * *', dagrun_timeout=timedelta(minutes=60), ) t1 = BashOperator( task_id='airflow_talend_demo', bash_command=job_commd, dag=dag ) |
部署调度任务
运行查看是否可以正常入库
如果您觉得此文章对您有帮助,请点击右下方【推荐】让更多人看到,thanks!
【原创】Airflow调用talend的更多相关文章
- [原创]java调用PageOffice生成word
一.在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jac ...
- [原创]Java调用PageOffice给Word中的Table赋值
Word中的table操作需要借助数据区域(DataRegion)实现的,要求数据区域完整的包含了整个Table的内容,这样才可以通过数据区域控制和操作table.因此,要想使用table,则必须在w ...
- [原创]Java调用PageOffice在线打开数据库中保存的Word文件
PageOffice产品和数据库是两个独立的概念,严格来说两者之间没有任何本质关系.PageOffice不依赖数据库而存在,但是数据库和PageOffice可以结合使用来完成某些复杂的业务逻辑.例如: ...
- 建站时注意敏感词的添加_seo优化禁忌
之前接手一个站点,网站标题中出现一个“三级医院”的词,虽然这个词在我们看来是没有问题的,医院评级中“三级医院”算是等级很高的,很多医院为了体现等级会在明显的地方着重加注.但是我们要考虑一下搜索引擎的分 ...
- 黑马毕向东Java基础知识总结
Java基础知识总结(超级经典) 转自:百度文库 黑马毕向东JAVA基础总结笔记 侵删! 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部 ...
- 《果壳中的C# C# 5.0 权威指南》 - 学习笔记
<果壳中的C# C# 5.0 权威指南> ========== ========== ==========[作者] (美) Joseph Albahari (美) Ben Albahari ...
- 【原创分享·支付宝支付】HBuilder打包APP调用支付宝客户端支付
前言 最近有点空余时间,所以,就研究了一下APP支付.前面很早就搞完APP的微信支付了,但是由于时间上和应用上的情况,支付宝一直没空去研究.然后等我空了的时候,发现支付宝居然升级了支付逻辑,虽然目前还 ...
- 【原创】Matlab.NET混合编程技巧之直接调用Matlab内置函数
本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 Matlab和C#混合编程文章目录 :[目录]Matlab和C#混合编程文章目录 在我的上一篇文章[ ...
- [原创]VS2010中创建动态链接库及其调用
[原创]VS2010中创建动态链接库及其调用 一.创建动态链接库 在VS2010中创建动态链接库的步骤如下: 1)生成->编译->生成MyDll 二.调用 当调用DLL中的方法,程序编译产 ...
随机推荐
- win10 64位安装redis 及Redis Desktop Manager使用
说多无益,先把redis在win上的开发环境搭一下. redis官方没有64位的Windows下的可执行程序,目前有个开源的托管在github上, 地址:https://github.com/Serv ...
- Python函数作用域和匿名函数
匿名函数的定义 全局变量和局部变量的概念 global(全局变量)和 nonlocal(局部变量) 闭包.递归.回调 匿名函数 匿名函数 lambda 语法规则:lambda 参数 : 表达式 ...
- Plugin org.apache.maven.plugins:maven-resources-plugin:2.6
创建maven project时工程报错Plugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of its depende ...
- HTML&CSS基础-子元素和后代元素选择器
HTML&CSS基础-子元素和后代元素选择器 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.html源代码 <!DOCTYPE html> <html ...
- linux下查看程序占用多少内存
执行 ps auxVSZ(或VSS)列 表示,程序占用了多少虚拟内存:RSS列 表示, 程序占用了多少物理内存:虚拟内存可以不用考虑,它并不占用实际物理内存. 或执行top 命令 VIRT(或VSS) ...
- C++标准库删除字符串中指定字符,比如空格
参见:https://zh.cppreference.com/w/cpp/algorithm/remove 使用 erase 和 remove 配合. #include <algorithm&g ...
- django-订单并发处理--悲观锁和乐观锁
冲突比较少的时候,使用乐观锁. 冲突比较多的时候,使用悲观锁. (1) 悲观锁 select * from df_goods_sku where id=17 for update; 悲观锁获取 ...
- window.location.href方式提交json数据
${ctx}/vehicleFlow/to_vehflow_detail.do?strJson="+encodeURIComponent(json)
- ionic4 ion-picker用法
ion-picker实际开发中肯定多处使用,所以封装成服务的形式调用 新建picker.service服务模块 ionic g service picker import { Injectable ...
- ln -s 文件夹变成文件(txt) / linux 链接出错
问题: 平时没有注意过这这个问题,当我使用ln -s xxx yyy 将xxx 移动到yyy 路径时,文件夹就变成了txt文件, 解决: 找了半天,在stackoverflow上找到了答案,很简单, ...