Jobs
The Jobs API describes the data types and API related to creating, updating, deleting, or viewing jobs in AWS Glue.
Data types
Job structure
Specifies a job definition.
Fields
-
Name
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name you assign to this job definition.
-
JobMode
– UTF-8 string (valid values:SCRIPT=""
|VISUAL=""
|NOTEBOOK=""
).A mode that describes how a job was created. Valid values are:
-
SCRIPT
- The job was created using the AWS Glue Studio script editor. -
VISUAL
- The job was created using the AWS Glue Studio visual editor. -
NOTEBOOK
- The job was created using an interactive sessions notebook.
When the
JobMode
field is missing or null,SCRIPT
is assigned as the default value. -
-
JobRunQueuingEnabled
– Boolean.Specifies whether job run queuing is enabled for the job runs for this job.
A value of true means job run queuing is enabled for the job runs. If false or not populated, the job runs will not be considered for queueing.
If this field does not match the value set in the job run, then the value from the job run field will be used.
-
Description
– Description string, not more than 2048 bytes long, matching the URI address multi-line string pattern.A description of the job.
-
LogUri
– UTF-8 string.This field is reserved for future use.
-
Role
– UTF-8 string.The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
-
CreatedOn
– Timestamp.The time and date that this job definition was created.
-
LastModifiedOn
– Timestamp.The last point in time when this job definition was modified.
-
ExecutionProperty
– An ExecutionProperty object.An
ExecutionProperty
specifying the maximum number of concurrent runs allowed for this job. -
Command
– A JobCommand object.The
JobCommand
that runs this job. -
DefaultArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
The default arguments for every run of this job, specified as name-value pairs.
You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes.
Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets from a AWS Glue Connection, AWS Secrets Manager or other secret management mechanism if you intend to keep them within the Job.
For information about how to specify and consume your own Job arguments, see the Calling AWS Glue APIs in Python topic in the developer guide.
For information about the arguments you can provide to this field when configuring Spark jobs, see the Special Parameters Used by AWS Glue topic in the developer guide.
For information about the arguments you can provide to this field when configuring Ray jobs, see Using job parameters in Ray jobs in the developer guide.
-
NonOverridableArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
Arguments for this job that are not overridden when providing job arguments in a job run, specified as name-value pairs.
-
Connections
– A ConnectionsList object.The connections used for this job.
-
MaxRetries
– Number (integer).The maximum number of times to retry this job after a JobRun fails.
-
AllocatedCapacity
– Number (integer).This field is deprecated. Use
MaxCapacity
instead.The number of AWS Glue data processing units (DPUs) allocated to runs of this job. You can allocate a minimum of 2 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 AWS Glue pricing page
. -
Timeout
– Number (integer), at least 1.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) for batch jobs.Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.
-
MaxCapacity
– Number (double).For Glue version 1.0 or earlier jobs, using the standard worker type, the number of AWS 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 AWS Glue pricing page
. For Glue version 2.0 or later jobs, you cannot specify a
Maximum capacity
. Instead, you should specify aWorker type
and theNumber of workers
.Do not set
MaxCapacity
if usingWorkerType
andNumberOfWorkers
.The value that can be allocated for
MaxCapacity
depends on whether you are running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming 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.
-
-
WorkerType
– UTF-8 string (valid values:Standard=""
|G.1X=""
|G.2X=""
|G.025X=""
|G.4X=""
|G.8X=""
|Z.2X=""
).The type of predefined worker that is allocated when a job runs. Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.
-
For the
G.1X
worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.2X
worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 128GB disk (approximately 77GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.4X
worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). -
For the
G.8X
worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for theG.4X
worker type. -
For the
G.025X
worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 streaming jobs. -
For the
Z.2X
worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk (approximately 120GB free), and provides up to 8 Ray workers based on the autoscaler.
-
-
NumberOfWorkers
– Number (integer).The number of workers of a defined
workerType
that are allocated when a job runs. -
SecurityConfiguration
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the
SecurityConfiguration
structure to be used with this job. -
NotificationProperty
– A NotificationProperty object.Specifies configuration properties of a job notification.
-
Running
– Boolean.This field is reserved for future use.
-
GlueVersion
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Custom string pattern #20.In Spark jobs,
GlueVersion
determines the versions of Apache Spark and Python that AWS Glue available in a job. The Python version indicates the version supported for jobs of type Spark.Ray jobs should set
GlueVersion
to4.0
or greater. However, the versions of Ray, Python and additional libraries available in your Ray job are determined by theRuntime
parameter of the Job command.For more information about the available AWS Glue versions and corresponding Spark and Python versions, see Glue version in the developer guide.
Jobs that are created without specifying a Glue version default to Glue 0.9.
-
CodeGenConfigurationNodes
– A map array of key-value pairs.Each key is a UTF-8 string, matching the Custom string pattern #42.
Each value is a A CodeGenConfigurationNode object.
The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.
-
ExecutionClass
– UTF-8 string, not more than 16 bytes long (valid values:FLEX=""
|STANDARD=""
).Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources.
The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary.
Only jobs with AWS Glue version 3.0 and above and command type
glueetl
will be allowed to setExecutionClass
toFLEX
. The flexible execution class is available for Spark jobs. -
SourceControlDetails
– A SourceControlDetails object.The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.
-
MaintenanceWindow
– UTF-8 string, matching the Custom string pattern #30.This field specifies a day of the week and hour for a maintenance window for streaming jobs. AWS Glue periodically performs maintenance activities. During these maintenance windows, AWS Glue will need to restart your streaming jobs.
AWS Glue will restart the job within 3 hours of the specified maintenance window. For instance, if you set up the maintenance window for Monday at 10:00AM GMT, your jobs will be restarted between 10:00AM GMT to 1:00PM GMT.
-
ProfileName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of an AWS Glue usage profile associated with the job.
ExecutionProperty structure
An execution property of a job.
Fields
-
MaxConcurrentRuns
– Number (integer).The maximum number of concurrent runs allowed for the job. The default is 1. An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit.
NotificationProperty structure
Specifies configuration properties of a notification.
Fields
-
NotifyDelayAfter
– Number (integer), at least 1.After a job run starts, the number of minutes to wait before sending a job run delay notification.
JobCommand structure
Specifies code that runs when a job is run.
Fields
-
Name
– UTF-8 string.The name of the job command. For an Apache Spark ETL job, this must be
glueetl
. For a Python shell job, it must bepythonshell
. For an Apache Spark streaming ETL job, this must begluestreaming
. For a Ray job, this must beglueray
. -
ScriptLocation
– UTF-8 string, not more than 400000 bytes long.Specifies the Amazon Simple Storage Service (Amazon S3) path to a script that runs a job.
-
PythonVersion
– UTF-8 string, matching the Custom string pattern #21.The Python version being used to run a Python shell job. Allowed values are 2 or 3.
-
Runtime
– UTF-8 string, not more than 64 bytes long, matching the Custom string pattern #29.In Ray jobs, Runtime is used to specify the versions of Ray, Python and additional libraries available in your environment. This field is not used in other job types. For supported runtime environment values, see Supported Ray runtime environments in the AWS Glue Developer Guide.
ConnectionsList structure
Specifies the connections used by a job.
Fields
-
Connections
– An array of UTF-8 strings.A list of connections used by the job.
JobUpdate structure
Specifies information used to update an existing job definition. The previous job definition is completely overwritten by this information.
Fields
-
JobMode
– UTF-8 string (valid values:SCRIPT=""
|VISUAL=""
|NOTEBOOK=""
).A mode that describes how a job was created. Valid values are:
-
SCRIPT
- The job was created using the AWS Glue Studio script editor. -
VISUAL
- The job was created using the AWS Glue Studio visual editor. -
NOTEBOOK
- The job was created using an interactive sessions notebook.
When the
JobMode
field is missing or null,SCRIPT
is assigned as the default value. -
-
JobRunQueuingEnabled
– Boolean.Specifies whether job run queuing is enabled for the job runs for this job.
A value of true means job run queuing is enabled for the job runs. If false or not populated, the job runs will not be considered for queueing.
If this field does not match the value set in the job run, then the value from the job run field will be used.
-
Description
– Description string, not more than 2048 bytes long, matching the URI address multi-line string pattern.Description of the job being defined.
-
LogUri
– UTF-8 string.This field is reserved for future use.
-
Role
– UTF-8 string.The name or Amazon Resource Name (ARN) of the IAM role associated with this job (required).
-
ExecutionProperty
– An ExecutionProperty object.An
ExecutionProperty
specifying the maximum number of concurrent runs allowed for this job. -
Command
– A JobCommand object.The
JobCommand
that runs this job (required). -
DefaultArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
The default arguments for every run of this job, specified as name-value pairs.
You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes.
Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets from a AWS Glue Connection, AWS Secrets Manager or other secret management mechanism if you intend to keep them within the Job.
For information about how to specify and consume your own Job arguments, see the Calling AWS Glue APIs in Python topic in the developer guide.
For information about the arguments you can provide to this field when configuring Spark jobs, see the Special Parameters Used by AWS Glue topic in the developer guide.
For information about the arguments you can provide to this field when configuring Ray jobs, see Using job parameters in Ray jobs in the developer guide.
-
NonOverridableArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
Arguments for this job that are not overridden when providing job arguments in a job run, specified as name-value pairs.
-
Connections
– A ConnectionsList object.The connections used for this job.
-
MaxRetries
– Number (integer).The maximum number of times to retry this job if it fails.
-
AllocatedCapacity
– Number (integer).This field is deprecated. Use
MaxCapacity
instead.The number of AWS Glue data processing units (DPUs) to allocate to this job. You can allocate a minimum of 2 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 AWS Glue pricing page
. -
Timeout
– Number (integer), at least 1.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) for batch jobs.Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.
-
MaxCapacity
– Number (double).For Glue version 1.0 or earlier jobs, using the standard worker type, the number of AWS 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 AWS Glue pricing page
. For Glue version 2.0+ jobs, you cannot specify a
Maximum capacity
. Instead, you should specify aWorker type
and theNumber of workers
.Do not set
MaxCapacity
if usingWorkerType
andNumberOfWorkers
.The value that can be allocated for
MaxCapacity
depends on whether you are running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming 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.
-
-
WorkerType
– UTF-8 string (valid values:Standard=""
|G.1X=""
|G.2X=""
|G.025X=""
|G.4X=""
|G.8X=""
|Z.2X=""
).The type of predefined worker that is allocated when a job runs. Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.
-
For the
G.1X
worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.2X
worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 128GB disk (approximately 77GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.4X
worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). -
For the
G.8X
worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for theG.4X
worker type. -
For the
G.025X
worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 streaming jobs. -
For the
Z.2X
worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk (approximately 120GB free), and provides up to 8 Ray workers based on the autoscaler.
-
-
NumberOfWorkers
– Number (integer).The number of workers of a defined
workerType
that are allocated when a job runs. -
SecurityConfiguration
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the
SecurityConfiguration
structure to be used with this job. -
NotificationProperty
– A NotificationProperty object.Specifies the configuration properties of a job notification.
-
GlueVersion
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Custom string pattern #20.In Spark jobs,
GlueVersion
determines the versions of Apache Spark and Python that AWS Glue available in a job. The Python version indicates the version supported for jobs of type Spark.Ray jobs should set
GlueVersion
to4.0
or greater. However, the versions of Ray, Python and additional libraries available in your Ray job are determined by theRuntime
parameter of the Job command.For more information about the available AWS Glue versions and corresponding Spark and Python versions, see Glue version in the developer guide.
Jobs that are created without specifying a Glue version default to Glue 0.9.
-
CodeGenConfigurationNodes
– A map array of key-value pairs.Each key is a UTF-8 string, matching the Custom string pattern #42.
Each value is a A CodeGenConfigurationNode object.
The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.
-
ExecutionClass
– UTF-8 string, not more than 16 bytes long (valid values:FLEX=""
|STANDARD=""
).Indicates whether the job is run with a standard or flexible execution class. The standard execution-class is ideal for time-sensitive workloads that require fast job startup and dedicated resources.
The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary.
Only jobs with AWS Glue version 3.0 and above and command type
glueetl
will be allowed to setExecutionClass
toFLEX
. The flexible execution class is available for Spark jobs. -
SourceControlDetails
– A SourceControlDetails object.The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.
-
MaintenanceWindow
– UTF-8 string, matching the Custom string pattern #30.This field specifies a day of the week and hour for a maintenance window for streaming jobs. AWS Glue periodically performs maintenance activities. During these maintenance windows, AWS Glue will need to restart your streaming jobs.
AWS Glue will restart the job within 3 hours of the specified maintenance window. For instance, if you set up the maintenance window for Monday at 10:00AM GMT, your jobs will be restarted between 10:00AM GMT to 1:00PM GMT.
-
ProfileName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of an AWS Glue usage profile associated with the job.
SourceControlDetails structure
The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.
Fields
-
Provider
– UTF-8 string.The provider for the remote repository.
-
Repository
– UTF-8 string, not less than 1 or more than 512 bytes long.The name of the remote repository that contains the job artifacts.
-
Owner
– UTF-8 string, not less than 1 or more than 512 bytes long.The owner of the remote repository that contains the job artifacts.
-
Branch
– UTF-8 string, not less than 1 or more than 512 bytes long.An optional branch in the remote repository.
-
Folder
– UTF-8 string, not less than 1 or more than 512 bytes long.An optional folder in the remote repository.
-
LastCommitId
– UTF-8 string, not less than 1 or more than 512 bytes long.The last commit ID for a commit in the remote repository.
-
LastSyncTimestamp
– UTF-8 string, not less than 1 or more than 512 bytes long.The date and time that the last job synchronization was performed.
-
AuthStrategy
– UTF-8 string.The type of authentication, which can be an authentication token stored in AWS Secrets Manager, or a personal access token.
-
AuthToken
– UTF-8 string, not less than 1 or more than 512 bytes long.The value of an authorization token.
Operations
CreateJob action (Python: create_job)
Creates a new job definition.
Request
-
Name
– Required: UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name you assign to this job definition. It must be unique in your account.
-
JobMode
– UTF-8 string (valid values:SCRIPT=""
|VISUAL=""
|NOTEBOOK=""
).A mode that describes how a job was created. Valid values are:
-
SCRIPT
- The job was created using the AWS Glue Studio script editor. -
VISUAL
- The job was created using the AWS Glue Studio visual editor. -
NOTEBOOK
- The job was created using an interactive sessions notebook.
When the
JobMode
field is missing or null,SCRIPT
is assigned as the default value. -
-
JobRunQueuingEnabled
– Boolean.Specifies whether job run queuing is enabled for the job runs for this job.
A value of true means job run queuing is enabled for the job runs. If false or not populated, the job runs will not be considered for queueing.
If this field does not match the value set in the job run, then the value from the job run field will be used.
-
Description
– Description string, not more than 2048 bytes long, matching the URI address multi-line string pattern.Description of the job being defined.
-
LogUri
– UTF-8 string.This field is reserved for future use.
-
Role
– Required: UTF-8 string.The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
-
ExecutionProperty
– An ExecutionProperty object.An
ExecutionProperty
specifying the maximum number of concurrent runs allowed for this job. -
Command
– Required: A JobCommand object.The
JobCommand
that runs this job. -
DefaultArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
The default arguments for every run of this job, specified as name-value pairs.
You can specify arguments here that your own job-execution script consumes, as well as arguments that AWS Glue itself consumes.
Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets from a AWS Glue Connection, AWS Secrets Manager or other secret management mechanism if you intend to keep them within the Job.
For information about how to specify and consume your own Job arguments, see the Calling AWS Glue APIs in Python topic in the developer guide.
For information about the arguments you can provide to this field when configuring Spark jobs, see the Special Parameters Used by AWS Glue topic in the developer guide.
For information about the arguments you can provide to this field when configuring Ray jobs, see Using job parameters in Ray jobs in the developer guide.
-
NonOverridableArguments
– A map array of key-value pairs.Each key is a UTF-8 string.
Each value is a UTF-8 string.
Arguments for this job that are not overridden when providing job arguments in a job run, specified as name-value pairs.
-
Connections
– A ConnectionsList object.The connections used for this job.
-
MaxRetries
– Number (integer).The maximum number of times to retry this job if it fails.
-
AllocatedCapacity
– Number (integer).This parameter is deprecated. Use
MaxCapacity
instead.The number of AWS Glue data processing units (DPUs) to allocate to this Job. You can allocate a minimum of 2 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 AWS Glue pricing page
. -
Timeout
– Number (integer), at least 1.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) for batch jobs.Streaming jobs must have timeout values less than 7 days or 10080 minutes. When the value is left blank, the job will be restarted after 7 days based if you have not setup a maintenance window. If you have setup maintenance window, it will be restarted during the maintenance window after 7 days.
-
MaxCapacity
– Number (double).For Glue version 1.0 or earlier jobs, using the standard worker type, the number of AWS 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 AWS Glue pricing page
. For Glue version 2.0+ jobs, you cannot specify a
Maximum capacity
. Instead, you should specify aWorker type
and theNumber of workers
.Do not set
MaxCapacity
if usingWorkerType
andNumberOfWorkers
.The value that can be allocated for
MaxCapacity
depends on whether you are running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming 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.
-
-
SecurityConfiguration
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the
SecurityConfiguration
structure to be used with this job. -
Tags
– A map array of key-value pairs, not more than 50 pairs.Each key is a UTF-8 string, not less than 1 or more than 128 bytes long.
Each value is a UTF-8 string, not more than 256 bytes long.
The tags to use with this job. You may use tags to limit access to the job. For more information about tags in AWS Glue, see AWS Tags in AWS Glue in the developer guide.
-
NotificationProperty
– A NotificationProperty object.Specifies configuration properties of a job notification.
-
GlueVersion
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Custom string pattern #20.In Spark jobs,
GlueVersion
determines the versions of Apache Spark and Python that AWS Glue available in a job. The Python version indicates the version supported for jobs of type Spark.Ray jobs should set
GlueVersion
to4.0
or greater. However, the versions of Ray, Python and additional libraries available in your Ray job are determined by theRuntime
parameter of the Job command.For more information about the available AWS Glue versions and corresponding Spark and Python versions, see Glue version in the developer guide.
Jobs that are created without specifying a Glue version default to Glue 0.9.
-
NumberOfWorkers
– Number (integer).The number of workers of a defined
workerType
that are allocated when a job runs. -
WorkerType
– UTF-8 string (valid values:Standard=""
|G.1X=""
|G.2X=""
|G.025X=""
|G.4X=""
|G.8X=""
|Z.2X=""
).The type of predefined worker that is allocated when a job runs. Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.
-
For the
G.1X
worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.2X
worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 128GB disk (approximately 77GB free), and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. -
For the
G.4X
worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk (approximately 235GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). -
For the
G.8X
worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk (approximately 487GB free), and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for theG.4X
worker type. -
For the
G.025X
worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk (approximately 34GB free), and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 streaming jobs. -
For the
Z.2X
worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk (approximately 120GB free), and provides up to 8 Ray workers based on the autoscaler.
-
-
CodeGenConfigurationNodes
– A map array of key-value pairs.Each key is a UTF-8 string, matching the Custom string pattern #42.
Each value is a A CodeGenConfigurationNode object.
The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.
-
ExecutionClass
– UTF-8 string, not more than 16 bytes long (valid values:FLEX=""
|STANDARD=""
).Indicates whether the job is run with a standard or flexible execution class. The standard execution-class is ideal for time-sensitive workloads that require fast job startup and dedicated resources.
The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary.
Only jobs with AWS Glue version 3.0 and above and command type
glueetl
will be allowed to setExecutionClass
toFLEX
. The flexible execution class is available for Spark jobs. -
SourceControlDetails
– A SourceControlDetails object.The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.
-
MaintenanceWindow
– UTF-8 string, matching the Custom string pattern #30.This field specifies a day of the week and hour for a maintenance window for streaming jobs. AWS Glue periodically performs maintenance activities. During these maintenance windows, AWS Glue will need to restart your streaming jobs.
AWS Glue will restart the job within 3 hours of the specified maintenance window. For instance, if you set up the maintenance window for Monday at 10:00AM GMT, your jobs will be restarted between 10:00AM GMT to 1:00PM GMT.
-
ProfileName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of an AWS Glue usage profile associated with the job.
Response
-
Name
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The unique name that was provided for this job definition.
Errors
InvalidInputException
IdempotentParameterMismatchException
AlreadyExistsException
InternalServiceException
OperationTimeoutException
ResourceNumberLimitExceededException
ConcurrentModificationException
UpdateJob action (Python: update_job)
Updates an existing job definition. The previous job definition is completely overwritten by this information.
Request
-
JobName
– Required: UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the job definition to update.
-
JobUpdate
– Required: A JobUpdate object.Specifies the values with which to update the job definition. Unspecified configuration is removed or reset to default values.
-
ProfileName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of an AWS Glue usage profile associated with the job.
Response
-
JobName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.Returns the name of the updated job definition.
Errors
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
ConcurrentModificationException
GetJob action (Python: get_job)
Retrieves an existing job definition.
Request
-
JobName
– Required: UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the job definition to retrieve.
Response
-
Job
– A Job object.The requested job definition.
Errors
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
GetJobs action (Python: get_jobs)
Retrieves all current job definitions.
Request
-
NextToken
– UTF-8 string.A continuation token, if this is a continuation call.
-
MaxResults
– Number (integer), not less than 1 or more than 1000.The maximum size of the response.
Response
-
Jobs
– An array of Job objects.A list of job definitions.
-
NextToken
– UTF-8 string.A continuation token, if not all job definitions have yet been returned.
Errors
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
DeleteJob action (Python: delete_job)
Deletes a specified job definition. If the job definition is not found, no exception is thrown.
Request
-
JobName
– Required: UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the job definition to delete.
Response
-
JobName
– UTF-8 string, not less than 1 or more than 255 bytes long, matching the Single-line string pattern.The name of the job definition that was deleted.
Errors
InvalidInputException
InternalServiceException
OperationTimeoutException
ListJobs action (Python: list_jobs)
Retrieves the names of all job resources in this AWS account, or the resources with the specified tag. This operation allows you to see which resources are available in your account, and their names.
This operation takes the optional Tags
field, which you
can use as a filter on the response so that tagged resources can be retrieved as
a group. If you choose to use tags filtering, only resources with the tag are retrieved.
Request
-
NextToken
– UTF-8 string.A continuation token, if this is a continuation request.
-
MaxResults
– Number (integer), not less than 1 or more than 1000.The maximum size of a list to return.
-
Tags
– A map array of key-value pairs, not more than 50 pairs.Each key is a UTF-8 string, not less than 1 or more than 128 bytes long.
Each value is a UTF-8 string, not more than 256 bytes long.
Specifies to return only these tagged resources.
Response
-
JobNames
– An array of UTF-8 strings.The names of all jobs in the account, or the jobs with the specified tags.
-
NextToken
– UTF-8 string.A continuation token, if the returned list does not contain the last metric available.
Errors
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
BatchGetJobs action (Python: batch_get_jobs)
Returns a list of resource metadata for a given list of job names. After
calling the ListJobs
operation, you can call this operation to
access the data to which you have been granted permissions. This operation supports
all IAM permissions, including permission conditions that uses tags.
Request
-
JobNames
– Required: An array of UTF-8 strings.A list of job names, which might be the names returned from the
ListJobs
operation.
Response
-
Jobs
– An array of Job objects.A list of job definitions.
-
JobsNotFound
– An array of UTF-8 strings.A list of names of jobs not found.
Errors
InternalServiceException
OperationTimeoutException
InvalidInputException