@aws-sdk/client-glue 3.624.0 → 3.626.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.
Files changed (84) hide show
  1. package/README.md +48 -0
  2. package/dist-cjs/index.js +465 -34
  3. package/dist-es/Glue.js +12 -0
  4. package/dist-es/commands/BatchGetDataQualityResultCommand.js +2 -1
  5. package/dist-es/commands/BatchGetJobsCommand.js +1 -1
  6. package/dist-es/commands/BatchPutDataQualityStatisticAnnotationCommand.js +24 -0
  7. package/dist-es/commands/CreateJobCommand.js +1 -1
  8. package/dist-es/commands/GetDataQualityModelCommand.js +24 -0
  9. package/dist-es/commands/GetDataQualityModelResultCommand.js +24 -0
  10. package/dist-es/commands/GetDataQualityResultCommand.js +2 -1
  11. package/dist-es/commands/GetJobCommand.js +1 -1
  12. package/dist-es/commands/GetJobsCommand.js +1 -1
  13. package/dist-es/commands/ListDataQualityStatisticAnnotationsCommand.js +24 -0
  14. package/dist-es/commands/ListDataQualityStatisticsCommand.js +25 -0
  15. package/dist-es/commands/PutDataQualityProfileAnnotationCommand.js +24 -0
  16. package/dist-es/commands/UpdateJobCommand.js +1 -1
  17. package/dist-es/commands/index.js +6 -0
  18. package/dist-es/models/index.js +1 -0
  19. package/dist-es/models/models_0.js +35 -10
  20. package/dist-es/models/models_1.js +26 -13
  21. package/dist-es/models/models_2.js +22 -24
  22. package/dist-es/models/models_3.js +29 -0
  23. package/dist-es/protocols/Aws_json1_1.js +233 -0
  24. package/dist-types/Glue.d.ts +44 -0
  25. package/dist-types/GlueClient.d.ts +8 -2
  26. package/dist-types/commands/BatchGetDataQualityResultCommand.d.ts +3 -0
  27. package/dist-types/commands/BatchGetJobsCommand.d.ts +1 -1
  28. package/dist-types/commands/BatchPutDataQualityStatisticAnnotationCommand.d.ts +85 -0
  29. package/dist-types/commands/CreateBlueprintCommand.d.ts +1 -1
  30. package/dist-types/commands/CreateDataQualityRulesetCommand.d.ts +1 -0
  31. package/dist-types/commands/CreateJobCommand.d.ts +1 -1
  32. package/dist-types/commands/GetDataQualityModelCommand.d.ts +76 -0
  33. package/dist-types/commands/GetDataQualityModelResultCommand.d.ts +83 -0
  34. package/dist-types/commands/GetDataQualityResultCommand.d.ts +3 -0
  35. package/dist-types/commands/GetDataQualityRuleRecommendationRunCommand.d.ts +1 -0
  36. package/dist-types/commands/GetDataQualityRulesetCommand.d.ts +1 -0
  37. package/dist-types/commands/GetJobCommand.d.ts +1 -1
  38. package/dist-types/commands/GetJobsCommand.d.ts +1 -1
  39. package/dist-types/commands/GetMLTransformsCommand.d.ts +1 -1
  40. package/dist-types/commands/GetPartitionCommand.d.ts +1 -1
  41. package/dist-types/commands/GetPartitionIndexesCommand.d.ts +1 -1
  42. package/dist-types/commands/ListDataQualityStatisticAnnotationsCommand.d.ts +84 -0
  43. package/dist-types/commands/ListDataQualityStatisticsCommand.d.ts +103 -0
  44. package/dist-types/commands/PutDataQualityProfileAnnotationCommand.d.ts +68 -0
  45. package/dist-types/commands/StartDataQualityRuleRecommendationRunCommand.d.ts +1 -0
  46. package/dist-types/commands/UpdateJobCommand.d.ts +2 -1
  47. package/dist-types/commands/UpdateUsageProfileCommand.d.ts +2 -1
  48. package/dist-types/commands/UpdateUserDefinedFunctionCommand.d.ts +1 -1
  49. package/dist-types/commands/UpdateWorkflowCommand.d.ts +1 -1
  50. package/dist-types/commands/index.d.ts +6 -0
  51. package/dist-types/models/index.d.ts +1 -0
  52. package/dist-types/models/models_0.d.ts +146 -152
  53. package/dist-types/models/models_1.d.ts +305 -420
  54. package/dist-types/models/models_2.d.ts +3184 -3802
  55. package/dist-types/models/models_3.d.ts +1272 -0
  56. package/dist-types/protocols/Aws_json1_1.d.ts +54 -0
  57. package/dist-types/ts3.4/Glue.d.ts +116 -0
  58. package/dist-types/ts3.4/GlueClient.d.ts +36 -0
  59. package/dist-types/ts3.4/commands/BatchGetJobsCommand.d.ts +1 -1
  60. package/dist-types/ts3.4/commands/BatchPutDataQualityStatisticAnnotationCommand.d.ts +40 -0
  61. package/dist-types/ts3.4/commands/CreateBlueprintCommand.d.ts +1 -1
  62. package/dist-types/ts3.4/commands/CreateJobCommand.d.ts +1 -1
  63. package/dist-types/ts3.4/commands/GetDataQualityModelCommand.d.ts +40 -0
  64. package/dist-types/ts3.4/commands/GetDataQualityModelResultCommand.d.ts +40 -0
  65. package/dist-types/ts3.4/commands/GetJobCommand.d.ts +1 -1
  66. package/dist-types/ts3.4/commands/GetJobsCommand.d.ts +1 -1
  67. package/dist-types/ts3.4/commands/GetMLTransformsCommand.d.ts +1 -1
  68. package/dist-types/ts3.4/commands/GetPartitionCommand.d.ts +1 -1
  69. package/dist-types/ts3.4/commands/GetPartitionIndexesCommand.d.ts +1 -1
  70. package/dist-types/ts3.4/commands/ListDataQualityStatisticAnnotationsCommand.d.ts +40 -0
  71. package/dist-types/ts3.4/commands/ListDataQualityStatisticsCommand.d.ts +40 -0
  72. package/dist-types/ts3.4/commands/PutDataQualityProfileAnnotationCommand.d.ts +40 -0
  73. package/dist-types/ts3.4/commands/UpdateJobCommand.d.ts +2 -1
  74. package/dist-types/ts3.4/commands/UpdateUsageProfileCommand.d.ts +2 -4
  75. package/dist-types/ts3.4/commands/UpdateUserDefinedFunctionCommand.d.ts +1 -1
  76. package/dist-types/ts3.4/commands/UpdateWorkflowCommand.d.ts +1 -1
  77. package/dist-types/ts3.4/commands/index.d.ts +6 -0
  78. package/dist-types/ts3.4/models/index.d.ts +1 -0
  79. package/dist-types/ts3.4/models/models_0.d.ts +51 -45
  80. package/dist-types/ts3.4/models/models_1.d.ts +86 -92
  81. package/dist-types/ts3.4/models/models_2.d.ts +156 -292
  82. package/dist-types/ts3.4/models/models_3.d.ts +296 -0
  83. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +72 -0
  84. package/package.json +1 -1
