【问题标题】:Running spark jobs on emr using airflow使用气流在 emr 上运行 spark 作业
【发布时间】:2022-02-01 12:45:55
【问题描述】:

我有一个 EC2 实例和一个 EMR。我想使用气流在 EMR 上运行 spark 作业。为此需要在哪里安装气流?

  • 在 EC2 实例上。
  • 在 EMR 主节点上。

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

【问题讨论】:

    标签: amazon-ec2 airflow amazon-emr


    【解决方案1】:

    您将在 ec2 上安装气流,我会建议安装它的容器化版本。 See this answer.

    要提交 spark 作业,您需要来自气流的EmrAddStepsOperator,并且您需要提供 spark-submit 的步骤。

    (注意:如果您是从脚本启动集群,您还需要使用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]
            }
        }
        ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-06
      • 2018-02-08
      • 2021-09-28
      • 2017-08-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多