@aws-cdk/aws-glue-alpha 2.12.0-alpha.0 → 2.13.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +3 -3
- package/.jsii.tabl.json +52 -52
- package/.warnings.jsii.js +3 -3
- package/lib/code.d.ts +10 -39
- package/lib/code.js +11 -34
- package/lib/connection.d.ts +31 -88
- package/lib/connection.js +15 -39
- package/lib/data-format.d.ts +32 -111
- package/lib/data-format.js +29 -91
- package/lib/database.d.ts +14 -47
- package/lib/database.js +3 -11
- package/lib/job-executable.d.ts +65 -136
- package/lib/job-executable.js +43 -66
- package/lib/job.d.ts +107 -215
- package/lib/job.js +60 -62
- package/lib/schema.d.ts +23 -69
- package/lib/schema.js +18 -51
- package/lib/security-configuration.d.ts +31 -83
- package/lib/security-configuration.js +25 -13
- package/lib/table.d.ts +48 -145
- package/lib/table.js +33 -36
- package/package.json +7 -7
package/lib/job.d.ts
CHANGED
|
@@ -9,202 +9,149 @@ import { JobExecutable } from '.';
|
|
|
9
9
|
import { IConnection } from './connection';
|
|
10
10
|
import { ISecurityConfiguration } from './security-configuration';
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* The type of predefined worker that is allocated when a job runs.
|
|
13
13
|
*
|
|
14
14
|
* If you need to use a WorkerType that doesn't exist as a static member, you
|
|
15
15
|
* can instantiate a `WorkerType` object, e.g: `WorkerType.of('other type')`.
|
|
16
|
-
*
|
|
17
|
-
* @experimental
|
|
18
16
|
*/
|
|
19
17
|
export declare class WorkerType {
|
|
20
18
|
/**
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
* @experimental
|
|
19
|
+
* Each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker.
|
|
24
20
|
*/
|
|
25
21
|
static readonly STANDARD: WorkerType;
|
|
26
22
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* Suitable for memory-intensive jobs.
|
|
30
|
-
*
|
|
31
|
-
* @experimental
|
|
23
|
+
* Each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. Suitable for memory-intensive jobs.
|
|
32
24
|
*/
|
|
33
25
|
static readonly G_1X: WorkerType;
|
|
34
26
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* Suitable for memory-intensive jobs.
|
|
38
|
-
*
|
|
39
|
-
* @experimental
|
|
27
|
+
* Each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. Suitable for memory-intensive jobs.
|
|
40
28
|
*/
|
|
41
29
|
static readonly G_2X: WorkerType;
|
|
42
30
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
* @param workerType custom worker type.
|
|
46
|
-
* @experimental
|
|
31
|
+
* Custom worker type
|
|
32
|
+
* @param workerType custom worker type
|
|
47
33
|
*/
|
|
48
34
|
static of(workerType: string): WorkerType;
|
|
49
35
|
/**
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* @experimental
|
|
36
|
+
* The name of this WorkerType, as expected by Job resource.
|
|
53
37
|
*/
|
|
54
38
|
readonly name: string;
|
|
55
39
|
private constructor();
|
|
56
40
|
}
|
|
57
41
|
/**
|
|
58
|
-
*
|
|
42
|
+
* Job states emitted by Glue to CloudWatch Events.
|
|
59
43
|
*
|
|
60
44
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types for more information.
|
|
61
|
-
* @experimental
|
|
62
45
|
*/
|
|
63
46
|
export declare enum JobState {
|
|
64
47
|
/**
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
* @experimental
|
|
48
|
+
* State indicating job run succeeded
|
|
68
49
|
*/
|
|
69
50
|
SUCCEEDED = "SUCCEEDED",
|
|
70
51
|
/**
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* @experimental
|
|
52
|
+
* State indicating job run failed
|
|
74
53
|
*/
|
|
75
54
|
FAILED = "FAILED",
|
|
76
55
|
/**
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* @experimental
|
|
56
|
+
* State indicating job run timed out
|
|
80
57
|
*/
|
|
81
58
|
TIMEOUT = "TIMEOUT",
|
|
82
59
|
/**
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* @experimental
|
|
60
|
+
* State indicating job is starting
|
|
86
61
|
*/
|
|
87
62
|
STARTING = "STARTING",
|
|
88
63
|
/**
|
|
89
|
-
*
|
|
90
|
-
*
|
|
91
|
-
* @experimental
|
|
64
|
+
* State indicating job is running
|
|
92
65
|
*/
|
|
93
66
|
RUNNING = "RUNNING",
|
|
94
67
|
/**
|
|
95
|
-
*
|
|
96
|
-
*
|
|
97
|
-
* @experimental
|
|
68
|
+
* State indicating job is stopping
|
|
98
69
|
*/
|
|
99
70
|
STOPPING = "STOPPING",
|
|
100
71
|
/**
|
|
101
|
-
*
|
|
102
|
-
*
|
|
103
|
-
* @experimental
|
|
72
|
+
* State indicating job stopped
|
|
104
73
|
*/
|
|
105
74
|
STOPPED = "STOPPED"
|
|
106
75
|
}
|
|
107
76
|
/**
|
|
108
|
-
*
|
|
77
|
+
* The Glue CloudWatch metric type.
|
|
109
78
|
*
|
|
110
79
|
* @see https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html
|
|
111
|
-
* @experimental
|
|
112
80
|
*/
|
|
113
81
|
export declare enum MetricType {
|
|
114
82
|
/**
|
|
115
|
-
*
|
|
116
|
-
*
|
|
117
|
-
* @experimental
|
|
83
|
+
* A value at a point in time.
|
|
118
84
|
*/
|
|
119
85
|
GAUGE = "gauge",
|
|
120
86
|
/**
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
* @experimental
|
|
87
|
+
* An aggregate number.
|
|
124
88
|
*/
|
|
125
89
|
COUNT = "count"
|
|
126
90
|
}
|
|
127
91
|
/**
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
* @experimental
|
|
92
|
+
* Interface representing a created or an imported {@link Job}.
|
|
131
93
|
*/
|
|
132
94
|
export interface IJob extends cdk.IResource, iam.IGrantable {
|
|
133
95
|
/**
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
* @experimental
|
|
137
|
-
* @attribute true
|
|
96
|
+
* The name of the job.
|
|
97
|
+
* @attribute
|
|
138
98
|
*/
|
|
139
99
|
readonly jobName: string;
|
|
140
100
|
/**
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
* @experimental
|
|
144
|
-
* @attribute true
|
|
101
|
+
* The ARN of the job.
|
|
102
|
+
* @attribute
|
|
145
103
|
*/
|
|
146
104
|
readonly jobArn: string;
|
|
147
105
|
/**
|
|
148
|
-
*
|
|
106
|
+
* Defines a CloudWatch event rule triggered when something happens with this job.
|
|
149
107
|
*
|
|
150
108
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
151
|
-
* @experimental
|
|
152
109
|
*/
|
|
153
110
|
onEvent(id: string, options?: events.OnEventOptions): events.Rule;
|
|
154
111
|
/**
|
|
155
|
-
*
|
|
112
|
+
* Defines a CloudWatch event rule triggered when this job moves to the input jobState.
|
|
156
113
|
*
|
|
157
114
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
158
|
-
* @experimental
|
|
159
115
|
*/
|
|
160
116
|
onStateChange(id: string, jobState: JobState, options?: events.OnEventOptions): events.Rule;
|
|
161
117
|
/**
|
|
162
|
-
*
|
|
118
|
+
* Defines a CloudWatch event rule triggered when this job moves to the SUCCEEDED state.
|
|
163
119
|
*
|
|
164
120
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
165
|
-
* @experimental
|
|
166
121
|
*/
|
|
167
122
|
onSuccess(id: string, options?: events.OnEventOptions): events.Rule;
|
|
168
123
|
/**
|
|
169
|
-
*
|
|
124
|
+
* Defines a CloudWatch event rule triggered when this job moves to the FAILED state.
|
|
170
125
|
*
|
|
171
126
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
172
|
-
* @experimental
|
|
173
127
|
*/
|
|
174
128
|
onFailure(id: string, options?: events.OnEventOptions): events.Rule;
|
|
175
129
|
/**
|
|
176
|
-
*
|
|
130
|
+
* Defines a CloudWatch event rule triggered when this job moves to the TIMEOUT state.
|
|
177
131
|
*
|
|
178
132
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
179
|
-
* @experimental
|
|
180
133
|
*/
|
|
181
134
|
onTimeout(id: string, options?: events.OnEventOptions): events.Rule;
|
|
182
135
|
/**
|
|
183
|
-
*
|
|
136
|
+
* Create a CloudWatch metric.
|
|
184
137
|
*
|
|
185
138
|
* @param metricName name of the metric typically prefixed with `glue.driver.`, `glue.<executorId>.` or `glue.ALL.`.
|
|
186
139
|
* @param type the metric type.
|
|
187
140
|
* @param props metric options.
|
|
141
|
+
*
|
|
188
142
|
* @see https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html
|
|
189
|
-
* @experimental
|
|
190
143
|
*/
|
|
191
144
|
metric(metricName: string, type: MetricType, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
192
145
|
/**
|
|
193
|
-
*
|
|
194
|
-
*
|
|
195
|
-
* @experimental
|
|
146
|
+
* Create a CloudWatch Metric indicating job success.
|
|
196
147
|
*/
|
|
197
148
|
metricSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
198
149
|
/**
|
|
199
|
-
*
|
|
200
|
-
*
|
|
201
|
-
* @experimental
|
|
150
|
+
* Create a CloudWatch Metric indicating job failure.
|
|
202
151
|
*/
|
|
203
152
|
metricFailure(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
204
153
|
/**
|
|
205
|
-
*
|
|
206
|
-
*
|
|
207
|
-
* @experimental
|
|
154
|
+
* Create a CloudWatch Metric indicating job timeout.
|
|
208
155
|
*/
|
|
209
156
|
metricTimeout(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
210
157
|
}
|
|
@@ -213,79 +160,72 @@ declare abstract class JobBase extends cdk.Resource implements IJob {
|
|
|
213
160
|
abstract readonly jobName: string;
|
|
214
161
|
abstract readonly grantPrincipal: iam.IPrincipal;
|
|
215
162
|
/**
|
|
216
|
-
*
|
|
163
|
+
* Create a CloudWatch Event Rule for this Glue Job when it's in a given state
|
|
164
|
+
*
|
|
165
|
+
* @param id construct id
|
|
166
|
+
* @param options event options. Note that some values are overridden if provided, these are
|
|
167
|
+
* - eventPattern.source = ['aws.glue']
|
|
168
|
+
* - eventPattern.detailType = ['Glue Job State Change', 'Glue Job Run Status']
|
|
169
|
+
* - eventPattern.detail.jobName = [this.jobName]
|
|
217
170
|
*
|
|
218
|
-
* @param id construct id.
|
|
219
|
-
* @param options event options.
|
|
220
171
|
* @see https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types
|
|
221
|
-
* @experimental
|
|
222
172
|
*/
|
|
223
173
|
onEvent(id: string, options?: events.OnEventOptions): events.Rule;
|
|
224
174
|
/**
|
|
225
|
-
*
|
|
175
|
+
* Create a CloudWatch Event Rule for the transition into the input jobState.
|
|
226
176
|
*
|
|
227
177
|
* @param id construct id.
|
|
228
178
|
* @param jobState the job state.
|
|
229
179
|
* @param options optional event options.
|
|
230
|
-
* @experimental
|
|
231
180
|
*/
|
|
232
181
|
onStateChange(id: string, jobState: JobState, options?: events.OnEventOptions): events.Rule;
|
|
233
182
|
/**
|
|
234
|
-
*
|
|
183
|
+
* Create a CloudWatch Event Rule matching JobState.SUCCEEDED.
|
|
235
184
|
*
|
|
236
185
|
* @param id construct id.
|
|
237
|
-
* @param options optional event options.
|
|
238
|
-
* @experimental
|
|
186
|
+
* @param options optional event options. default is {}.
|
|
239
187
|
*/
|
|
240
188
|
onSuccess(id: string, options?: events.OnEventOptions): events.Rule;
|
|
241
189
|
/**
|
|
242
|
-
*
|
|
190
|
+
* Return a CloudWatch Event Rule matching FAILED state.
|
|
243
191
|
*
|
|
244
192
|
* @param id construct id.
|
|
245
|
-
* @param options optional event options.
|
|
246
|
-
* @experimental
|
|
193
|
+
* @param options optional event options. default is {}.
|
|
247
194
|
*/
|
|
248
195
|
onFailure(id: string, options?: events.OnEventOptions): events.Rule;
|
|
249
196
|
/**
|
|
250
|
-
*
|
|
197
|
+
* Return a CloudWatch Event Rule matching TIMEOUT state.
|
|
251
198
|
*
|
|
252
199
|
* @param id construct id.
|
|
253
|
-
* @param options optional event options.
|
|
254
|
-
* @experimental
|
|
200
|
+
* @param options optional event options. default is {}.
|
|
255
201
|
*/
|
|
256
202
|
onTimeout(id: string, options?: events.OnEventOptions): events.Rule;
|
|
257
203
|
/**
|
|
258
|
-
*
|
|
204
|
+
* Create a CloudWatch metric.
|
|
259
205
|
*
|
|
260
206
|
* @param metricName name of the metric typically prefixed with `glue.driver.`, `glue.<executorId>.` or `glue.ALL.`.
|
|
261
207
|
* @param type the metric type.
|
|
262
208
|
* @param props metric options.
|
|
209
|
+
*
|
|
263
210
|
* @see https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html
|
|
264
|
-
* @experimental
|
|
265
211
|
*/
|
|
266
212
|
metric(metricName: string, type: MetricType, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
267
213
|
/**
|
|
268
|
-
*
|
|
214
|
+
* Return a CloudWatch Metric indicating job success.
|
|
269
215
|
*
|
|
270
216
|
* This metric is based on the Rule returned by no-args onSuccess() call.
|
|
271
|
-
*
|
|
272
|
-
* @experimental
|
|
273
217
|
*/
|
|
274
218
|
metricSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
275
219
|
/**
|
|
276
|
-
*
|
|
220
|
+
* Return a CloudWatch Metric indicating job failure.
|
|
277
221
|
*
|
|
278
222
|
* This metric is based on the Rule returned by no-args onFailure() call.
|
|
279
|
-
*
|
|
280
|
-
* @experimental
|
|
281
223
|
*/
|
|
282
224
|
metricFailure(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
283
225
|
/**
|
|
284
|
-
*
|
|
226
|
+
* Return a CloudWatch Metric indicating job timeout.
|
|
285
227
|
*
|
|
286
228
|
* This metric is based on the Rule returned by no-args onTimeout() call.
|
|
287
|
-
*
|
|
288
|
-
* @experimental
|
|
289
229
|
*/
|
|
290
230
|
metricTimeout(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
|
|
291
231
|
/**
|
|
@@ -298,316 +238,268 @@ declare abstract class JobBase extends cdk.Resource implements IJob {
|
|
|
298
238
|
private metricJobStateRule;
|
|
299
239
|
}
|
|
300
240
|
/**
|
|
301
|
-
*
|
|
241
|
+
* Properties for enabling Spark UI monitoring feature for Spark-based Glue jobs.
|
|
302
242
|
*
|
|
243
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html
|
|
303
244
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
304
|
-
* @experimental
|
|
305
245
|
*/
|
|
306
246
|
export interface SparkUIProps {
|
|
307
247
|
/**
|
|
308
|
-
*
|
|
309
|
-
*
|
|
310
|
-
* @experimental
|
|
248
|
+
* Enable Spark UI.
|
|
311
249
|
*/
|
|
312
250
|
readonly enabled: boolean;
|
|
313
251
|
/**
|
|
314
|
-
*
|
|
252
|
+
* The bucket where the Glue job stores the logs.
|
|
315
253
|
*
|
|
316
254
|
* @default a new bucket will be created.
|
|
317
|
-
* @experimental
|
|
318
255
|
*/
|
|
319
256
|
readonly bucket?: s3.IBucket;
|
|
320
257
|
/**
|
|
321
|
-
*
|
|
258
|
+
* The path inside the bucket (objects prefix) where the Glue job stores the logs.
|
|
322
259
|
*
|
|
323
260
|
* @default '/' - the logs will be written at the root of the bucket
|
|
324
|
-
* @experimental
|
|
325
261
|
*/
|
|
326
262
|
readonly prefix?: string;
|
|
327
263
|
}
|
|
328
264
|
/**
|
|
329
|
-
*
|
|
265
|
+
* The Spark UI logging location.
|
|
330
266
|
*
|
|
267
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html
|
|
331
268
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
332
|
-
* @experimental
|
|
333
269
|
*/
|
|
334
270
|
export interface SparkUILoggingLocation {
|
|
335
271
|
/**
|
|
336
|
-
*
|
|
337
|
-
*
|
|
338
|
-
* @experimental
|
|
272
|
+
* The bucket where the Glue job stores the logs.
|
|
339
273
|
*/
|
|
340
274
|
readonly bucket: s3.IBucket;
|
|
341
275
|
/**
|
|
342
|
-
*
|
|
276
|
+
* The path inside the bucket (objects prefix) where the Glue job stores the logs.
|
|
343
277
|
*
|
|
344
278
|
* @default '/' - the logs will be written at the root of the bucket
|
|
345
|
-
* @experimental
|
|
346
279
|
*/
|
|
347
280
|
readonly prefix?: string;
|
|
348
281
|
}
|
|
349
282
|
/**
|
|
350
|
-
*
|
|
283
|
+
* Properties for enabling Continuous Logging for Glue Jobs.
|
|
351
284
|
*
|
|
285
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-continuous-logging-enable.html
|
|
352
286
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
353
|
-
* @experimental
|
|
354
287
|
*/
|
|
355
288
|
export interface ContinuousLoggingProps {
|
|
356
289
|
/**
|
|
357
|
-
*
|
|
358
|
-
*
|
|
359
|
-
* @experimental
|
|
290
|
+
* Enable continouous logging.
|
|
360
291
|
*/
|
|
361
292
|
readonly enabled: boolean;
|
|
362
293
|
/**
|
|
363
|
-
*
|
|
294
|
+
* Specify a custom CloudWatch log group name.
|
|
364
295
|
*
|
|
365
296
|
* @default - a log group is created with name `/aws-glue/jobs/logs-v2/`.
|
|
366
|
-
* @experimental
|
|
367
297
|
*/
|
|
368
298
|
readonly logGroup?: logs.ILogGroup;
|
|
369
299
|
/**
|
|
370
|
-
*
|
|
300
|
+
* Specify a custom CloudWatch log stream prefix.
|
|
371
301
|
*
|
|
372
302
|
* @default - the job run ID.
|
|
373
|
-
* @experimental
|
|
374
303
|
*/
|
|
375
304
|
readonly logStreamPrefix?: string;
|
|
376
305
|
/**
|
|
377
|
-
*
|
|
306
|
+
* Filter out non-useful Apache Spark driver/executor and Apache Hadoop YARN heartbeat log messages.
|
|
378
307
|
*
|
|
379
308
|
* @default true
|
|
380
|
-
* @experimental
|
|
381
309
|
*/
|
|
382
310
|
readonly quiet?: boolean;
|
|
383
311
|
/**
|
|
384
|
-
*
|
|
312
|
+
* Apply the provided conversion pattern.
|
|
385
313
|
*
|
|
386
314
|
* This is a Log4j Conversion Pattern to customize driver and executor logs.
|
|
387
315
|
*
|
|
388
316
|
* @default `%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n`
|
|
389
|
-
* @experimental
|
|
390
317
|
*/
|
|
391
318
|
readonly conversionPattern?: string;
|
|
392
319
|
}
|
|
393
320
|
/**
|
|
394
|
-
*
|
|
395
|
-
*
|
|
396
|
-
* @experimental
|
|
321
|
+
* Attributes for importing {@link Job}.
|
|
397
322
|
*/
|
|
398
323
|
export interface JobAttributes {
|
|
399
324
|
/**
|
|
400
|
-
*
|
|
401
|
-
*
|
|
402
|
-
* @experimental
|
|
325
|
+
* The name of the job.
|
|
403
326
|
*/
|
|
404
327
|
readonly jobName: string;
|
|
405
328
|
/**
|
|
406
|
-
*
|
|
329
|
+
* The IAM role assumed by Glue to run this job.
|
|
407
330
|
*
|
|
408
331
|
* @default - undefined
|
|
409
|
-
* @experimental
|
|
410
332
|
*/
|
|
411
333
|
readonly role?: iam.IRole;
|
|
412
334
|
}
|
|
413
335
|
/**
|
|
414
|
-
*
|
|
415
|
-
*
|
|
416
|
-
* @experimental
|
|
336
|
+
* Construction properties for {@link Job}.
|
|
417
337
|
*/
|
|
418
338
|
export interface JobProps {
|
|
419
339
|
/**
|
|
420
|
-
*
|
|
421
|
-
*
|
|
422
|
-
* @experimental
|
|
340
|
+
* The job's executable properties.
|
|
423
341
|
*/
|
|
424
342
|
readonly executable: JobExecutable;
|
|
425
343
|
/**
|
|
426
|
-
*
|
|
344
|
+
* The name of the job.
|
|
427
345
|
*
|
|
428
346
|
* @default - a name is automatically generated
|
|
429
|
-
* @experimental
|
|
430
347
|
*/
|
|
431
348
|
readonly jobName?: string;
|
|
432
349
|
/**
|
|
433
|
-
*
|
|
350
|
+
* The description of the job.
|
|
434
351
|
*
|
|
435
352
|
* @default - no value
|
|
436
|
-
* @experimental
|
|
437
353
|
*/
|
|
438
354
|
readonly description?: string;
|
|
439
355
|
/**
|
|
440
|
-
*
|
|
441
|
-
*
|
|
356
|
+
* The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs.
|
|
442
357
|
* Cannot be used for Glue version 2.0 and later - workerType and workerCount should be used instead.
|
|
443
358
|
*
|
|
444
359
|
* @default - 10 when job type is Apache Spark ETL or streaming, 0.0625 when job type is Python shell
|
|
445
|
-
* @experimental
|
|
446
360
|
*/
|
|
447
361
|
readonly maxCapacity?: number;
|
|
448
362
|
/**
|
|
449
|
-
*
|
|
363
|
+
* The maximum number of times to retry this job after a job run fails.
|
|
450
364
|
*
|
|
451
365
|
* @default 0
|
|
452
|
-
* @experimental
|
|
453
366
|
*/
|
|
454
367
|
readonly maxRetries?: number;
|
|
455
368
|
/**
|
|
456
|
-
*
|
|
369
|
+
* The maximum number of concurrent runs allowed for the job.
|
|
457
370
|
*
|
|
458
371
|
* An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit.
|
|
459
372
|
*
|
|
460
373
|
* @default 1
|
|
461
|
-
* @experimental
|
|
462
374
|
*/
|
|
463
375
|
readonly maxConcurrentRuns?: number;
|
|
464
376
|
/**
|
|
465
|
-
*
|
|
377
|
+
* The number of minutes to wait after a job run starts, before sending a job run delay notification.
|
|
466
378
|
*
|
|
467
379
|
* @default - no delay notifications
|
|
468
|
-
* @experimental
|
|
469
380
|
*/
|
|
470
381
|
readonly notifyDelayAfter?: cdk.Duration;
|
|
471
382
|
/**
|
|
472
|
-
*
|
|
383
|
+
* The maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status.
|
|
473
384
|
*
|
|
474
385
|
* @default cdk.Duration.hours(48)
|
|
475
|
-
* @experimental
|
|
476
386
|
*/
|
|
477
387
|
readonly timeout?: cdk.Duration;
|
|
478
388
|
/**
|
|
479
|
-
*
|
|
389
|
+
* The type of predefined worker that is allocated when a job runs.
|
|
480
390
|
*
|
|
481
391
|
* @default - differs based on specific Glue version
|
|
482
|
-
* @experimental
|
|
483
392
|
*/
|
|
484
393
|
readonly workerType?: WorkerType;
|
|
485
394
|
/**
|
|
486
|
-
*
|
|
395
|
+
* The number of workers of a defined {@link WorkerType} that are allocated when a job runs.
|
|
487
396
|
*
|
|
488
397
|
* @default - differs based on specific Glue version/worker type
|
|
489
|
-
* @experimental
|
|
490
398
|
*/
|
|
491
399
|
readonly workerCount?: number;
|
|
492
400
|
/**
|
|
493
|
-
*
|
|
401
|
+
* The {@link Connection}s used for this job.
|
|
494
402
|
*
|
|
495
403
|
* Connections are used to connect to other AWS Service or resources within a VPC.
|
|
496
404
|
*
|
|
497
405
|
* @default [] - no connections are added to the job
|
|
498
|
-
* @experimental
|
|
499
406
|
*/
|
|
500
407
|
readonly connections?: IConnection[];
|
|
501
408
|
/**
|
|
502
|
-
*
|
|
409
|
+
* The {@link SecurityConfiguration} to use for this job.
|
|
503
410
|
*
|
|
504
411
|
* @default - no security configuration.
|
|
505
|
-
* @experimental
|
|
506
412
|
*/
|
|
507
413
|
readonly securityConfiguration?: ISecurityConfiguration;
|
|
508
414
|
/**
|
|
509
|
-
*
|
|
415
|
+
* The default arguments for this job, specified as name-value pairs.
|
|
510
416
|
*
|
|
511
|
-
* @default - no arguments
|
|
512
417
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html for a list of reserved parameters
|
|
513
|
-
* @
|
|
418
|
+
* @default - no arguments
|
|
514
419
|
*/
|
|
515
420
|
readonly defaultArguments?: {
|
|
516
421
|
[key: string]: string;
|
|
517
422
|
};
|
|
518
423
|
/**
|
|
519
|
-
*
|
|
424
|
+
* The tags to add to the resources on which the job runs
|
|
520
425
|
*
|
|
521
426
|
* @default {} - no tags
|
|
522
|
-
* @experimental
|
|
523
427
|
*/
|
|
524
428
|
readonly tags?: {
|
|
525
429
|
[key: string]: string;
|
|
526
430
|
};
|
|
527
431
|
/**
|
|
528
|
-
*
|
|
432
|
+
* The IAM role assumed by Glue to run this job.
|
|
529
433
|
*
|
|
530
434
|
* If providing a custom role, it needs to trust the Glue service principal (glue.amazonaws.com) and be granted sufficient permissions.
|
|
531
435
|
*
|
|
532
|
-
* @default - a role is automatically generated
|
|
533
436
|
* @see https://docs.aws.amazon.com/glue/latest/dg/getting-started-access.html
|
|
534
|
-
*
|
|
437
|
+
*
|
|
438
|
+
* @default - a role is automatically generated
|
|
535
439
|
*/
|
|
536
440
|
readonly role?: iam.IRole;
|
|
537
441
|
/**
|
|
538
|
-
*
|
|
442
|
+
* Enables the collection of metrics for job profiling.
|
|
539
443
|
*
|
|
540
444
|
* @default - no profiling metrics emitted.
|
|
445
|
+
*
|
|
541
446
|
* @see `--enable-metrics` at https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
542
|
-
* @experimental
|
|
543
447
|
*/
|
|
544
448
|
readonly enableProfilingMetrics?: boolean;
|
|
545
449
|
/**
|
|
546
|
-
*
|
|
450
|
+
* Enables the Spark UI debugging and monitoring with the specified props.
|
|
547
451
|
*
|
|
548
452
|
* @default - Spark UI debugging and monitoring is disabled.
|
|
453
|
+
*
|
|
454
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html
|
|
549
455
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
550
|
-
* @experimental
|
|
551
456
|
*/
|
|
552
457
|
readonly sparkUI?: SparkUIProps;
|
|
553
458
|
/**
|
|
554
|
-
*
|
|
459
|
+
* Enables continuous logging with the specified props.
|
|
555
460
|
*
|
|
556
461
|
* @default - continuous logging is disabled.
|
|
462
|
+
*
|
|
463
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-continuous-logging-enable.html
|
|
557
464
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
558
|
-
* @experimental
|
|
559
465
|
*/
|
|
560
466
|
readonly continuousLogging?: ContinuousLoggingProps;
|
|
561
467
|
}
|
|
562
468
|
/**
|
|
563
|
-
*
|
|
564
|
-
*
|
|
565
|
-
* @experimental
|
|
469
|
+
* A Glue Job.
|
|
566
470
|
*/
|
|
567
471
|
export declare class Job extends JobBase {
|
|
568
472
|
/**
|
|
569
|
-
*
|
|
473
|
+
* Creates a Glue Job
|
|
570
474
|
*
|
|
571
475
|
* @param scope The scope creating construct (usually `this`).
|
|
572
476
|
* @param id The construct's id.
|
|
573
|
-
* @param attrs Import attributes
|
|
574
|
-
* @experimental
|
|
477
|
+
* @param attrs Import attributes
|
|
575
478
|
*/
|
|
576
479
|
static fromJobAttributes(scope: constructs.Construct, id: string, attrs: JobAttributes): IJob;
|
|
577
480
|
/**
|
|
578
|
-
*
|
|
579
|
-
*
|
|
580
|
-
* @experimental
|
|
481
|
+
* The ARN of the job.
|
|
581
482
|
*/
|
|
582
483
|
readonly jobArn: string;
|
|
583
484
|
/**
|
|
584
|
-
*
|
|
585
|
-
*
|
|
586
|
-
* @experimental
|
|
485
|
+
* The name of the job.
|
|
587
486
|
*/
|
|
588
487
|
readonly jobName: string;
|
|
589
488
|
/**
|
|
590
|
-
*
|
|
591
|
-
*
|
|
592
|
-
* @experimental
|
|
489
|
+
* The IAM role Glue assumes to run this job.
|
|
593
490
|
*/
|
|
594
491
|
readonly role: iam.IRole;
|
|
595
492
|
/**
|
|
596
|
-
*
|
|
597
|
-
*
|
|
598
|
-
* @experimental
|
|
493
|
+
* The principal this Glue Job is running as.
|
|
599
494
|
*/
|
|
600
495
|
readonly grantPrincipal: iam.IPrincipal;
|
|
601
496
|
/**
|
|
602
|
-
*
|
|
497
|
+
* The Spark UI logs location if Spark UI monitoring and debugging is enabled.
|
|
603
498
|
*
|
|
499
|
+
* @see https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-jobs.html
|
|
604
500
|
* @see https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
|
|
605
|
-
* @experimental
|
|
606
501
|
*/
|
|
607
502
|
readonly sparkUILoggingLocation?: SparkUILoggingLocation;
|
|
608
|
-
/**
|
|
609
|
-
* @experimental
|
|
610
|
-
*/
|
|
611
503
|
constructor(scope: constructs.Construct, id: string, props: JobProps);
|
|
612
504
|
/**
|
|
613
505
|
* Check no usage of reserved arguments.
|