Apache spark 调度Spark流作业
我有一个Spark流作业,正在使用Spark提交脚本手动运行。我想安排它每天运行 Azkaban、Airflow、Oozie、Crontab、Spark jobserver、Quartz和Luigi哪个更好Apache spark 调度Spark流作业,apache-spark,spark-streaming,job-scheduling,airflow,azkaban,Apache Spark,Spark Streaming,Job Scheduling,Airflow,Azkaban,我有一个Spark流作业,正在使用Spark提交脚本手动运行。我想安排它每天运行 Azkaban、Airflow、Oozie、Crontab、Spark jobserver、Quartz和Luigi哪个更好 任何建议,谢谢 我得到了一个与Oozie和Airflow合作的机会。 最初我是从Oozie开始的,但是Oozie对于spark 2.0来说根本不是一个好的选择。我无法使用Oozie运行我的Spark2.0作业。 然后,我转到气流,这是快速和容易设置。它提供了足够的示例,可以从基本工作流开始。
任何建议,谢谢 我得到了一个与Oozie和Airflow合作的机会。 最初我是从Oozie开始的,但是Oozie对于spark 2.0来说根本不是一个好的选择。我无法使用Oozie运行我的Spark2.0作业。 然后,我转到气流,这是快速和容易设置。它提供了足够的示例,可以从基本工作流开始。 您可以快速浏览所有这些内容,或者等待从事所有这些工作的人员提供一些反馈。 根据您的要求,气流足够好。如果选择“气流”,则使用下面的DAG,该DAG将满足您的要求
import airflow
from airflow.models import DAG
from airflow.operators.bash_operator import BashOperator
from datetime import timedelta
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2017, 8, 23,22,40),
'end-date': datetime(2017, 9, 20, 22, 40),
'retries': 1,
'retry_delay': timedelta(minutes=5),
}
dag = DAG(
'Spark-Workflow-DAG',
default_args=default_args,
description='Spark workflow',
schedule_interval=timedelta(days=1))
t1 = BashOperator(
task_id='Execute_Spark_Streaming_Job',
bash_command="your complete spark submit command with all the arguments",
dag=dag)
一些对我有帮助的链接。