Поддерживает ли Airflow файл jar? - PullRequest
0 голосов
/ 25 апреля 2019

Я новичок в Airflow.У меня есть несколько заданий .jar, сгенерированных с помощью T alend Open Studio для больших данных , и я хочу планировать и управлять ими с помощью Airflow. Мой вопрос: поддерживает ли Airflow файл .jar или генерируется TOS как DAG ?и если это как?или есть какая-нибудь альтернатива для запуска .jar на Airlow?

Я использую Airflow v1.10.3. Задачи в основном состоят в том, чтобы извлекать и обрабатывать данные из базы данных mongodb, а затем обновлять базу данных новыми обработанными данными.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

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'
  )
0 голосов
/ 25 апреля 2019

Airflow с удовольствием запустит .jar файлы.Есть несколько примеров, на которые вы можете посмотреть.

Запуск стандартного .jar файла: run_jar.py

Запуск "встроенного" Talendjobl loan_application_data.py

Очевидно, что в обоих этих примерах файлы .jar или Talend должны находиться на сервере, на котором выполняется Airflow (а также на Java).

...