Interface SparkJobProps

All Superinterfaces:
JobProps, software.amazon.jsii.JsiiSerializable
All Known Subinterfaces:
PySparkEtlJobProps, PySparkFlexEtlJobProps, PySparkStreamingJobProps, ScalaSparkEtlJobProps, ScalaSparkFlexEtlJobProps, ScalaSparkStreamingJobProps
All Known Implementing Classes:
PySparkEtlJobProps.Jsii$Proxy, PySparkFlexEtlJobProps.Jsii$Proxy, PySparkStreamingJobProps.Jsii$Proxy, ScalaSparkEtlJobProps.Jsii$Proxy, ScalaSparkFlexEtlJobProps.Jsii$Proxy, ScalaSparkStreamingJobProps.Jsii$Proxy, SparkJobProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.113.0 (build fc68b25)", date="2025-09-02T11:25:43.228Z") @Stability(Experimental) public interface SparkJobProps extends software.amazon.jsii.JsiiSerializable, JobProps
(experimental) Common properties for different types of Spark jobs.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.glue.alpha.*;
 import software.amazon.awscdk.*;
 import software.amazon.awscdk.services.iam.*;
 import software.amazon.awscdk.services.logs.*;
 import software.amazon.awscdk.services.s3.*;
 Bucket bucket;
 Code code;
 Connection connection;
 LogGroup logGroup;
 Role role;
 SecurityConfiguration securityConfiguration;
 SparkJobProps sparkJobProps = SparkJobProps.builder()
         .role(role)
         .script(code)
         // the properties below are optional
         .connections(List.of(connection))
         .continuousLogging(ContinuousLoggingProps.builder()
                 .enabled(false)
                 // the properties below are optional
                 .conversionPattern("conversionPattern")
                 .logGroup(logGroup)
                 .logStreamPrefix("logStreamPrefix")
                 .quiet(false)
                 .build())
         .defaultArguments(Map.of(
                 "defaultArgumentsKey", "defaultArguments"))
         .description("description")
         .enableMetrics(false)
         .enableObservabilityMetrics(false)
         .enableProfilingMetrics(false)
         .glueVersion(GlueVersion.V0_9)
         .jobName("jobName")
         .maxConcurrentRuns(123)
         .maxRetries(123)
         .numberOfWorkers(123)
         .securityConfiguration(securityConfiguration)
         .sparkUI(SparkUIProps.builder()
                 .bucket(bucket)
                 .prefix("prefix")
                 .build())
         .tags(Map.of(
                 "tagsKey", "tags"))
         .timeout(Duration.minutes(30))
         .workerType(WorkerType.STANDARD)
         .build();
 
  • Method Details

    • getEnableMetrics

      @Stability(Experimental) @Nullable default Boolean getEnableMetrics()
      (experimental) Enable profiling metrics for the Glue job.

      When enabled, adds '--enable-metrics' to job arguments.

      Default: true

    • getEnableObservabilityMetrics

      @Stability(Experimental) @Nullable default Boolean getEnableObservabilityMetrics()
      (experimental) Enable observability metrics for the Glue job.

      When enabled, adds '--enable-observability-metrics': 'true' to job arguments.

      Default: true

    • 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:
    • builder

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