【问题标题】:How to add a Step in Amazon EMR using Step Function如何使用 Step Function 在 Amazon EMR 中添加步骤
【发布时间】:2021-09-16 11:21:14
【问题描述】:

我是在 AWS 中创建 Step 函数的新手。我已经创建了一个 EMR 集群并想向它添加一个步骤。我正在使用以下命令:

 "Next": "Run first step"
    },
    "Run first step": {
      "Type": "Task",
      "Resource": "arn:aws:states:::elasticmapreduce:addStep.sync",
      "Parameters": {
        "ClusterId.$": "$.cluster.ClusterId",
        "Step": {
          "Name": "Run Data Transformation",
          "ActionOnFailure": "CONTINUE",
          "HadoopJarStep": {
            "Jar": "command-runner.jar",
            "Args": [
              "spark-submit s3://xdam-nyctaxi-emr-research/scripts/nyctaxi-tranform-task.py s3://xdam-nyctaxi-emr-research/data/nyctaxi-raw/nyc_taxi_trip_duration.csv s3://xdam-nyctaxi-emr-research/data/nyctaxi-transformed/"
            ]

检查我的 EMR 集群,step 参数应如下所示:

相反,它失败了,因为创建的步骤参数中有引号:

我怎样才能在没有引号的情况下传递参数?

【问题讨论】:

  • 您使用哪个库或平台提交此作业/步骤?

标签: amazon-web-services amazon-emr aws-step-functions


【解决方案1】:

Args 数组中的 spark-submit 不应该是像下面这样以数组形式放入的一个长字符串。

 'Args': [
                '/usr/bin/spark-submit',
                'you_script.py'
                's3://your_path',
                's3://your_path'
  ]

您可以按顺序或按名称传递 spark-submit 命令自己的参数,提供双破折号后跟名称 (-- ) 作为值之前的前一个数组元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-18
    • 2021-11-16
    • 1970-01-01
    • 1970-01-01
    • 2020-11-15
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多