jar - Airflow 支持 jar 文件吗?

标签 jar airflow talend

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

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

谢谢!

最佳答案

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

关于jar - Airflow 支持 jar 文件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55850929/

相关文章:

maven - 如何将JAR部署到Maven远程仓库

java - 在 Eclipse 中使用 .jars

python - Airflow Python 运算符传递参数

java - Talend-如何将字符串从 'MATCHING' 列替换为 'contactFirstName' 列

sql-server - 在 Talend 中处理数据截断

java - 使用依赖项和测试在 Maven 中生成 jar 文件

java - 带有 sqlite 驱动程序的 Jar 可执行文件

directed-acyclic-graphs - Apache Airflow 2.0.0.b2 - 动态 EmailOperator [文件] 属性

airflow - Airflow 中的 CeleryExecutor 不会并行化 subdag 中的任务

java - 为 Talend 设置 Java 环境变量