我是Airflow的新手。我有一些使用T alend Open Studio for Big Data 生成的.jar作业,我想使用Airflow计划和管理这些工作。我的问题是,Airflow是否支持.jar文件或由TOS生成为 DAG ? 如果是怎么办? 还是有其他方法可以在Airlow上运行.jar?
使用Airflow v1.10.3的im 这些工作主要是从mongodb数据库中提取和处理数据,然后使用新处理的数据更新数据库。
谢谢!
答案 0 :(得分:0)
Airflow将愉快地运行.jar
文件。有几个例子供您参考。
运行标准.jar
文件:run_jar.py
运行“内置” Talend Jobl loan_application_data.py
很显然,在这两个示例中,.jar
或Talend文件都将需要在正在运行Airflow(以及Java)的服务器上。
答案 1 :(得分:0)
Airflow不支持运行jar文件。您可以通过BashOperator
执行此操作。
快速示例:
from airflow import DAG
from airflow.operators import BashOperator
from datetime import datetime
import os
import sys
args = {
'owner': 'you',
'start_date': datetime(2019, 4, 24),
'provide_context': True
}
dag = DAG(
task_id = 'runjar',
schedule_interval = None, #manually triggered
default_args = args)
run_jar_task= BashOperator(
task_id = 'runjar',
dag = dag,
bash_command = 'java -cp /path/to/your/jar.jar param1 param2'
)