class Aws::Glue::Types::JobUpdate

Specifies information used to update an existing job definition. The previous job definition is completely overwritten by this information.

@note When making an API call, you may pass JobUpdate

data as a hash:

    {
      description: "DescriptionString",
      log_uri: "UriString",
      role: "RoleString",
      execution_property: {
        max_concurrent_runs: 1,
      },
      command: {
        name: "GenericString",
        script_location: "ScriptLocationString",
        python_version: "PythonVersionString",
      },
      default_arguments: {
        "GenericString" => "GenericString",
      },
      non_overridable_arguments: {
        "GenericString" => "GenericString",
      },
      connections: {
        connections: ["GenericString"],
      },
      max_retries: 1,
      allocated_capacity: 1,
      timeout: 1,
      max_capacity: 1.0,
      worker_type: "Standard", # accepts Standard, G.1X, G.2X
      number_of_workers: 1,
      security_configuration: "NameString",
      notification_property: {
        notify_delay_after: 1,
      },
      glue_version: "GlueVersionString",
    }

@!attribute [rw] description

Description of the job being defined.
@return [String]

@!attribute [rw] log_uri

This field is reserved for future use.
@return [String]

@!attribute [rw] role

The name or Amazon Resource Name (ARN) of the IAM role associated
with this job (required).
@return [String]

@!attribute [rw] execution_property

An `ExecutionProperty` specifying the maximum number of concurrent
runs allowed for this job.
@return [Types::ExecutionProperty]

@!attribute [rw] command

The `JobCommand` that runs this job (required).
@return [Types::JobCommand]

@!attribute [rw] default_arguments

The default arguments for this job.

You can specify arguments here that your own job-execution script
consumes, as well as arguments that Glue itself consumes.

For information about how to specify and consume your own Job
arguments, see the [Calling Glue APIs in Python][1] topic in the
developer guide.

For information about the key-value pairs that Glue consumes to set
up your job, see the [Special Parameters Used by Glue][2] topic in
the developer guide.

[1]: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html
[2]: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
@return [Hash<String,String>]

@!attribute [rw] non_overridable_arguments

Non-overridable arguments for this job, specified as name-value
pairs.
@return [Hash<String,String>]

@!attribute [rw] connections

The connections used for this job.
@return [Types::ConnectionsList]

@!attribute [rw] max_retries

The maximum number of times to retry this job if it fails.
@return [Integer]

@!attribute [rw] allocated_capacity

This field is deprecated. Use `MaxCapacity` instead.

The number of Glue data processing units (DPUs) to allocate to this
job. You can allocate from 2 to 100 DPUs; the default is 10. A DPU
is a relative measure of processing power that consists of 4 vCPUs
of compute capacity and 16 GB of memory. For more information, see
the [Glue pricing page][1].

[1]: https://aws.amazon.com/glue/pricing/
@return [Integer]

@!attribute [rw] timeout

The job timeout in minutes. This is the maximum time that a job run
can consume resources before it is terminated and enters `TIMEOUT`
status. The default is 2,880 minutes (48 hours).
@return [Integer]

@!attribute [rw] max_capacity

For Glue version 1.0 or earlier jobs, using the standard worker
type, the number of Glue data processing units (DPUs) that can be
allocated when this job runs. A DPU is a relative measure of
processing power that consists of 4 vCPUs of compute capacity and 16
GB of memory. For more information, see the [Glue pricing page][1].

Do not set `Max Capacity` if using `WorkerType` and
`NumberOfWorkers`.

The value that can be allocated for `MaxCapacity` depends on whether
you are running a Python shell job or an Apache Spark ETL job:

* When you specify a Python shell job
  (`JobCommand.Name`="pythonshell"), you can allocate either
  0.0625 or 1 DPU. The default is 0.0625 DPU.

* When you specify an Apache Spark ETL job
  (`JobCommand.Name`="glueetl") or Apache Spark streaming ETL job
  (`JobCommand.Name`="gluestreaming"), you can allocate from 2 to
  100 DPUs. The default is 10 DPUs. This job type cannot have a
  fractional DPU allocation.

For Glue version 2.0 jobs, you cannot instead specify a `Maximum
capacity`. Instead, you should specify a `Worker type` and the
`Number of workers`.

[1]: https://aws.amazon.com/glue/pricing/
@return [Float]

@!attribute [rw] worker_type

The type of predefined worker that is allocated when a job runs.
Accepts a value of Standard, G.1X, or G.2X.

* For the `Standard` worker type, each worker provides 4 vCPU, 16 GB
  of memory and a 50GB disk, and 2 executors per worker.

* For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPU, 16
  GB of memory, 64 GB disk), and provides 1 executor per worker. We
  recommend this worker type for memory-intensive jobs.

* For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPU, 32
  GB of memory, 128 GB disk), and provides 1 executor per worker. We
  recommend this worker type for memory-intensive jobs.
@return [String]

@!attribute [rw] number_of_workers

The number of workers of a defined `workerType` that are allocated
when a job runs.

The maximum number of workers you can define are 299 for `G.1X`, and
149 for `G.2X`.
@return [Integer]

@!attribute [rw] security_configuration

The name of the `SecurityConfiguration` structure to be used with
this job.
@return [String]

@!attribute [rw] notification_property

Specifies the configuration properties of a job notification.
@return [Types::NotificationProperty]

@!attribute [rw] glue_version

Glue version determines the versions of Apache Spark and Python that
Glue supports. The Python version indicates the version supported
for jobs of type Spark.

For more information about the available Glue versions and
corresponding Spark and Python versions, see [Glue version][1] in
the developer guide.

[1]: https://docs.aws.amazon.com/glue/latest/dg/add-job.html
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/JobUpdate AWS API Documentation

Constants

SENSITIVE