气流是否支持jar文件?
我是个新手。我有一些用Talend Open Studio for Big Data生成的.jar作业,我想安排和管理这些作业,我的问题是,Airflow支持.jar文件还是由TOS生成为DAG? 如果真是这样,怎么办? 或者有没有其他方法可以在Airlow上运行.jar im使用气流v1.10.3 这些工作主要是从mongodb数据库中提取和处理数据,然后用新处理的数据更新数据库气流是否支持jar文件?,jar,airflow,talend,Jar,Airflow,Talend,我是个新手。我有一些用Talend Open Studio for Big Data生成的.jar作业,我想安排和管理这些作业,我的问题是,Airflow支持.jar文件还是由TOS生成为DAG? 如果真是这样,怎么办? 或者有没有其他方法可以在Airlow上运行.jar im使用气流v1.10.3 这些工作主要是从mongodb数据库中提取和处理数据,然后用新处理的数据更新数据库 谢谢 气流将愉快地运行.jar文件。这里有几个例子供您参考 运行标准的.jar文件: 运行“内置”Talend作业
谢谢 气流将愉快地运行
.jar
文件。这里有几个例子供您参考
运行标准的.jar
文件:
运行“内置”Talend作业
显然,对于这两个示例,
.jar
或Talend文件需要位于Airflow正在执行的服务器(以及Java)上。Airflow确实支持运行jar文件。您可以通过bash操作符执行此操作
快速示例:
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'
)
谢谢你的回答@Tomme,当你说他们需要在Airflow服务器上时,你的意思是.py文件需要在Airflow\u HOME/dags
下?不用担心。是的,您需要在dags
文件夹中保存DAG文件,但我的意思是执行任务的“工作人员”需要能够查看.jar
文件。如果您只在本地运行Airflow(LocalExecutor
),那么您不必担心,但是如果您计划远程执行作业(CeleryExecutor
/KuberneteSecutor
),那么这是您需要考虑的问题。我明白了,谢谢您提供的信息!现在我需要能够在本地执行我的DAG,但是我仍然很难导入talend生成的库来执行我的DAG(.jar)