@@ -0,0 +1,1272 @@
1
+ import { Aggregate, AmazonRedshiftSource, AmazonRedshiftTarget, AthenaConnectorSource, BasicCatalogTarget, CatalogDeltaSource, CatalogHudiSource, CatalogKafkaSource, CatalogKinesisSource, CatalogSource, ConnectionsList, ConnectorDataSource, ConnectorDataTarget, CustomCode, DirectJDBCSource, DirectKafkaSource, DirectKinesisSource, DropDuplicates, DropFields, DropNullFields, DynamicTransform, DynamoDBCatalogSource, EvaluateDataQuality, EvaluateDataQualityMultiFrame, ExecutionClass, ExecutionProperty, FillMissingValues, Filter, GovernedCatalogSource, GovernedCatalogTarget, JDBCConnectorSource, JDBCConnectorTarget, JobCommand, JobMode, Join, Merge, MicrosoftSQLServerCatalogSource, MicrosoftSQLServerCatalogTarget, MySQLCatalogSource, MySQLCatalogTarget, NotificationProperty, OracleSQLCatalogSource, OracleSQLCatalogTarget, PIIDetection, PostgreSQLCatalogSource, PostgreSQLCatalogTarget, Recipe, RedshiftSource, RedshiftTarget, RelationalCatalogSource, RenameField, S3CatalogDeltaSource, S3CatalogHudiSource, S3CatalogSource, S3CatalogTarget, S3CsvSource, S3DeltaCatalogTarget, S3DeltaDirectTarget, S3DeltaSource, S3DirectTarget, S3GlueParquetTarget, S3HudiCatalogTarget, S3HudiDirectTarget, S3HudiSource, S3JsonSource, S3ParquetSource, SelectFields, SelectFromCollection, SnowflakeSource, SnowflakeTarget, SourceControlDetails, SparkConnectorSource, SparkConnectorTarget, SparkSQL, Spigot, SplitFields, Union, WorkerType } from "./models_0";
2
+ import { UserDefinedFunctionInput } from "./models_1";
3
+ /**
4
+ * @public
5
+ */
6
+ export interface UpdateUsageProfileResponse {
7
+ /**
8
+ * <p>The name of the usage profile that was updated.</p>
9
+ * @public
10
+ */
11
+ Name?: string;
12
+ }
13
+ /**
14
+ * @public
15
+ */
16
+ export interface UpdateUserDefinedFunctionRequest {
17
+ /**
18
+ * <p>The ID of the Data Catalog where the function to be updated is located. If none is
19
+ * provided, the Amazon Web Services account ID is used by default.</p>
20
+ * @public
21
+ */
22
+ CatalogId?: string;
23
+ /**
24
+ * <p>The name of the catalog database where the function to be updated is
25
+ * located.</p>
26
+ * @public
27
+ */
28
+ DatabaseName: string | undefined;
29
+ /**
30
+ * <p>The name of the function.</p>
31
+ * @public
32
+ */
33
+ FunctionName: string | undefined;
34
+ /**
35
+ * <p>A <code>FunctionInput</code> object that redefines the function in the Data
36
+ * Catalog.</p>
37
+ * @public
38
+ */
39
+ FunctionInput: UserDefinedFunctionInput | undefined;
40
+ }
41
+ /**
42
+ * @public
43
+ */
44
+ export interface UpdateUserDefinedFunctionResponse {
45
+ }
46
+ /**
47
+ * @public
48
+ */
49
+ export interface UpdateWorkflowRequest {
50
+ /**
51
+ * <p>Name of the workflow to be updated.</p>
52
+ * @public
53
+ */
54
+ Name: string | undefined;
55
+ /**
56
+ * <p>The description of the workflow.</p>
57
+ * @public
58
+ */
59
+ Description?: string;
60
+ /**
61
+ * <p>A collection of properties to be used as part of each execution of the workflow.</p>
62
+ * @public
63
+ */
64
+ DefaultRunProperties?: Record<string, string>;
65
+ /**
66
+ * <p>You can use this parameter to prevent unwanted multiple updates to data, to control costs, or in some cases, to prevent exceeding the maximum number of concurrent runs of any of the component jobs. If you leave this parameter blank, there is no limit to the number of concurrent workflow runs.</p>
67
+ * @public
68
+ */
69
+ MaxConcurrentRuns?: number;
70
+ }
71
+ /**
72
+ * @public
73
+ */
74
+ export interface UpdateWorkflowResponse {
75
+ /**
76
+ * <p>The name of the workflow which was specified in input.</p>
77
+ * @public
78
+ */
79
+ Name?: string;
80
+ }
81
+ /**
82
+ * <p>Specifies the mapping of data property keys.</p>
83
+ * @public
84
+ */
85
+ export interface Mapping {
86
+ /**
87
+ * <p>After the apply mapping, what the name of the column should be. Can be the same as <code>FromPath</code>.</p>
88
+ * @public
89
+ */
90
+ ToKey?: string;
91
+ /**
92
+ * <p>The table or column to be modified.</p>
93
+ * @public
94
+ */
95
+ FromPath?: string[];
96
+ /**
97
+ * <p>The type of the data to be modified.</p>
98
+ * @public
99
+ */
100
+ FromType?: string;
101
+ /**
102
+ * <p>The data type that the data is to be modified to.</p>
103
+ * @public
104
+ */
105
+ ToType?: string;
106
+ /**
107
+ * <p>If true, then the column is removed.</p>
108
+ * @public
109
+ */
110
+ Dropped?: boolean;
111
+ /**
112
+ * <p>Only applicable to nested data structures. If you want to change the parent structure, but also one of its children, you can fill out this data strucutre. It is also <code>Mapping</code>, but its <code>FromPath</code> will be the parent's <code>FromPath</code> plus the <code>FromPath</code> from this structure.</p>
113
+ * <p>For the children part, suppose you have the structure:</p>
114
+ * <p>
115
+ * <code>\{
116
+ * "FromPath": "OuterStructure",
117
+ * "ToKey": "OuterStructure",
118
+ * "ToType": "Struct",
119
+ * "Dropped": false,
120
+ * "Chidlren": [\{
121
+ * "FromPath": "inner",
122
+ * "ToKey": "inner",
123
+ * "ToType": "Double",
124
+ * "Dropped": false,
125
+ * \}]
126
+ * \}</code>
127
+ * </p>
128
+ * <p>You can specify a <code>Mapping</code> that looks like:</p>
129
+ * <p>
130
+ * <code>\{
131
+ * "FromPath": "OuterStructure",
132
+ * "ToKey": "OuterStructure",
133
+ * "ToType": "Struct",
134
+ * "Dropped": false,
135
+ * "Chidlren": [\{
136
+ * "FromPath": "inner",
137
+ * "ToKey": "inner",
138
+ * "ToType": "Double",
139
+ * "Dropped": false,
140
+ * \}]
141
+ * \}</code>
142
+ * </p>
143
+ * @public
144
+ */
145
+ Children?: Mapping[];
146
+ }
147
+ /**
148
+ * <p>Specifies a transform that maps data property keys in the data source to data property keys in the data target. You can rename keys, modify the data types for keys, and choose which keys to drop from the dataset.</p>
149
+ * @public
150
+ */
151
+ export interface ApplyMapping {
152
+ /**
153
+ * <p>The name of the transform node.</p>
154
+ * @public
155
+ */
156
+ Name: string | undefined;
157
+ /**
158
+ * <p>The data inputs identified by their node names.</p>
159
+ * @public
160
+ */
161
+ Inputs: string[] | undefined;
162
+ /**
163
+ * <p>Specifies the mapping of data property keys in the data source to data property keys in the data target.</p>
164
+ * @public
165
+ */
166
+ Mapping: Mapping[] | undefined;
167
+ }
168
+ /**
169
+ * <p>
170
+ * <code>CodeGenConfigurationNode</code> enumerates all valid Node types. One and only one of its member variables can be populated.</p>
171
+ * @public
172
+ */
173
+ export interface CodeGenConfigurationNode {
174
+ /**
175
+ * <p>Specifies a connector to an Amazon Athena data source.</p>
176
+ * @public
177
+ */
178
+ AthenaConnectorSource?: AthenaConnectorSource;
179
+ /**
180
+ * <p>Specifies a connector to a JDBC data source.</p>
181
+ * @public
182
+ */
183
+ JDBCConnectorSource?: JDBCConnectorSource;
184
+ /**
185
+ * <p>Specifies a connector to an Apache Spark data source.</p>
186
+ * @public
187
+ */
188
+ SparkConnectorSource?: SparkConnectorSource;
189
+ /**
190
+ * <p>Specifies a data store in the Glue Data Catalog.</p>
191
+ * @public
192
+ */
193
+ CatalogSource?: CatalogSource;
194
+ /**
195
+ * <p>Specifies an Amazon Redshift data store.</p>
196
+ * @public
197
+ */
198
+ RedshiftSource?: RedshiftSource;
199
+ /**
200
+ * <p>Specifies an Amazon S3 data store in the Glue Data Catalog.</p>
201
+ * @public
202
+ */
203
+ S3CatalogSource?: S3CatalogSource;
204
+ /**
205
+ * <p>Specifies a command-separated value (CSV) data store stored in Amazon S3.</p>
206
+ * @public
207
+ */
208
+ S3CsvSource?: S3CsvSource;
209
+ /**
210
+ * <p>Specifies a JSON data store stored in Amazon S3.</p>
211
+ * @public
212
+ */
213
+ S3JsonSource?: S3JsonSource;
214
+ /**
215
+ * <p>Specifies an Apache Parquet data store stored in Amazon S3.</p>
216
+ * @public
217
+ */
218
+ S3ParquetSource?: S3ParquetSource;
219
+ /**
220
+ * <p>Specifies a relational catalog data store in the Glue Data Catalog.</p>
221
+ * @public
222
+ */
223
+ RelationalCatalogSource?: RelationalCatalogSource;
224
+ /**
225
+ * <p>Specifies a DynamoDBC Catalog data store in the Glue Data Catalog.</p>
226
+ * @public
227
+ */
228
+ DynamoDBCatalogSource?: DynamoDBCatalogSource;
229
+ /**
230
+ * <p>Specifies a data target that writes to Amazon S3 in Apache Parquet columnar storage.</p>
231
+ * @public
232
+ */
233
+ JDBCConnectorTarget?: JDBCConnectorTarget;
234
+ /**
235
+ * <p>Specifies a target that uses an Apache Spark connector.</p>
236
+ * @public
237
+ */
238
+ SparkConnectorTarget?: SparkConnectorTarget;
239
+ /**
240
+ * <p>Specifies a target that uses a Glue Data Catalog table.</p>
241
+ * @public
242
+ */
243
+ CatalogTarget?: BasicCatalogTarget;
244
+ /**
245
+ * <p>Specifies a target that uses Amazon Redshift.</p>
246
+ * @public
247
+ */
248
+ RedshiftTarget?: RedshiftTarget;
249
+ /**
250
+ * <p>Specifies a data target that writes to Amazon S3 using the Glue Data Catalog.</p>
251
+ * @public
252
+ */
253
+ S3CatalogTarget?: S3CatalogTarget;
254
+ /**
255
+ * <p>Specifies a data target that writes to Amazon S3 in Apache Parquet columnar storage.</p>
256
+ * @public
257
+ */
258
+ S3GlueParquetTarget?: S3GlueParquetTarget;
259
+ /**
260
+ * <p>Specifies a data target that writes to Amazon S3.</p>
261
+ * @public
262
+ */
263
+ S3DirectTarget?: S3DirectTarget;
264
+ /**
265
+ * <p>Specifies a transform that maps data property keys in the data source to data property keys in the data target. You can rename keys, modify the data types for keys, and choose which keys to drop from the dataset.</p>
266
+ * @public
267
+ */
268
+ ApplyMapping?: ApplyMapping;
269
+ /**
270
+ * <p>Specifies a transform that chooses the data property keys that you want to keep.</p>
271
+ * @public
272
+ */
273
+ SelectFields?: SelectFields;
274
+ /**
275
+ * <p>Specifies a transform that chooses the data property keys that you want to drop.</p>
276
+ * @public
277
+ */
278
+ DropFields?: DropFields;
279
+ /**
280
+ * <p>Specifies a transform that renames a single data property key.</p>
281
+ * @public
282
+ */
283
+ RenameField?: RenameField;
284
+ /**
285
+ * <p>Specifies a transform that writes samples of the data to an Amazon S3 bucket.</p>
286
+ * @public
287
+ */
288
+ Spigot?: Spigot;
289
+ /**
290
+ * <p>Specifies a transform that joins two datasets into one dataset using a comparison phrase on the specified data property keys. You can use inner, outer, left, right, left semi, and left anti joins.</p>
291
+ * @public
292
+ */
293
+ Join?: Join;
294
+ /**
295
+ * <p>Specifies a transform that splits data property keys into two <code>DynamicFrames</code>. The output is a collection of <code>DynamicFrames</code>: one with selected data property keys, and one with the remaining data property keys.</p>
296
+ * @public
297
+ */
298
+ SplitFields?: SplitFields;
299
+ /**
300
+ * <p>Specifies a transform that chooses one <code>DynamicFrame</code> from a collection of <code>DynamicFrames</code>. The output is the selected <code>DynamicFrame</code>
301
+ * </p>
302
+ * @public
303
+ */
304
+ SelectFromCollection?: SelectFromCollection;
305
+ /**
306
+ * <p>Specifies a transform that locates records in the dataset that have missing values and adds a new field with a value determined by imputation. The input data set is used to train the machine learning model that determines what the missing value should be.</p>
307
+ * @public
308
+ */
309
+ FillMissingValues?: FillMissingValues;
310
+ /**
311
+ * <p>Specifies a transform that splits a dataset into two, based on a filter condition.</p>
312
+ * @public
313
+ */
314
+ Filter?: Filter;
315
+ /**
316
+ * <p>Specifies a transform that uses custom code you provide to perform the data transformation. The output is a collection of DynamicFrames.</p>
317
+ * @public
318
+ */
319
+ CustomCode?: CustomCode;
320
+ /**
321
+ * <p>Specifies a transform where you enter a SQL query using Spark SQL syntax to transform the data. The output is a single <code>DynamicFrame</code>.</p>
322
+ * @public
323
+ */
324
+ SparkSQL?: SparkSQL;
325
+ /**
326
+ * <p>Specifies a direct Amazon Kinesis data source.</p>
327
+ * @public
328
+ */
329
+ DirectKinesisSource?: DirectKinesisSource;
330
+ /**
331
+ * <p>Specifies an Apache Kafka data store.</p>
332
+ * @public
333
+ */
334
+ DirectKafkaSource?: DirectKafkaSource;
335
+ /**
336
+ * <p>Specifies a Kinesis data source in the Glue Data Catalog.</p>
337
+ * @public
338
+ */
339
+ CatalogKinesisSource?: CatalogKinesisSource;
340
+ /**
341
+ * <p>Specifies an Apache Kafka data store in the Data Catalog.</p>
342
+ * @public
343
+ */
344
+ CatalogKafkaSource?: CatalogKafkaSource;
345
+ /**
346
+ * <p>Specifies a transform that removes columns from the dataset if all values in the column are 'null'. By default, Glue Studio will recognize null objects, but some values such as empty strings, strings that are "null", -1 integers or other placeholders such as zeros, are not automatically recognized as nulls.</p>
347
+ * @public
348
+ */
349
+ DropNullFields?: DropNullFields;
350
+ /**
351
+ * <p>Specifies a transform that merges a <code>DynamicFrame</code> with a staging <code>DynamicFrame</code> based on the specified primary keys to identify records. Duplicate records (records with the same primary keys) are not de-duplicated. </p>
352
+ * @public
353
+ */
354
+ Merge?: Merge;
355
+ /**
356
+ * <p>Specifies a transform that combines the rows from two or more datasets into a single result.</p>
357
+ * @public
358
+ */
359
+ Union?: Union;
360
+ /**
361
+ * <p>Specifies a transform that identifies, removes or masks PII data.</p>
362
+ * @public
363
+ */
364
+ PIIDetection?: PIIDetection;
365
+ /**
366
+ * <p>Specifies a transform that groups rows by chosen fields and computes the aggregated value by specified function.</p>
367
+ * @public
368
+ */
369
+ Aggregate?: Aggregate;
370
+ /**
371
+ * <p>Specifies a transform that removes rows of repeating data from a data set.</p>
372
+ * @public
373
+ */
374
+ DropDuplicates?: DropDuplicates;
375
+ /**
376
+ * <p>Specifies a data target that writes to a goverened catalog.</p>
377
+ * @public
378
+ */
379
+ GovernedCatalogTarget?: GovernedCatalogTarget;
380
+ /**
381
+ * <p>Specifies a data source in a goverened Data Catalog.</p>
382
+ * @public
383
+ */
384
+ GovernedCatalogSource?: GovernedCatalogSource;
385
+ /**
386
+ * <p>Specifies a Microsoft SQL server data source in the Glue Data Catalog.</p>
387
+ * @public
388
+ */
389
+ MicrosoftSQLServerCatalogSource?: MicrosoftSQLServerCatalogSource;
390
+ /**
391
+ * <p>Specifies a MySQL data source in the Glue Data Catalog.</p>
392
+ * @public
393
+ */
394
+ MySQLCatalogSource?: MySQLCatalogSource;
395
+ /**
396
+ * <p>Specifies an Oracle data source in the Glue Data Catalog.</p>
397
+ * @public
398
+ */
399
+ OracleSQLCatalogSource?: OracleSQLCatalogSource;
400
+ /**
401
+ * <p>Specifies a PostgresSQL data source in the Glue Data Catalog.</p>
402
+ * @public
403
+ */
404
+ PostgreSQLCatalogSource?: PostgreSQLCatalogSource;
405
+ /**
406
+ * <p>Specifies a target that uses Microsoft SQL.</p>
407
+ * @public
408
+ */
409
+ MicrosoftSQLServerCatalogTarget?: MicrosoftSQLServerCatalogTarget;
410
+ /**
411
+ * <p>Specifies a target that uses MySQL.</p>
412
+ * @public
413
+ */
414
+ MySQLCatalogTarget?: MySQLCatalogTarget;
415
+ /**
416
+ * <p>Specifies a target that uses Oracle SQL.</p>
417
+ * @public
418
+ */
419
+ OracleSQLCatalogTarget?: OracleSQLCatalogTarget;
420
+ /**
421
+ * <p>Specifies a target that uses Postgres SQL.</p>
422
+ * @public
423
+ */
424
+ PostgreSQLCatalogTarget?: PostgreSQLCatalogTarget;
425
+ /**
426
+ * <p>Specifies a custom visual transform created by a user.</p>
427
+ * @public
428
+ */
429
+ DynamicTransform?: DynamicTransform;
430
+ /**
431
+ * <p>Specifies your data quality evaluation criteria.</p>
432
+ * @public
433
+ */
434
+ EvaluateDataQuality?: EvaluateDataQuality;
435
+ /**
436
+ * <p>Specifies a Hudi data source that is registered in the Glue Data Catalog. The data source must be stored in Amazon S3.</p>
437
+ * @public
438
+ */
439
+ S3CatalogHudiSource?: S3CatalogHudiSource;
440
+ /**
441
+ * <p>Specifies a Hudi data source that is registered in the Glue Data Catalog.</p>
442
+ * @public
443
+ */
444
+ CatalogHudiSource?: CatalogHudiSource;
445
+ /**
446
+ * <p>Specifies a Hudi data source stored in Amazon S3.</p>
447
+ * @public
448
+ */
449
+ S3HudiSource?: S3HudiSource;
450
+ /**
451
+ * <p>Specifies a target that writes to a Hudi data source in the Glue Data Catalog.</p>
452
+ * @public
453
+ */
454
+ S3HudiCatalogTarget?: S3HudiCatalogTarget;
455
+ /**
456
+ * <p>Specifies a target that writes to a Hudi data source in Amazon S3.</p>
457
+ * @public
458
+ */
459
+ S3HudiDirectTarget?: S3HudiDirectTarget;
460
+ /**
461
+ * <p>Specifies the direct JDBC source connection.</p>
462
+ * @public
463
+ */
464
+ DirectJDBCSource?: DirectJDBCSource;
465
+ /**
466
+ * <p>Specifies a Delta Lake data source that is registered in the Glue Data Catalog. The data source must be stored in Amazon S3.</p>
467
+ * @public
468
+ */
469
+ S3CatalogDeltaSource?: S3CatalogDeltaSource;
470
+ /**
471
+ * <p>Specifies a Delta Lake data source that is registered in the Glue Data Catalog.</p>
472
+ * @public
473
+ */
474
+ CatalogDeltaSource?: CatalogDeltaSource;
475
+ /**
476
+ * <p>Specifies a Delta Lake data source stored in Amazon S3.</p>
477
+ * @public
478
+ */
479
+ S3DeltaSource?: S3DeltaSource;
480
+ /**
481
+ * <p>Specifies a target that writes to a Delta Lake data source in the Glue Data Catalog.</p>
482
+ * @public
483
+ */
484
+ S3DeltaCatalogTarget?: S3DeltaCatalogTarget;
485
+ /**
486
+ * <p>Specifies a target that writes to a Delta Lake data source in Amazon S3.</p>
487
+ * @public
488
+ */
489
+ S3DeltaDirectTarget?: S3DeltaDirectTarget;
490
+ /**
491
+ * <p>Specifies a target that writes to a data source in Amazon Redshift.</p>
492
+ * @public
493
+ */
494
+ AmazonRedshiftSource?: AmazonRedshiftSource;
495
+ /**
496
+ * <p>Specifies a target that writes to a data target in Amazon Redshift.</p>
497
+ * @public
498
+ */
499
+ AmazonRedshiftTarget?: AmazonRedshiftTarget;
500
+ /**
501
+ * <p>Specifies your data quality evaluation criteria. Allows multiple input data and returns a collection of Dynamic Frames.</p>
502
+ * @public
503
+ */
504
+ EvaluateDataQualityMultiFrame?: EvaluateDataQualityMultiFrame;
505
+ /**
506
+ * <p>Specifies a Glue DataBrew recipe node.</p>
507
+ * @public
508
+ */
509
+ Recipe?: Recipe;
510
+ /**
511
+ * <p>Specifies a Snowflake data source.</p>
512
+ * @public
513
+ */
514
+ SnowflakeSource?: SnowflakeSource;
515
+ /**
516
+ * <p>Specifies a target that writes to a Snowflake data source.</p>
517
+ * @public
518
+ */
519
+ SnowflakeTarget?: SnowflakeTarget;
520
+ /**
521
+ * <p>Specifies a source generated with standard connection options.</p>
522
+ * @public
523
+ */
524
+ ConnectorDataSource?: ConnectorDataSource;
525
+ /**
526
+ * <p>Specifies a target generated with standard connection options.</p>
527
+ * @public
528
+ */
529
+ ConnectorDataTarget?: ConnectorDataTarget;
530
+ }
531
+ /**
532
+ * @public
533
+ */
534
+ export interface CreateJobRequest {
535
+ /**
536
+ * <p>The name you assign to this job definition. It must be unique in your account.</p>
537
+ * @public
538
+ */
539
+ Name: string | undefined;
540
+ /**
541
+ * <p>A mode that describes how a job was created. Valid values are:</p>
542
+ * <ul>
543
+ * <li>
544
+ * <p>
545
+ * <code>SCRIPT</code> - The job was created using the Glue Studio script editor.</p>
546
+ * </li>
547
+ * <li>
548
+ * <p>
549
+ * <code>VISUAL</code> - The job was created using the Glue Studio visual editor.</p>
550
+ * </li>
551
+ * <li>
552
+ * <p>
553
+ * <code>NOTEBOOK</code> - The job was created using an interactive sessions notebook.</p>
554
+ * </li>
555
+ * </ul>
556
+ * <p>When the <code>JobMode</code> field is missing or null, <code>SCRIPT</code> is assigned as the default value.</p>
557
+ * @public
558
+ */
559
+ JobMode?: JobMode;
560
+ /**
561
+ * <p>Description of the job being defined.</p>
562
+ * @public
563
+ */
564
+ Description?: string;
565
+ /**
566
+ * <p>This field is reserved for future use.</p>
567
+ * @public
568
+ */
569
+ LogUri?: string;
570
+ /**
571
+ * <p>The name or Amazon Resource Name (ARN) of the IAM role associated with this job.</p>
572
+ * @public
573
+ */
574
+ Role: string | undefined;
575
+ /**
576
+ * <p>An <code>ExecutionProperty</code> specifying the maximum number of concurrent runs allowed
577
+ * for this job.</p>
578
+ * @public
579
+ */
580
+ ExecutionProperty?: ExecutionProperty;
581
+ /**
582
+ * <p>The <code>JobCommand</code> that runs this job.</p>
583
+ * @public
584
+ */
585
+ Command: JobCommand | undefined;
586
+ /**
587
+ * <p>The default arguments for every run of this job, specified as name-value pairs.</p>
588
+ * <p>You can specify arguments here that your own job-execution script
589
+ * consumes, as well as arguments that Glue itself consumes.</p>
590
+ * <p>Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets
591
+ * from a Glue Connection, Secrets Manager or other secret management
592
+ * mechanism if you intend to keep them within the Job. </p>
593
+ * <p>For information about how to specify and consume your own Job arguments, see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling Glue APIs in Python</a> topic in the developer guide.</p>
594
+ * <p>For information about the arguments you can provide to this field when configuring Spark jobs,
595
+ * see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special Parameters Used by Glue</a> topic in the developer guide.</p>
596
+ * <p>For information about the arguments you can provide to this field when configuring Ray
597
+ * jobs, see <a href="https://docs.aws.amazon.com/glue/latest/dg/author-job-ray-job-parameters.html">Using
598
+ * job parameters in Ray jobs</a> in the developer guide.</p>
599
+ * @public
600
+ */
601
+ DefaultArguments?: Record<string, string>;
602
+ /**
603
+ * <p>Arguments for this job that are not overridden when providing job arguments
604
+ * in a job run, specified as name-value pairs.</p>
605
+ * @public
606
+ */
607
+ NonOverridableArguments?: Record<string, string>;
608
+ /**
609
+ * <p>The connections used for this job.</p>
610
+ * @public
611
+ */
612
+ Connections?: ConnectionsList;
613
+ /**
614
+ * <p>The maximum number of times to retry this job if it fails.</p>
615
+ * @public
616
+ */
617
+ MaxRetries?: number;
618
+ /**
619
+ * @deprecated
620
+ *
621
+ * <p>This parameter is deprecated. Use <code>MaxCapacity</code> instead.</p>
622
+ * <p>The number of Glue data processing units (DPUs) to allocate to this Job. You can
623
+ * allocate a minimum of 2 DPUs; the default is 10. A DPU is a relative measure of processing
624
+ * power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information,
625
+ * see the <a href="https://aws.amazon.com/glue/pricing/">Glue pricing
626
+ * page</a>.</p>
627
+ * @public
628
+ */
629
+ AllocatedCapacity?: number;
630
+ /**
631
+ * <p>The job timeout in minutes. This is the maximum time that a job run
632
+ * can consume resources before it is terminated and enters <code>TIMEOUT</code>
633
+ * status. The default is 2,880 minutes (48 hours) for batch jobs.</p>
634
+ * <p>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.</p>
635
+ * @public
636
+ */
637
+ Timeout?: number;
638
+ /**
639
+ * <p>For Glue version 1.0 or earlier jobs, using the standard worker type, the number of
640
+ * Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is
641
+ * a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB
642
+ * of memory. For more information, see the <a href="https://aws.amazon.com/glue/pricing/">
643
+ * Glue pricing page</a>.</p>
644
+ * <p>For Glue version 2.0+ jobs, you cannot specify a <code>Maximum capacity</code>.
645
+ * Instead, you should specify a <code>Worker type</code> and the <code>Number of workers</code>.</p>
646
+ * <p>Do not set <code>MaxCapacity</code> if using <code>WorkerType</code> and <code>NumberOfWorkers</code>.</p>
647
+ * <p>The value that can be allocated for <code>MaxCapacity</code> depends on whether you are
648
+ * running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming ETL
649
+ * job:</p>
650
+ * <ul>
651
+ * <li>
652
+ * <p>When you specify a Python shell job (<code>JobCommand.Name</code>="pythonshell"), you can
653
+ * allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU.</p>
654
+ * </li>
655
+ * <li>
656
+ * <p>When you specify an Apache Spark ETL job (<code>JobCommand.Name</code>="glueetl") or Apache
657
+ * Spark streaming ETL job (<code>JobCommand.Name</code>="gluestreaming"), you can allocate from 2 to 100 DPUs.
658
+ * The default is 10 DPUs. This job type cannot have a fractional DPU allocation.</p>
659
+ * </li>
660
+ * </ul>
661
+ * @public
662
+ */
663
+ MaxCapacity?: number;
664
+ /**
665
+ * <p>The name of the <code>SecurityConfiguration</code> structure to be used with this
666
+ * job.</p>
667
+ * @public
668
+ */
669
+ SecurityConfiguration?: string;
670
+ /**
671
+ * <p>The tags to use with this job. You may use tags to limit access to the job. For more information about tags in Glue, see <a href="https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html">Amazon Web Services Tags in Glue</a> in the developer guide.</p>
672
+ * @public
673
+ */
674
+ Tags?: Record<string, string>;
675
+ /**
676
+ * <p>Specifies configuration properties of a job notification.</p>
677
+ * @public
678
+ */
679
+ NotificationProperty?: NotificationProperty;
680
+ /**
681
+ * <p>In Spark jobs, <code>GlueVersion</code> determines the versions of Apache Spark and Python
682
+ * that Glue available in a job. The Python version indicates the version
683
+ * supported for jobs of type Spark. </p>
684
+ * <p>Ray jobs should set <code>GlueVersion</code> to <code>4.0</code> or greater. However,
685
+ * the versions of Ray, Python and additional libraries available in your Ray job are determined
686
+ * by the <code>Runtime</code> parameter of the Job command.</p>
687
+ * <p>For more information about the available Glue versions and corresponding
688
+ * Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer
689
+ * guide.</p>
690
+ * <p>Jobs that are created without specifying a Glue version default to Glue 0.9.</p>
691
+ * @public
692
+ */
693
+ GlueVersion?: string;
694
+ /**
695
+ * <p>The number of workers of a defined <code>workerType</code> that are allocated when a job runs.</p>
696
+ * @public
697
+ */
698
+ NumberOfWorkers?: number;
699
+ /**
700
+ * <p>The type of predefined worker that is allocated when a job runs. Accepts a value of
701
+ * G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.</p>
702
+ * <ul>
703
+ * <li>
704
+ * <p>For the <code>G.1X</code> 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.</p>
705
+ * </li>
706
+ * <li>
707
+ * <p>For the <code>G.2X</code> 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.</p>
708
+ * </li>
709
+ * <li>
710
+ * <p>For the <code>G.4X</code> 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 Glue version 3.0 or later Spark ETL jobs in the following Amazon Web Services 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).</p>
711
+ * </li>
712
+ * <li>
713
+ * <p>For the <code>G.8X</code> 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 Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web Services Regions as supported for the <code>G.4X</code> worker type.</p>
714
+ * </li>
715
+ * <li>
716
+ * <p>For the <code>G.025X</code> 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 Glue version 3.0 streaming jobs.</p>
717
+ * </li>
718
+ * <li>
719
+ * <p>For the <code>Z.2X</code> 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.</p>
720
+ * </li>
721
+ * </ul>
722
+ * @public
723
+ */
724
+ WorkerType?: WorkerType;
725
+ /**
726
+ * <p>The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.</p>
727
+ * @public
728
+ */
729
+ CodeGenConfigurationNodes?: Record<string, CodeGenConfigurationNode>;
730
+ /**
731
+ * <p>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.</p>
732
+ * <p>The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary. </p>
733
+ * <p>Only jobs with Glue version 3.0 and above and command type <code>glueetl</code> will be allowed to set <code>ExecutionClass</code> to <code>FLEX</code>. The flexible execution class is available for Spark jobs.</p>
734
+ * @public
735
+ */
736
+ ExecutionClass?: ExecutionClass;
737
+ /**
738
+ * <p>The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.</p>
739
+ * @public
740
+ */
741
+ SourceControlDetails?: SourceControlDetails;
742
+ /**
743
+ * <p>This field specifies a day of the week and hour for a maintenance window for streaming jobs. Glue periodically performs maintenance activities. During these maintenance windows, Glue will need to restart your streaming jobs.</p>
744
+ * <p>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.</p>
745
+ * @public
746
+ */
747
+ MaintenanceWindow?: string;
748
+ }
749
+ /**
750
+ * <p>Specifies a job definition.</p>
751
+ * @public
752
+ */
753
+ export interface Job {
754
+ /**
755
+ * <p>The name you assign to this job definition.</p>
756
+ * @public
757
+ */
758
+ Name?: string;
759
+ /**
760
+ * <p>A mode that describes how a job was created. Valid values are:</p>
761
+ * <ul>
762
+ * <li>
763
+ * <p>
764
+ * <code>SCRIPT</code> - The job was created using the Glue Studio script editor.</p>
765
+ * </li>
766
+ * <li>
767
+ * <p>
768
+ * <code>VISUAL</code> - The job was created using the Glue Studio visual editor.</p>
769
+ * </li>
770
+ * <li>
771
+ * <p>
772
+ * <code>NOTEBOOK</code> - The job was created using an interactive sessions notebook.</p>
773
+ * </li>
774
+ * </ul>
775
+ * <p>When the <code>JobMode</code> field is missing or null, <code>SCRIPT</code> is assigned as the default value.</p>
776
+ * @public
777
+ */
778
+ JobMode?: JobMode;
779
+ /**
780
+ * <p>A description of the job.</p>
781
+ * @public
782
+ */
783
+ Description?: string;
784
+ /**
785
+ * <p>This field is reserved for future use.</p>
786
+ * @public
787
+ */
788
+ LogUri?: string;
789
+ /**
790
+ * <p>The name or Amazon Resource Name (ARN) of the IAM role associated with this job.</p>
791
+ * @public
792
+ */
793
+ Role?: string;
794
+ /**
795
+ * <p>The time and date that this job definition was created.</p>
796
+ * @public
797
+ */
798
+ CreatedOn?: Date;
799
+ /**
800
+ * <p>The last point in time when this job definition was modified.</p>
801
+ * @public
802
+ */
803
+ LastModifiedOn?: Date;
804
+ /**
805
+ * <p>An <code>ExecutionProperty</code> specifying the maximum number of concurrent runs allowed
806
+ * for this job.</p>
807
+ * @public
808
+ */
809
+ ExecutionProperty?: ExecutionProperty;
810
+ /**
811
+ * <p>The <code>JobCommand</code> that runs this job.</p>
812
+ * @public
813
+ */
814
+ Command?: JobCommand;
815
+ /**
816
+ * <p>The default arguments for every run of this job, specified as name-value pairs.</p>
817
+ * <p>You can specify arguments here that your own job-execution script
818
+ * consumes, as well as arguments that Glue itself consumes.</p>
819
+ * <p>Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets
820
+ * from a Glue Connection, Secrets Manager or other secret management
821
+ * mechanism if you intend to keep them within the Job. </p>
822
+ * <p>For information about how to specify and consume your own Job arguments, see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling Glue APIs in Python</a> topic in the developer guide.</p>
823
+ * <p>For information about the arguments you can provide to this field when configuring Spark jobs,
824
+ * see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special Parameters Used by Glue</a> topic in the developer guide.</p>
825
+ * <p>For information about the arguments you can provide to this field when configuring Ray
826
+ * jobs, see <a href="https://docs.aws.amazon.com/glue/latest/dg/author-job-ray-job-parameters.html">Using
827
+ * job parameters in Ray jobs</a> in the developer guide.</p>
828
+ * @public
829
+ */
830
+ DefaultArguments?: Record<string, string>;
831
+ /**
832
+ * <p>Arguments for this job that are not overridden when providing job arguments
833
+ * in a job run, specified as name-value pairs.</p>
834
+ * @public
835
+ */
836
+ NonOverridableArguments?: Record<string, string>;
837
+ /**
838
+ * <p>The connections used for this job.</p>
839
+ * @public
840
+ */
841
+ Connections?: ConnectionsList;
842
+ /**
843
+ * <p>The maximum number of times to retry this job after a JobRun fails.</p>
844
+ * @public
845
+ */
846
+ MaxRetries?: number;
847
+ /**
848
+ * @deprecated
849
+ *
850
+ * <p>This field is deprecated. Use <code>MaxCapacity</code> instead.</p>
851
+ * <p>The number of Glue data processing units (DPUs) allocated to runs of this job. You can
852
+ * allocate a minimum of 2 DPUs; the default is 10. A DPU is a relative measure of processing
853
+ * power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information,
854
+ * see the <a href="https://aws.amazon.com/glue/pricing/">Glue pricing
855
+ * page</a>.</p>
856
+ * <p></p>
857
+ * @public
858
+ */
859
+ AllocatedCapacity?: number;
860
+ /**
861
+ * <p>The job timeout in minutes. This is the maximum time that a job run
862
+ * can consume resources before it is terminated and enters <code>TIMEOUT</code>
863
+ * status. The default is 2,880 minutes (48 hours) for batch jobs.</p>
864
+ * <p>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.</p>
865
+ * @public
866
+ */
867
+ Timeout?: number;
868
+ /**
869
+ * <p>For Glue version 1.0 or earlier jobs, using the standard worker type, the number of
870
+ * Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is
871
+ * a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB
872
+ * of memory. For more information, see the <a href="https://aws.amazon.com/glue/pricing/">
873
+ * Glue pricing page</a>.</p>
874
+ * <p>For Glue version 2.0 or later jobs, you cannot specify a <code>Maximum capacity</code>.
875
+ * Instead, you should specify a <code>Worker type</code> and the <code>Number of workers</code>.</p>
876
+ * <p>Do not set <code>MaxCapacity</code> if using <code>WorkerType</code> and <code>NumberOfWorkers</code>.</p>
877
+ * <p>The value that can be allocated for <code>MaxCapacity</code> depends on whether you are
878
+ * running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming ETL
879
+ * job:</p>
880
+ * <ul>
881
+ * <li>
882
+ * <p>When you specify a Python shell job (<code>JobCommand.Name</code>="pythonshell"), you can
883
+ * allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU.</p>
884
+ * </li>
885
+ * <li>
886
+ * <p>When you specify an Apache Spark ETL job (<code>JobCommand.Name</code>="glueetl") or Apache
887
+ * Spark streaming ETL job (<code>JobCommand.Name</code>="gluestreaming"), you can allocate from 2 to 100 DPUs.
888
+ * The default is 10 DPUs. This job type cannot have a fractional DPU allocation.</p>
889
+ * </li>
890
+ * </ul>
891
+ * @public
892
+ */
893
+ MaxCapacity?: number;
894
+ /**
895
+ * <p>The type of predefined worker that is allocated when a job runs. Accepts a value of
896
+ * G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.</p>
897
+ * <ul>
898
+ * <li>
899
+ * <p>For the <code>G.1X</code> 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.</p>
900
+ * </li>
901
+ * <li>
902
+ * <p>For the <code>G.2X</code> 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.</p>
903
+ * </li>
904
+ * <li>
905
+ * <p>For the <code>G.4X</code> 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 Glue version 3.0 or later Spark ETL jobs in the following Amazon Web Services 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).</p>
906
+ * </li>
907
+ * <li>
908
+ * <p>For the <code>G.8X</code> 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 Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web Services Regions as supported for the <code>G.4X</code> worker type.</p>
909
+ * </li>
910
+ * <li>
911
+ * <p>For the <code>G.025X</code> 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 Glue version 3.0 streaming jobs.</p>
912
+ * </li>
913
+ * <li>
914
+ * <p>For the <code>Z.2X</code> 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.</p>
915
+ * </li>
916
+ * </ul>
917
+ * @public
918
+ */
919
+ WorkerType?: WorkerType;
920
+ /**
921
+ * <p>The number of workers of a defined <code>workerType</code> that are allocated when a job runs.</p>
922
+ * @public
923
+ */
924
+ NumberOfWorkers?: number;
925
+ /**
926
+ * <p>The name of the <code>SecurityConfiguration</code> structure to be used with this
927
+ * job.</p>
928
+ * @public
929
+ */
930
+ SecurityConfiguration?: string;
931
+ /**
932
+ * <p>Specifies configuration properties of a job notification.</p>
933
+ * @public
934
+ */
935
+ NotificationProperty?: NotificationProperty;
936
+ /**
937
+ * <p>In Spark jobs, <code>GlueVersion</code> determines the versions of Apache Spark and Python
938
+ * that Glue available in a job. The Python version indicates the version
939
+ * supported for jobs of type Spark. </p>
940
+ * <p>Ray jobs should set <code>GlueVersion</code> to <code>4.0</code> or greater. However,
941
+ * the versions of Ray, Python and additional libraries available in your Ray job are determined
942
+ * by the <code>Runtime</code> parameter of the Job command.</p>
943
+ * <p>For more information about the available Glue versions and corresponding
944
+ * Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer
945
+ * guide.</p>
946
+ * <p>Jobs that are created without specifying a Glue version default to Glue 0.9.</p>
947
+ * @public
948
+ */
949
+ GlueVersion?: string;
950
+ /**
951
+ * <p>The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.</p>
952
+ * @public
953
+ */
954
+ CodeGenConfigurationNodes?: Record<string, CodeGenConfigurationNode>;
955
+ /**
956
+ * <p>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.</p>
957
+ * <p>The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary. </p>
958
+ * <p>Only jobs with Glue version 3.0 and above and command type <code>glueetl</code> will be allowed to set <code>ExecutionClass</code> to <code>FLEX</code>. The flexible execution class is available for Spark jobs.</p>
959
+ * @public
960
+ */
961
+ ExecutionClass?: ExecutionClass;
962
+ /**
963
+ * <p>The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.</p>
964
+ * @public
965
+ */
966
+ SourceControlDetails?: SourceControlDetails;
967
+ /**
968
+ * <p>This field specifies a day of the week and hour for a maintenance window for streaming jobs. Glue periodically performs maintenance activities. During these maintenance windows, Glue will need to restart your streaming jobs.</p>
969
+ * <p>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.</p>
970
+ * @public
971
+ */
972
+ MaintenanceWindow?: string;
973
+ /**
974
+ * <p>The name of an Glue usage profile associated with the job.</p>
975
+ * @public
976
+ */
977
+ ProfileName?: string;
978
+ }
979
+ /**
980
+ * <p>Specifies information used to update an existing job definition. The previous job
981
+ * definition is completely overwritten by this information.</p>
982
+ * @public
983
+ */
984
+ export interface JobUpdate {
985
+ /**
986
+ * <p>A mode that describes how a job was created. Valid values are:</p>
987
+ * <ul>
988
+ * <li>
989
+ * <p>
990
+ * <code>SCRIPT</code> - The job was created using the Glue Studio script editor.</p>
991
+ * </li>
992
+ * <li>
993
+ * <p>
994
+ * <code>VISUAL</code> - The job was created using the Glue Studio visual editor.</p>
995
+ * </li>
996
+ * <li>
997
+ * <p>
998
+ * <code>NOTEBOOK</code> - The job was created using an interactive sessions notebook.</p>
999
+ * </li>
1000
+ * </ul>
1001
+ * <p>When the <code>JobMode</code> field is missing or null, <code>SCRIPT</code> is assigned as the default value.</p>
1002
+ * @public
1003
+ */
1004
+ JobMode?: JobMode;
1005
+ /**
1006
+ * <p>Description of the job being defined.</p>
1007
+ * @public
1008
+ */
1009
+ Description?: string;
1010
+ /**
1011
+ * <p>This field is reserved for future use.</p>
1012
+ * @public
1013
+ */
1014
+ LogUri?: string;
1015
+ /**
1016
+ * <p>The name or Amazon Resource Name (ARN) of the IAM role associated with this job
1017
+ * (required).</p>
1018
+ * @public
1019
+ */
1020
+ Role?: string;
1021
+ /**
1022
+ * <p>An <code>ExecutionProperty</code> specifying the maximum number of concurrent runs allowed
1023
+ * for this job.</p>
1024
+ * @public
1025
+ */
1026
+ ExecutionProperty?: ExecutionProperty;
1027
+ /**
1028
+ * <p>The <code>JobCommand</code> that runs this job (required).</p>
1029
+ * @public
1030
+ */
1031
+ Command?: JobCommand;
1032
+ /**
1033
+ * <p>The default arguments for every run of this job, specified as name-value pairs.</p>
1034
+ * <p>You can specify arguments here that your own job-execution script
1035
+ * consumes, as well as arguments that Glue itself consumes.</p>
1036
+ * <p>Job arguments may be logged. Do not pass plaintext secrets as arguments. Retrieve secrets
1037
+ * from a Glue Connection, Secrets Manager or other secret management
1038
+ * mechanism if you intend to keep them within the Job. </p>
1039
+ * <p>For information about how to specify and consume your own Job arguments, see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html">Calling Glue APIs in Python</a> topic in the developer guide.</p>
1040
+ * <p>For information about the arguments you can provide to this field when configuring Spark jobs,
1041
+ * see the <a href="https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html">Special Parameters Used by Glue</a> topic in the developer guide.</p>
1042
+ * <p>For information about the arguments you can provide to this field when configuring Ray
1043
+ * jobs, see <a href="https://docs.aws.amazon.com/glue/latest/dg/author-job-ray-job-parameters.html">Using
1044
+ * job parameters in Ray jobs</a> in the developer guide.</p>
1045
+ * @public
1046
+ */
1047
+ DefaultArguments?: Record<string, string>;
1048
+ /**
1049
+ * <p>Arguments for this job that are not overridden when providing job arguments
1050
+ * in a job run, specified as name-value pairs.</p>
1051
+ * @public
1052
+ */
1053
+ NonOverridableArguments?: Record<string, string>;
1054
+ /**
1055
+ * <p>The connections used for this job.</p>
1056
+ * @public
1057
+ */
1058
+ Connections?: ConnectionsList;
1059
+ /**
1060
+ * <p>The maximum number of times to retry this job if it fails.</p>
1061
+ * @public
1062
+ */
1063
+ MaxRetries?: number;
1064
+ /**
1065
+ * @deprecated
1066
+ *
1067
+ * <p>This field is deprecated. Use <code>MaxCapacity</code> instead.</p>
1068
+ * <p>The number of Glue data processing units (DPUs) to allocate to this job. You can
1069
+ * allocate a minimum of 2 DPUs; the default is 10. A DPU is a relative measure of processing
1070
+ * power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information,
1071
+ * see the <a href="https://aws.amazon.com/glue/pricing/">Glue pricing
1072
+ * page</a>.</p>
1073
+ * @public
1074
+ */
1075
+ AllocatedCapacity?: number;
1076
+ /**
1077
+ * <p>The job timeout in minutes. This is the maximum time that a job run
1078
+ * can consume resources before it is terminated and enters <code>TIMEOUT</code>
1079
+ * status. The default is 2,880 minutes (48 hours) for batch jobs.</p>
1080
+ * <p>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.</p>
1081
+ * @public
1082
+ */
1083
+ Timeout?: number;
1084
+ /**
1085
+ * <p>For Glue version 1.0 or earlier jobs, using the standard worker type, the number of
1086
+ * Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is
1087
+ * a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB
1088
+ * of memory. For more information, see the <a href="https://aws.amazon.com/glue/pricing/">
1089
+ * Glue pricing page</a>.</p>
1090
+ * <p>For Glue version 2.0+ jobs, you cannot specify a <code>Maximum capacity</code>.
1091
+ * Instead, you should specify a <code>Worker type</code> and the <code>Number of workers</code>.</p>
1092
+ * <p>Do not set <code>MaxCapacity</code> if using <code>WorkerType</code> and <code>NumberOfWorkers</code>.</p>
1093
+ * <p>The value that can be allocated for <code>MaxCapacity</code> depends on whether you are
1094
+ * running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming ETL
1095
+ * job:</p>
1096
+ * <ul>
1097
+ * <li>
1098
+ * <p>When you specify a Python shell job (<code>JobCommand.Name</code>="pythonshell"), you can
1099
+ * allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU.</p>
1100
+ * </li>
1101
+ * <li>
1102
+ * <p>When you specify an Apache Spark ETL job (<code>JobCommand.Name</code>="glueetl") or Apache
1103
+ * Spark streaming ETL job (<code>JobCommand.Name</code>="gluestreaming"), you can allocate from 2 to 100 DPUs.
1104
+ * The default is 10 DPUs. This job type cannot have a fractional DPU allocation.</p>
1105
+ * </li>
1106
+ * </ul>
1107
+ * @public
1108
+ */
1109
+ MaxCapacity?: number;
1110
+ /**
1111
+ * <p>The type of predefined worker that is allocated when a job runs. Accepts a value of
1112
+ * G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.</p>
1113
+ * <ul>
1114
+ * <li>
1115
+ * <p>For the <code>G.1X</code> 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.</p>
1116
+ * </li>
1117
+ * <li>
1118
+ * <p>For the <code>G.2X</code> 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.</p>
1119
+ * </li>
1120
+ * <li>
1121
+ * <p>For the <code>G.4X</code> 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 Glue version 3.0 or later Spark ETL jobs in the following Amazon Web Services 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).</p>
1122
+ * </li>
1123
+ * <li>
1124
+ * <p>For the <code>G.8X</code> 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 Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web Services Regions as supported for the <code>G.4X</code> worker type.</p>
1125
+ * </li>
1126
+ * <li>
1127
+ * <p>For the <code>G.025X</code> 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 Glue version 3.0 streaming jobs.</p>
1128
+ * </li>
1129
+ * <li>
1130
+ * <p>For the <code>Z.2X</code> 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.</p>
1131
+ * </li>
1132
+ * </ul>
1133
+ * @public
1134
+ */
1135
+ WorkerType?: WorkerType;
1136
+ /**
1137
+ * <p>The number of workers of a defined <code>workerType</code> that are allocated when a job runs.</p>
1138
+ * @public
1139
+ */
1140
+ NumberOfWorkers?: number;
1141
+ /**
1142
+ * <p>The name of the <code>SecurityConfiguration</code> structure to be used with this
1143
+ * job.</p>
1144
+ * @public
1145
+ */
1146
+ SecurityConfiguration?: string;
1147
+ /**
1148
+ * <p>Specifies the configuration properties of a job notification.</p>
1149
+ * @public
1150
+ */
1151
+ NotificationProperty?: NotificationProperty;
1152
+ /**
1153
+ * <p>In Spark jobs, <code>GlueVersion</code> determines the versions of Apache Spark and Python
1154
+ * that Glue available in a job. The Python version indicates the version
1155
+ * supported for jobs of type Spark. </p>
1156
+ * <p>Ray jobs should set <code>GlueVersion</code> to <code>4.0</code> or greater. However,
1157
+ * the versions of Ray, Python and additional libraries available in your Ray job are determined
1158
+ * by the <code>Runtime</code> parameter of the Job command.</p>
1159
+ * <p>For more information about the available Glue versions and corresponding
1160
+ * Spark and Python versions, see <a href="https://docs.aws.amazon.com/glue/latest/dg/add-job.html">Glue version</a> in the developer
1161
+ * guide.</p>
1162
+ * <p>Jobs that are created without specifying a Glue version default to Glue 0.9.</p>
1163
+ * @public
1164
+ */
1165
+ GlueVersion?: string;
1166
+ /**
1167
+ * <p>The representation of a directed acyclic graph on which both the Glue Studio visual component and Glue Studio code generation is based.</p>
1168
+ * @public
1169
+ */
1170
+ CodeGenConfigurationNodes?: Record<string, CodeGenConfigurationNode>;
1171
+ /**
1172
+ * <p>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.</p>
1173
+ * <p>The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary. </p>
1174
+ * <p>Only jobs with Glue version 3.0 and above and command type <code>glueetl</code> will be allowed to set <code>ExecutionClass</code> to <code>FLEX</code>. The flexible execution class is available for Spark jobs.</p>
1175
+ * @public
1176
+ */
1177
+ ExecutionClass?: ExecutionClass;
1178
+ /**
1179
+ * <p>The details for a source control configuration for a job, allowing synchronization of job artifacts to or from a remote repository.</p>
1180
+ * @public
1181
+ */
1182
+ SourceControlDetails?: SourceControlDetails;
1183
+ /**
1184
+ * <p>This field specifies a day of the week and hour for a maintenance window for streaming jobs. Glue periodically performs maintenance activities. During these maintenance windows, Glue will need to restart your streaming jobs.</p>
1185
+ * <p>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.</p>
1186
+ * @public
1187
+ */
1188
+ MaintenanceWindow?: string;
1189
+ }
1190
+ /**
1191
+ * @public
1192
+ */
1193
+ export interface GetJobResponse {
1194
+ /**
1195
+ * <p>The requested job definition.</p>
1196
+ * @public
1197
+ */
1198
+ Job?: Job;
1199
+ }
1200
+ /**
1201
+ * @public
1202
+ */
1203
+ export interface UpdateJobRequest {
1204
+ /**
1205
+ * <p>The name of the job definition to update.</p>
1206
+ * @public
1207
+ */
1208
+ JobName: string | undefined;
1209
+ /**
1210
+ * <p>Specifies the values with which to update the job definition. Unspecified configuration is removed or reset to default values.</p>
1211
+ * @public
1212
+ */
1213
+ JobUpdate: JobUpdate | undefined;
1214
+ }
1215
+ /**
1216
+ * @public
1217
+ */
1218
+ export interface BatchGetJobsResponse {
1219
+ /**
1220
+ * <p>A list of job definitions.</p>
1221
+ * @public
1222
+ */
1223
+ Jobs?: Job[];
1224
+ /**
1225
+ * <p>A list of names of jobs not found.</p>
1226
+ * @public
1227
+ */
1228
+ JobsNotFound?: string[];
1229
+ }
1230
+ /**
1231
+ * @public
1232
+ */
1233
+ export interface GetJobsResponse {
1234
+ /**
1235
+ * <p>A list of job definitions.</p>
1236
+ * @public
1237
+ */
1238
+ Jobs?: Job[];
1239
+ /**
1240
+ * <p>A continuation token, if not all job definitions have yet been returned.</p>
1241
+ * @public
1242
+ */
1243
+ NextToken?: string;
1244
+ }
1245
+ /**
1246
+ * @internal
1247
+ */
1248
+ export declare const CreateJobRequestFilterSensitiveLog: (obj: CreateJobRequest) => any;
1249
+ /**
1250
+ * @internal
1251
+ */
1252
+ export declare const JobFilterSensitiveLog: (obj: Job) => any;
1253
+ /**
1254
+ * @internal
1255
+ */
1256
+ export declare const JobUpdateFilterSensitiveLog: (obj: JobUpdate) => any;
1257
+ /**
1258
+ * @internal
1259
+ */
1260
+ export declare const GetJobResponseFilterSensitiveLog: (obj: GetJobResponse) => any;
1261
+ /**
1262
+ * @internal
1263
+ */
1264
+ export declare const UpdateJobRequestFilterSensitiveLog: (obj: UpdateJobRequest) => any;
1265
+ /**
1266
+ * @internal
1267
+ */
1268
+ export declare const BatchGetJobsResponseFilterSensitiveLog: (obj: BatchGetJobsResponse) => any;
1269
+ /**
1270
+ * @internal
1271
+ */
1272
+ export declare const GetJobsResponseFilterSensitiveLog: (obj: GetJobsResponse) => any;