首页 > 解决方案 > Airflow 是否支持 jar 文件?

问题描述

我是气流的新手。我有一些使用Talend Open Studio for Big Data生成的 .jar 作业,我想使用 Airflow 安排和管理这些作业,我的问题是,Airflow 是否支持 .jar 文件或由 TOS 作为DAG生成 ?如果它怎么做?或者有什么替代方法可以在 Airlow 上运行 .jar 吗?

我使用 Airflow v1.10.3,这些工作主要是从 mongodb 数据库中提取和处理数据,然后用新处理的数据更新数据库。

谢谢 !

标签: jarairflowtalend

解决方案


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'
  )

推荐阅读