使用气流在emr上运行火花作业



我有一个EC2实例和一个EMR。我想使用气流在电子病历上运行火花作业。为此,需要在哪里安装气流?

  • 在EC2实例上
  • 在电子病历主节点上

我正在考虑为此使用SparkSubmit运算符。创建气流任务时,我应该提供哪些论据?

您将在ec2上安装airflow,我建议安装它的容器化版本。

对于提交火花作业,您需要来自气流的EmrAddStepsOperator,并且您需要提供火花提交的步骤。

(注意:如果您从脚本启动集群,您还需要使用EmrCreateJobFlowOperator,请参阅此处的详细信息(

一个典型的提交步骤看起来像这个

spark_submit_step = [
{
'Name': 'Run Spark',
'ActionOnFailure': 'TERMINATE_CLUSTER',
'HadoopJarStep': {
'Jar': 'command-runner.jar',
'Args': ['spark-submit',
'--jars',
"/emr/instance-controller/lib/bootstrap-actions/1/spark-iforest-2.4.0.jar,/home/hadoop/mysql-connector-java-5.1.47.jar",
'--py-files',
'/home/hadoop/mysqlConnect.py',
'/home/hadoop/main.py',
'custum_argument',
another_custum_argument,
another_custom_argument]
}
}
]

最新更新