Interface JobProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
JobProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.103.1 (build bef2dea)", date="2024-10-25T14:21:25.838Z") @Stability(Experimental) public interface JobProps extends software.amazon.jsii.JsiiSerializable
(experimental) Construction properties for Job.

Example:

 Job.Builder.create(this, "EnableSparkUI")
         .jobName("EtlJobWithSparkUIPrefix")
         .sparkUI(SparkUIProps.builder()
                 .enabled(true)
                 .build())
         .executable(JobExecutable.pythonEtl(PythonSparkJobExecutableProps.builder()
                 .glueVersion(GlueVersion.V3_0)
                 .pythonVersion(PythonVersion.THREE)
                 .script(Code.fromAsset(join(__dirname, "job-script", "hello_world.py")))
                 .build()))
         .build();
 
  • Method Details

    • getExecutable

      @Stability(Experimental) @NotNull JobExecutable getExecutable()
      (experimental) The job's executable properties.
    • getConnections

      @Stability(Experimental) @Nullable default List<IConnection> getConnections()
      (experimental) The Connections used for this job.

      Connections are used to connect to other AWS Service or resources within a VPC.

      Default: [] - no connections are added to the job

    • getContinuousLogging

      @Stability(Experimental) @Nullable default ContinuousLoggingProps getContinuousLogging()
      (experimental) Enables continuous logging with the specified props.

      Default: - continuous logging is disabled.

      See Also:
    • getDefaultArguments

      @Stability(Experimental) @Nullable default Map<String,String> getDefaultArguments()
      (experimental) The default arguments for this job, specified as name-value pairs.

      Default: - no arguments

      See Also:
    • getDescription

      @Stability(Experimental) @Nullable default String getDescription()
      (experimental) The description of the job.

      Default: - no value

    • getEnableProfilingMetrics

      @Stability(Experimental) @Nullable default Boolean getEnableProfilingMetrics()
      (experimental) Enables the collection of metrics for job profiling.

      Equivalent to a job parameter --enable-metrics.

      Default: - no profiling metrics emitted.

      See Also:
    • getExecutionClass

      @Stability(Experimental) @Nullable default ExecutionClass getExecutionClass()
      (experimental) The ExecutionClass whether the job is run with a standard or flexible execution class.

      Default: - STANDARD

      See Also:
    • getJobName

      @Stability(Experimental) @Nullable default String getJobName()
      (experimental) The name of the job.

      Default: - a name is automatically generated

    • getMaxCapacity

      @Stability(Experimental) @Nullable default Number getMaxCapacity()
      (experimental) The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs.

      Cannot be used for Glue version 2.0 and later - workerType and workerCount should be used instead.

      Default: - 10 when job type is Apache Spark ETL or streaming, 0.0625 when job type is Python shell

    • getMaxConcurrentRuns

      @Stability(Experimental) @Nullable default Number getMaxConcurrentRuns()
      (experimental) The maximum number of concurrent runs allowed for the job.

      An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit.

      Default: 1

    • getMaxRetries

      @Stability(Experimental) @Nullable default Number getMaxRetries()
      (experimental) The maximum number of times to retry this job after a job run fails.

      Default: 0

    • getNotifyDelayAfter

      @Stability(Experimental) @Nullable default Duration getNotifyDelayAfter()
      (experimental) The number of minutes to wait after a job run starts, before sending a job run delay notification.

      Default: - no delay notifications

    • getRole

      @Stability(Experimental) @Nullable default IRole getRole()
      (experimental) The IAM role assumed by Glue to run this job.

      If providing a custom role, it needs to trust the Glue service principal (glue.amazonaws.com) and be granted sufficient permissions.

      Default: - a role is automatically generated

      See Also:
    • getSecurityConfiguration

      @Stability(Experimental) @Nullable default ISecurityConfiguration getSecurityConfiguration()
      (experimental) The SecurityConfiguration to use for this job.

      Default: - no security configuration.

    • getSparkUI

      @Stability(Experimental) @Nullable default SparkUIProps getSparkUI()
      (experimental) Enables the Spark UI debugging and monitoring with the specified props.

      Default: - Spark UI debugging and monitoring is disabled.

      See Also:
    • getTags

      @Stability(Experimental) @Nullable default Map<String,String> getTags()
      (experimental) The tags to add to the resources on which the job runs.

      Default: {} - no tags

    • getTimeout

      @Stability(Experimental) @Nullable default Duration getTimeout()
      (experimental) The maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status.

      Default: cdk.Duration.hours(48)

    • getWorkerCount

      @Stability(Experimental) @Nullable default Number getWorkerCount()
      (experimental) The number of workers of a defined WorkerType that are allocated when a job runs.

      Default: - differs based on specific Glue version/worker type

    • getWorkerType

      @Stability(Experimental) @Nullable default WorkerType getWorkerType()
      (experimental) The type of predefined worker that is allocated when a job runs.

      Default: - differs based on specific Glue version

    • builder

      @Stability(Experimental) static JobProps.Builder builder()
      Returns:
      a JobProps.Builder of JobProps