aws-sdk-emrserverless 1.0.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.
@@ -0,0 +1,1639 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::EMRServerless
11
+ module Types
12
+
13
+ # Information about an application. EMR Serverless uses applications to
14
+ # run jobs.
15
+ #
16
+ # @!attribute [rw] application_id
17
+ # The ID of the application.
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] name
21
+ # The name of the application.
22
+ # @return [String]
23
+ #
24
+ # @!attribute [rw] arn
25
+ # The ARN of the application.
26
+ # @return [String]
27
+ #
28
+ # @!attribute [rw] release_label
29
+ # The EMR release version associated with the application.
30
+ # @return [String]
31
+ #
32
+ # @!attribute [rw] type
33
+ # The type of application, such as Spark or Hive.
34
+ # @return [String]
35
+ #
36
+ # @!attribute [rw] state
37
+ # The state of the application.
38
+ # @return [String]
39
+ #
40
+ # @!attribute [rw] state_details
41
+ # The state details of the application.
42
+ # @return [String]
43
+ #
44
+ # @!attribute [rw] initial_capacity
45
+ # The initial capacity of the application.
46
+ # @return [Hash<String,Types::InitialCapacityConfig>]
47
+ #
48
+ # @!attribute [rw] maximum_capacity
49
+ # The maximum capacity of the application. This is cumulative across
50
+ # all workers at any given point in time during the lifespan of the
51
+ # application is created. No new resources will be created once any
52
+ # one of the defined limits is hit.
53
+ # @return [Types::MaximumAllowedResources]
54
+ #
55
+ # @!attribute [rw] created_at
56
+ # The date and time when the application run was created.
57
+ # @return [Time]
58
+ #
59
+ # @!attribute [rw] updated_at
60
+ # The date and time when the application run was last updated.
61
+ # @return [Time]
62
+ #
63
+ # @!attribute [rw] tags
64
+ # The tags assigned to the application.
65
+ # @return [Hash<String,String>]
66
+ #
67
+ # @!attribute [rw] auto_start_configuration
68
+ # The configuration for an application to automatically start on job
69
+ # submission.
70
+ # @return [Types::AutoStartConfig]
71
+ #
72
+ # @!attribute [rw] auto_stop_configuration
73
+ # The configuration for an application to automatically stop after a
74
+ # certain amount of time being idle.
75
+ # @return [Types::AutoStopConfig]
76
+ #
77
+ # @!attribute [rw] network_configuration
78
+ # The network configuration for customer VPC connectivity for the
79
+ # application.
80
+ # @return [Types::NetworkConfiguration]
81
+ #
82
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/Application AWS API Documentation
83
+ #
84
+ class Application < Struct.new(
85
+ :application_id,
86
+ :name,
87
+ :arn,
88
+ :release_label,
89
+ :type,
90
+ :state,
91
+ :state_details,
92
+ :initial_capacity,
93
+ :maximum_capacity,
94
+ :created_at,
95
+ :updated_at,
96
+ :tags,
97
+ :auto_start_configuration,
98
+ :auto_stop_configuration,
99
+ :network_configuration)
100
+ SENSITIVE = []
101
+ include Aws::Structure
102
+ end
103
+
104
+ # The summary of attributes associated with an application.
105
+ #
106
+ # @!attribute [rw] id
107
+ # The ID of the application.
108
+ # @return [String]
109
+ #
110
+ # @!attribute [rw] name
111
+ # The name of the application.
112
+ # @return [String]
113
+ #
114
+ # @!attribute [rw] arn
115
+ # The ARN of the application.
116
+ # @return [String]
117
+ #
118
+ # @!attribute [rw] release_label
119
+ # The EMR release version associated with the application.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] type
123
+ # The type of application, such as Spark or Hive.
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] state
127
+ # The state of the application.
128
+ # @return [String]
129
+ #
130
+ # @!attribute [rw] state_details
131
+ # The state details of the application.
132
+ # @return [String]
133
+ #
134
+ # @!attribute [rw] created_at
135
+ # The date and time when the application was created.
136
+ # @return [Time]
137
+ #
138
+ # @!attribute [rw] updated_at
139
+ # The date and time when the application was last updated.
140
+ # @return [Time]
141
+ #
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ApplicationSummary AWS API Documentation
143
+ #
144
+ class ApplicationSummary < Struct.new(
145
+ :id,
146
+ :name,
147
+ :arn,
148
+ :release_label,
149
+ :type,
150
+ :state,
151
+ :state_details,
152
+ :created_at,
153
+ :updated_at)
154
+ SENSITIVE = []
155
+ include Aws::Structure
156
+ end
157
+
158
+ # The configuration for an application to automatically start on job
159
+ # submission.
160
+ #
161
+ # @note When making an API call, you may pass AutoStartConfig
162
+ # data as a hash:
163
+ #
164
+ # {
165
+ # enabled: false,
166
+ # }
167
+ #
168
+ # @!attribute [rw] enabled
169
+ # Enables the application to automatically start on job submission.
170
+ # Defaults to true.
171
+ # @return [Boolean]
172
+ #
173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/AutoStartConfig AWS API Documentation
174
+ #
175
+ class AutoStartConfig < Struct.new(
176
+ :enabled)
177
+ SENSITIVE = []
178
+ include Aws::Structure
179
+ end
180
+
181
+ # The configuration for an application to automatically stop after a
182
+ # certain amount of time being idle.
183
+ #
184
+ # @note When making an API call, you may pass AutoStopConfig
185
+ # data as a hash:
186
+ #
187
+ # {
188
+ # enabled: false,
189
+ # idle_timeout_minutes: 1,
190
+ # }
191
+ #
192
+ # @!attribute [rw] enabled
193
+ # Enables the application to automatically stop after a certain amount
194
+ # of time being idle. Defaults to true.
195
+ # @return [Boolean]
196
+ #
197
+ # @!attribute [rw] idle_timeout_minutes
198
+ # The amount of idle time in minutes after which your application will
199
+ # automatically stop. Defaults to 15 minutes.
200
+ # @return [Integer]
201
+ #
202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/AutoStopConfig AWS API Documentation
203
+ #
204
+ class AutoStopConfig < Struct.new(
205
+ :enabled,
206
+ :idle_timeout_minutes)
207
+ SENSITIVE = []
208
+ include Aws::Structure
209
+ end
210
+
211
+ # @note When making an API call, you may pass CancelJobRunRequest
212
+ # data as a hash:
213
+ #
214
+ # {
215
+ # application_id: "ApplicationId", # required
216
+ # job_run_id: "JobRunId", # required
217
+ # }
218
+ #
219
+ # @!attribute [rw] application_id
220
+ # The ID of the application on which the job run will be canceled.
221
+ # @return [String]
222
+ #
223
+ # @!attribute [rw] job_run_id
224
+ # The ID of the job run to cancel.
225
+ # @return [String]
226
+ #
227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CancelJobRunRequest AWS API Documentation
228
+ #
229
+ class CancelJobRunRequest < Struct.new(
230
+ :application_id,
231
+ :job_run_id)
232
+ SENSITIVE = []
233
+ include Aws::Structure
234
+ end
235
+
236
+ # @!attribute [rw] application_id
237
+ # The output contains the application ID on which the job run is
238
+ # cancelled.
239
+ # @return [String]
240
+ #
241
+ # @!attribute [rw] job_run_id
242
+ # The output contains the ID of the cancelled job run.
243
+ # @return [String]
244
+ #
245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CancelJobRunResponse AWS API Documentation
246
+ #
247
+ class CancelJobRunResponse < Struct.new(
248
+ :application_id,
249
+ :job_run_id)
250
+ SENSITIVE = []
251
+ include Aws::Structure
252
+ end
253
+
254
+ # A configuration specification to be used when provisioning an
255
+ # application. A configuration consists of a classification, properties,
256
+ # and optional nested configurations. A classification refers to an
257
+ # application-specific configuration file. Properties are the settings
258
+ # you want to change in that file.
259
+ #
260
+ # @note When making an API call, you may pass Configuration
261
+ # data as a hash:
262
+ #
263
+ # {
264
+ # classification: "String1024", # required
265
+ # properties: {
266
+ # "String1024" => "String1024",
267
+ # },
268
+ # configurations: [
269
+ # {
270
+ # classification: "String1024", # required
271
+ # properties: {
272
+ # "String1024" => "String1024",
273
+ # },
274
+ # configurations: {
275
+ # # recursive ConfigurationList
276
+ # },
277
+ # },
278
+ # ],
279
+ # }
280
+ #
281
+ # @!attribute [rw] classification
282
+ # The classification within a configuration.
283
+ # @return [String]
284
+ #
285
+ # @!attribute [rw] properties
286
+ # A set of properties specified within a configuration classification.
287
+ # @return [Hash<String,String>]
288
+ #
289
+ # @!attribute [rw] configurations
290
+ # A list of additional configurations to apply within a configuration
291
+ # object.
292
+ # @return [Array<Types::Configuration>]
293
+ #
294
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/Configuration AWS API Documentation
295
+ #
296
+ class Configuration < Struct.new(
297
+ :classification,
298
+ :properties,
299
+ :configurations)
300
+ SENSITIVE = [:properties]
301
+ include Aws::Structure
302
+ end
303
+
304
+ # A configuration specification to be used to override existing
305
+ # configurations.
306
+ #
307
+ # @note When making an API call, you may pass ConfigurationOverrides
308
+ # data as a hash:
309
+ #
310
+ # {
311
+ # application_configuration: [
312
+ # {
313
+ # classification: "String1024", # required
314
+ # properties: {
315
+ # "String1024" => "String1024",
316
+ # },
317
+ # configurations: {
318
+ # # recursive ConfigurationList
319
+ # },
320
+ # },
321
+ # ],
322
+ # monitoring_configuration: {
323
+ # s3_monitoring_configuration: {
324
+ # log_uri: "UriString",
325
+ # encryption_key_arn: "EncryptionKeyArn",
326
+ # },
327
+ # managed_persistence_monitoring_configuration: {
328
+ # enabled: false,
329
+ # encryption_key_arn: "EncryptionKeyArn",
330
+ # },
331
+ # },
332
+ # }
333
+ #
334
+ # @!attribute [rw] application_configuration
335
+ # The override configurations for the application.
336
+ # @return [Array<Types::Configuration>]
337
+ #
338
+ # @!attribute [rw] monitoring_configuration
339
+ # The override configurations for monitoring.
340
+ # @return [Types::MonitoringConfiguration]
341
+ #
342
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ConfigurationOverrides AWS API Documentation
343
+ #
344
+ class ConfigurationOverrides < Struct.new(
345
+ :application_configuration,
346
+ :monitoring_configuration)
347
+ SENSITIVE = []
348
+ include Aws::Structure
349
+ end
350
+
351
+ # The request could not be processed because of conflict in the current
352
+ # state of the resource.
353
+ #
354
+ # @!attribute [rw] message
355
+ # @return [String]
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ConflictException AWS API Documentation
358
+ #
359
+ class ConflictException < Struct.new(
360
+ :message)
361
+ SENSITIVE = []
362
+ include Aws::Structure
363
+ end
364
+
365
+ # @note When making an API call, you may pass CreateApplicationRequest
366
+ # data as a hash:
367
+ #
368
+ # {
369
+ # name: "ApplicationName",
370
+ # release_label: "ReleaseLabel", # required
371
+ # type: "EngineType", # required
372
+ # client_token: "ClientToken", # required
373
+ # initial_capacity: {
374
+ # "WorkerTypeString" => {
375
+ # worker_count: 1, # required
376
+ # worker_configuration: {
377
+ # cpu: "CpuSize", # required
378
+ # memory: "MemorySize", # required
379
+ # disk: "DiskSize",
380
+ # },
381
+ # },
382
+ # },
383
+ # maximum_capacity: {
384
+ # cpu: "CpuSize", # required
385
+ # memory: "MemorySize", # required
386
+ # disk: "DiskSize",
387
+ # },
388
+ # tags: {
389
+ # "TagKey" => "TagValue",
390
+ # },
391
+ # auto_start_configuration: {
392
+ # enabled: false,
393
+ # },
394
+ # auto_stop_configuration: {
395
+ # enabled: false,
396
+ # idle_timeout_minutes: 1,
397
+ # },
398
+ # network_configuration: {
399
+ # subnet_ids: ["SubnetString"],
400
+ # security_group_ids: ["SecurityGroupString"],
401
+ # },
402
+ # }
403
+ #
404
+ # @!attribute [rw] name
405
+ # The name of the application.
406
+ # @return [String]
407
+ #
408
+ # @!attribute [rw] release_label
409
+ # The EMR release version associated with the application.
410
+ # @return [String]
411
+ #
412
+ # @!attribute [rw] type
413
+ # The type of application you want to start, such as Spark or Hive.
414
+ # @return [String]
415
+ #
416
+ # @!attribute [rw] client_token
417
+ # The client idempotency token of the application to create. Its value
418
+ # must be unique for each request.
419
+ #
420
+ # **A suitable default value is auto-generated.** You should normally
421
+ # not need to pass this option.
422
+ # @return [String]
423
+ #
424
+ # @!attribute [rw] initial_capacity
425
+ # The capacity to initialize when the application is created.
426
+ # @return [Hash<String,Types::InitialCapacityConfig>]
427
+ #
428
+ # @!attribute [rw] maximum_capacity
429
+ # The maximum capacity to allocate when the application is created.
430
+ # This is cumulative across all workers at any given point in time,
431
+ # not just when an application is created. No new resources will be
432
+ # created once any one of the defined limits is hit.
433
+ # @return [Types::MaximumAllowedResources]
434
+ #
435
+ # @!attribute [rw] tags
436
+ # The tags assigned to the application.
437
+ # @return [Hash<String,String>]
438
+ #
439
+ # @!attribute [rw] auto_start_configuration
440
+ # The configuration for an application to automatically start on job
441
+ # submission.
442
+ # @return [Types::AutoStartConfig]
443
+ #
444
+ # @!attribute [rw] auto_stop_configuration
445
+ # The configuration for an application to automatically stop after a
446
+ # certain amount of time being idle.
447
+ # @return [Types::AutoStopConfig]
448
+ #
449
+ # @!attribute [rw] network_configuration
450
+ # The network configuration for customer VPC connectivity.
451
+ # @return [Types::NetworkConfiguration]
452
+ #
453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CreateApplicationRequest AWS API Documentation
454
+ #
455
+ class CreateApplicationRequest < Struct.new(
456
+ :name,
457
+ :release_label,
458
+ :type,
459
+ :client_token,
460
+ :initial_capacity,
461
+ :maximum_capacity,
462
+ :tags,
463
+ :auto_start_configuration,
464
+ :auto_stop_configuration,
465
+ :network_configuration)
466
+ SENSITIVE = []
467
+ include Aws::Structure
468
+ end
469
+
470
+ # @!attribute [rw] application_id
471
+ # The output contains the application ID.
472
+ # @return [String]
473
+ #
474
+ # @!attribute [rw] name
475
+ # The output contains the name of the application.
476
+ # @return [String]
477
+ #
478
+ # @!attribute [rw] arn
479
+ # The output contains the ARN of the application.
480
+ # @return [String]
481
+ #
482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/CreateApplicationResponse AWS API Documentation
483
+ #
484
+ class CreateApplicationResponse < Struct.new(
485
+ :application_id,
486
+ :name,
487
+ :arn)
488
+ SENSITIVE = []
489
+ include Aws::Structure
490
+ end
491
+
492
+ # @note When making an API call, you may pass DeleteApplicationRequest
493
+ # data as a hash:
494
+ #
495
+ # {
496
+ # application_id: "ApplicationId", # required
497
+ # }
498
+ #
499
+ # @!attribute [rw] application_id
500
+ # The ID of the application that will be deleted.
501
+ # @return [String]
502
+ #
503
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/DeleteApplicationRequest AWS API Documentation
504
+ #
505
+ class DeleteApplicationRequest < Struct.new(
506
+ :application_id)
507
+ SENSITIVE = []
508
+ include Aws::Structure
509
+ end
510
+
511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/DeleteApplicationResponse AWS API Documentation
512
+ #
513
+ class DeleteApplicationResponse < Aws::EmptyStructure; end
514
+
515
+ # @note When making an API call, you may pass GetApplicationRequest
516
+ # data as a hash:
517
+ #
518
+ # {
519
+ # application_id: "ApplicationId", # required
520
+ # }
521
+ #
522
+ # @!attribute [rw] application_id
523
+ # The ID of the application that will be described.
524
+ # @return [String]
525
+ #
526
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetApplicationRequest AWS API Documentation
527
+ #
528
+ class GetApplicationRequest < Struct.new(
529
+ :application_id)
530
+ SENSITIVE = []
531
+ include Aws::Structure
532
+ end
533
+
534
+ # @!attribute [rw] application
535
+ # The output displays information about the specified application.
536
+ # @return [Types::Application]
537
+ #
538
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetApplicationResponse AWS API Documentation
539
+ #
540
+ class GetApplicationResponse < Struct.new(
541
+ :application)
542
+ SENSITIVE = []
543
+ include Aws::Structure
544
+ end
545
+
546
+ # @note When making an API call, you may pass GetJobRunRequest
547
+ # data as a hash:
548
+ #
549
+ # {
550
+ # application_id: "ApplicationId", # required
551
+ # job_run_id: "JobRunId", # required
552
+ # }
553
+ #
554
+ # @!attribute [rw] application_id
555
+ # The ID of the application on which the job run is submitted.
556
+ # @return [String]
557
+ #
558
+ # @!attribute [rw] job_run_id
559
+ # The ID of the job run.
560
+ # @return [String]
561
+ #
562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetJobRunRequest AWS API Documentation
563
+ #
564
+ class GetJobRunRequest < Struct.new(
565
+ :application_id,
566
+ :job_run_id)
567
+ SENSITIVE = []
568
+ include Aws::Structure
569
+ end
570
+
571
+ # @!attribute [rw] job_run
572
+ # The output displays information about the job run.
573
+ # @return [Types::JobRun]
574
+ #
575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/GetJobRunResponse AWS API Documentation
576
+ #
577
+ class GetJobRunResponse < Struct.new(
578
+ :job_run)
579
+ SENSITIVE = []
580
+ include Aws::Structure
581
+ end
582
+
583
+ # The configurations for the Hive job driver.
584
+ #
585
+ # @note When making an API call, you may pass Hive
586
+ # data as a hash:
587
+ #
588
+ # {
589
+ # query: "Query", # required
590
+ # init_query_file: "InitScriptPath",
591
+ # parameters: "HiveCliParameters",
592
+ # }
593
+ #
594
+ # @!attribute [rw] query
595
+ # The query for the Hive job run.
596
+ # @return [String]
597
+ #
598
+ # @!attribute [rw] init_query_file
599
+ # The query file for the Hive job run.
600
+ # @return [String]
601
+ #
602
+ # @!attribute [rw] parameters
603
+ # The parameters for the Hive job run.
604
+ # @return [String]
605
+ #
606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/Hive AWS API Documentation
607
+ #
608
+ class Hive < Struct.new(
609
+ :query,
610
+ :init_query_file,
611
+ :parameters)
612
+ SENSITIVE = [:query, :init_query_file, :parameters]
613
+ include Aws::Structure
614
+ end
615
+
616
+ # The initial capacity configuration per worker.
617
+ #
618
+ # @note When making an API call, you may pass InitialCapacityConfig
619
+ # data as a hash:
620
+ #
621
+ # {
622
+ # worker_count: 1, # required
623
+ # worker_configuration: {
624
+ # cpu: "CpuSize", # required
625
+ # memory: "MemorySize", # required
626
+ # disk: "DiskSize",
627
+ # },
628
+ # }
629
+ #
630
+ # @!attribute [rw] worker_count
631
+ # The number of workers in the initial capacity configuration.
632
+ # @return [Integer]
633
+ #
634
+ # @!attribute [rw] worker_configuration
635
+ # The resource configuration of the initial capacity configuration.
636
+ # @return [Types::WorkerResourceConfig]
637
+ #
638
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/InitialCapacityConfig AWS API Documentation
639
+ #
640
+ class InitialCapacityConfig < Struct.new(
641
+ :worker_count,
642
+ :worker_configuration)
643
+ SENSITIVE = []
644
+ include Aws::Structure
645
+ end
646
+
647
+ # Request processing failed because of an error or failure with the
648
+ # service.
649
+ #
650
+ # @!attribute [rw] message
651
+ # @return [String]
652
+ #
653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/InternalServerException AWS API Documentation
654
+ #
655
+ class InternalServerException < Struct.new(
656
+ :message)
657
+ SENSITIVE = []
658
+ include Aws::Structure
659
+ end
660
+
661
+ # The driver that the job runs on.
662
+ #
663
+ # @note JobDriver is a union - when making an API calls you must set exactly one of the members.
664
+ #
665
+ # @note JobDriver is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of JobDriver corresponding to the set member.
666
+ #
667
+ # @!attribute [rw] spark_submit
668
+ # The job driver parameters specified for Spark.
669
+ # @return [Types::SparkSubmit]
670
+ #
671
+ # @!attribute [rw] hive
672
+ # The job driver parameters specified for Hive.
673
+ # @return [Types::Hive]
674
+ #
675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/JobDriver AWS API Documentation
676
+ #
677
+ class JobDriver < Struct.new(
678
+ :spark_submit,
679
+ :hive,
680
+ :unknown)
681
+ SENSITIVE = []
682
+ include Aws::Structure
683
+ include Aws::Structure::Union
684
+
685
+ class SparkSubmit < JobDriver; end
686
+ class Hive < JobDriver; end
687
+ class Unknown < JobDriver; end
688
+ end
689
+
690
+ # Information about a job run. A job run is a unit of work, such as a
691
+ # Spark JAR, Hive query, or SparkSQL query, that you submit to an EMR
692
+ # Serverless application.
693
+ #
694
+ # @!attribute [rw] application_id
695
+ # The ID of the application the job is running on.
696
+ # @return [String]
697
+ #
698
+ # @!attribute [rw] job_run_id
699
+ # The ID of the job run.
700
+ # @return [String]
701
+ #
702
+ # @!attribute [rw] name
703
+ # The optional job run name. This doesn't have to be unique.
704
+ # @return [String]
705
+ #
706
+ # @!attribute [rw] arn
707
+ # The execution role ARN of the job run.
708
+ # @return [String]
709
+ #
710
+ # @!attribute [rw] created_by
711
+ # The user who created the job run.
712
+ # @return [String]
713
+ #
714
+ # @!attribute [rw] created_at
715
+ # The date and time when the job run was created.
716
+ # @return [Time]
717
+ #
718
+ # @!attribute [rw] updated_at
719
+ # The date and time when the job run was updated.
720
+ # @return [Time]
721
+ #
722
+ # @!attribute [rw] execution_role
723
+ # The execution role ARN of the job run.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] state
727
+ # The state of the job run.
728
+ # @return [String]
729
+ #
730
+ # @!attribute [rw] state_details
731
+ # The state details of the job run.
732
+ # @return [String]
733
+ #
734
+ # @!attribute [rw] release_label
735
+ # The EMR release version associated with the application your job is
736
+ # running on.
737
+ # @return [String]
738
+ #
739
+ # @!attribute [rw] configuration_overrides
740
+ # The configuration settings that are used to override default
741
+ # configuration.
742
+ # @return [Types::ConfigurationOverrides]
743
+ #
744
+ # @!attribute [rw] job_driver
745
+ # The job driver for the job run.
746
+ # @return [Types::JobDriver]
747
+ #
748
+ # @!attribute [rw] tags
749
+ # The tags assigned to the job run.
750
+ # @return [Hash<String,String>]
751
+ #
752
+ # @!attribute [rw] total_resource_utilization
753
+ # The aggregate vCPU, memory, and storage resources used from the time
754
+ # job start executing till the time job is terminated, rounded up to
755
+ # the nearest second.
756
+ # @return [Types::TotalResourceUtilization]
757
+ #
758
+ # @!attribute [rw] network_configuration
759
+ # The network configuration for customer VPC connectivity.
760
+ # @return [Types::NetworkConfiguration]
761
+ #
762
+ # @!attribute [rw] total_execution_duration_seconds
763
+ # The job run total execution duration in seconds. This field is only
764
+ # available for job runs in a `COMPLETED`, `FAILED`, or `CANCELLED`
765
+ # state.
766
+ # @return [Integer]
767
+ #
768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/JobRun AWS API Documentation
769
+ #
770
+ class JobRun < Struct.new(
771
+ :application_id,
772
+ :job_run_id,
773
+ :name,
774
+ :arn,
775
+ :created_by,
776
+ :created_at,
777
+ :updated_at,
778
+ :execution_role,
779
+ :state,
780
+ :state_details,
781
+ :release_label,
782
+ :configuration_overrides,
783
+ :job_driver,
784
+ :tags,
785
+ :total_resource_utilization,
786
+ :network_configuration,
787
+ :total_execution_duration_seconds)
788
+ SENSITIVE = []
789
+ include Aws::Structure
790
+ end
791
+
792
+ # The summary of attributes associated with a job run.
793
+ #
794
+ # @!attribute [rw] application_id
795
+ # The ID of the application the job is running on.
796
+ # @return [String]
797
+ #
798
+ # @!attribute [rw] id
799
+ # The ID of the job run.
800
+ # @return [String]
801
+ #
802
+ # @!attribute [rw] name
803
+ # The optional job run name. This doesn't have to be unique.
804
+ # @return [String]
805
+ #
806
+ # @!attribute [rw] arn
807
+ # The ARN of the job run.
808
+ # @return [String]
809
+ #
810
+ # @!attribute [rw] created_by
811
+ # The user who created the job run.
812
+ # @return [String]
813
+ #
814
+ # @!attribute [rw] created_at
815
+ # The date and time when the job run was created.
816
+ # @return [Time]
817
+ #
818
+ # @!attribute [rw] updated_at
819
+ # The date and time when the job run was last updated.
820
+ # @return [Time]
821
+ #
822
+ # @!attribute [rw] execution_role
823
+ # The execution role ARN of the job run.
824
+ # @return [String]
825
+ #
826
+ # @!attribute [rw] state
827
+ # The state of the job run.
828
+ # @return [String]
829
+ #
830
+ # @!attribute [rw] state_details
831
+ # The state details of the job run.
832
+ # @return [String]
833
+ #
834
+ # @!attribute [rw] release_label
835
+ # The EMR release version associated with the application your job is
836
+ # running on.
837
+ # @return [String]
838
+ #
839
+ # @!attribute [rw] type
840
+ # The type of job run, such as Spark or Hive.
841
+ # @return [String]
842
+ #
843
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/JobRunSummary AWS API Documentation
844
+ #
845
+ class JobRunSummary < Struct.new(
846
+ :application_id,
847
+ :id,
848
+ :name,
849
+ :arn,
850
+ :created_by,
851
+ :created_at,
852
+ :updated_at,
853
+ :execution_role,
854
+ :state,
855
+ :state_details,
856
+ :release_label,
857
+ :type)
858
+ SENSITIVE = []
859
+ include Aws::Structure
860
+ end
861
+
862
+ # @note When making an API call, you may pass ListApplicationsRequest
863
+ # data as a hash:
864
+ #
865
+ # {
866
+ # next_token: "NextToken",
867
+ # max_results: 1,
868
+ # states: ["CREATING"], # accepts CREATING, CREATED, STARTING, STARTED, STOPPING, STOPPED, TERMINATED
869
+ # }
870
+ #
871
+ # @!attribute [rw] next_token
872
+ # The token for the next set of application results.
873
+ # @return [String]
874
+ #
875
+ # @!attribute [rw] max_results
876
+ # The maximum number of applications that can be listed.
877
+ # @return [Integer]
878
+ #
879
+ # @!attribute [rw] states
880
+ # An optional filter for application states. Note that if this filter
881
+ # contains multiple states, the resulting list will be grouped by the
882
+ # state.
883
+ # @return [Array<String>]
884
+ #
885
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListApplicationsRequest AWS API Documentation
886
+ #
887
+ class ListApplicationsRequest < Struct.new(
888
+ :next_token,
889
+ :max_results,
890
+ :states)
891
+ SENSITIVE = []
892
+ include Aws::Structure
893
+ end
894
+
895
+ # @!attribute [rw] applications
896
+ # The output lists the specified applications.
897
+ # @return [Array<Types::ApplicationSummary>]
898
+ #
899
+ # @!attribute [rw] next_token
900
+ # The output displays the token for the next set of application
901
+ # results. This is required for pagination and is available as a
902
+ # response of the previous request.
903
+ # @return [String]
904
+ #
905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListApplicationsResponse AWS API Documentation
906
+ #
907
+ class ListApplicationsResponse < Struct.new(
908
+ :applications,
909
+ :next_token)
910
+ SENSITIVE = []
911
+ include Aws::Structure
912
+ end
913
+
914
+ # @note When making an API call, you may pass ListJobRunsRequest
915
+ # data as a hash:
916
+ #
917
+ # {
918
+ # application_id: "ApplicationId", # required
919
+ # next_token: "NextToken",
920
+ # max_results: 1,
921
+ # created_at_after: Time.now,
922
+ # created_at_before: Time.now,
923
+ # states: ["SUBMITTED"], # accepts SUBMITTED, PENDING, SCHEDULED, RUNNING, SUCCESS, FAILED, CANCELLING, CANCELLED
924
+ # }
925
+ #
926
+ # @!attribute [rw] application_id
927
+ # The ID of the application for which to list the job run.
928
+ # @return [String]
929
+ #
930
+ # @!attribute [rw] next_token
931
+ # The token for the next set of job run results.
932
+ # @return [String]
933
+ #
934
+ # @!attribute [rw] max_results
935
+ # The maximum number of job runs that can be listed.
936
+ # @return [Integer]
937
+ #
938
+ # @!attribute [rw] created_at_after
939
+ # The lower bound of the option to filter by creation date and time.
940
+ # @return [Time]
941
+ #
942
+ # @!attribute [rw] created_at_before
943
+ # The upper bound of the option to filter by creation date and time.
944
+ # @return [Time]
945
+ #
946
+ # @!attribute [rw] states
947
+ # An optional filter for job run states. Note that if this filter
948
+ # contains multiple states, the resulting list will be grouped by the
949
+ # state.
950
+ # @return [Array<String>]
951
+ #
952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRunsRequest AWS API Documentation
953
+ #
954
+ class ListJobRunsRequest < Struct.new(
955
+ :application_id,
956
+ :next_token,
957
+ :max_results,
958
+ :created_at_after,
959
+ :created_at_before,
960
+ :states)
961
+ SENSITIVE = []
962
+ include Aws::Structure
963
+ end
964
+
965
+ # @!attribute [rw] job_runs
966
+ # The output lists information about the specified job runs.
967
+ # @return [Array<Types::JobRunSummary>]
968
+ #
969
+ # @!attribute [rw] next_token
970
+ # The output displays the token for the next set of job run results.
971
+ # This is required for pagination and is available as a response of
972
+ # the previous request.
973
+ # @return [String]
974
+ #
975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListJobRunsResponse AWS API Documentation
976
+ #
977
+ class ListJobRunsResponse < Struct.new(
978
+ :job_runs,
979
+ :next_token)
980
+ SENSITIVE = []
981
+ include Aws::Structure
982
+ end
983
+
984
+ # @note When making an API call, you may pass ListTagsForResourceRequest
985
+ # data as a hash:
986
+ #
987
+ # {
988
+ # resource_arn: "ResourceArn", # required
989
+ # }
990
+ #
991
+ # @!attribute [rw] resource_arn
992
+ # The Amazon Resource Name (ARN) that identifies the resource to list
993
+ # the tags for. Currently, the supported resources are Amazon EMR
994
+ # Serverless applications and job runs.
995
+ # @return [String]
996
+ #
997
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListTagsForResourceRequest AWS API Documentation
998
+ #
999
+ class ListTagsForResourceRequest < Struct.new(
1000
+ :resource_arn)
1001
+ SENSITIVE = []
1002
+ include Aws::Structure
1003
+ end
1004
+
1005
+ # @!attribute [rw] tags
1006
+ # The tags for the resource.
1007
+ # @return [Hash<String,String>]
1008
+ #
1009
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ListTagsForResourceResponse AWS API Documentation
1010
+ #
1011
+ class ListTagsForResourceResponse < Struct.new(
1012
+ :tags)
1013
+ SENSITIVE = []
1014
+ include Aws::Structure
1015
+ end
1016
+
1017
+ # The managed log persistence configuration for a job run.
1018
+ #
1019
+ # @note When making an API call, you may pass ManagedPersistenceMonitoringConfiguration
1020
+ # data as a hash:
1021
+ #
1022
+ # {
1023
+ # enabled: false,
1024
+ # encryption_key_arn: "EncryptionKeyArn",
1025
+ # }
1026
+ #
1027
+ # @!attribute [rw] enabled
1028
+ # Enables managed logging and defaults to true. If set to false,
1029
+ # managed logging will be turned off.
1030
+ # @return [Boolean]
1031
+ #
1032
+ # @!attribute [rw] encryption_key_arn
1033
+ # The KMS key ARN to encrypt the logs stored in managed log
1034
+ # persistence.
1035
+ # @return [String]
1036
+ #
1037
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ManagedPersistenceMonitoringConfiguration AWS API Documentation
1038
+ #
1039
+ class ManagedPersistenceMonitoringConfiguration < Struct.new(
1040
+ :enabled,
1041
+ :encryption_key_arn)
1042
+ SENSITIVE = []
1043
+ include Aws::Structure
1044
+ end
1045
+
1046
+ # The maximum allowed cumulative resources for an application. No new
1047
+ # resources will be created once the limit is hit.
1048
+ #
1049
+ # @note When making an API call, you may pass MaximumAllowedResources
1050
+ # data as a hash:
1051
+ #
1052
+ # {
1053
+ # cpu: "CpuSize", # required
1054
+ # memory: "MemorySize", # required
1055
+ # disk: "DiskSize",
1056
+ # }
1057
+ #
1058
+ # @!attribute [rw] cpu
1059
+ # The maximum allowed CPU for an application.
1060
+ # @return [String]
1061
+ #
1062
+ # @!attribute [rw] memory
1063
+ # The maximum allowed resources for an application.
1064
+ # @return [String]
1065
+ #
1066
+ # @!attribute [rw] disk
1067
+ # The maximum allowed disk for an application.
1068
+ # @return [String]
1069
+ #
1070
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/MaximumAllowedResources AWS API Documentation
1071
+ #
1072
+ class MaximumAllowedResources < Struct.new(
1073
+ :cpu,
1074
+ :memory,
1075
+ :disk)
1076
+ SENSITIVE = []
1077
+ include Aws::Structure
1078
+ end
1079
+
1080
+ # The configuration setting for monitoring.
1081
+ #
1082
+ # @note When making an API call, you may pass MonitoringConfiguration
1083
+ # data as a hash:
1084
+ #
1085
+ # {
1086
+ # s3_monitoring_configuration: {
1087
+ # log_uri: "UriString",
1088
+ # encryption_key_arn: "EncryptionKeyArn",
1089
+ # },
1090
+ # managed_persistence_monitoring_configuration: {
1091
+ # enabled: false,
1092
+ # encryption_key_arn: "EncryptionKeyArn",
1093
+ # },
1094
+ # }
1095
+ #
1096
+ # @!attribute [rw] s3_monitoring_configuration
1097
+ # The Amazon S3 configuration for monitoring log publishing.
1098
+ # @return [Types::S3MonitoringConfiguration]
1099
+ #
1100
+ # @!attribute [rw] managed_persistence_monitoring_configuration
1101
+ # The managed log persistence configuration for a job run.
1102
+ # @return [Types::ManagedPersistenceMonitoringConfiguration]
1103
+ #
1104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/MonitoringConfiguration AWS API Documentation
1105
+ #
1106
+ class MonitoringConfiguration < Struct.new(
1107
+ :s3_monitoring_configuration,
1108
+ :managed_persistence_monitoring_configuration)
1109
+ SENSITIVE = []
1110
+ include Aws::Structure
1111
+ end
1112
+
1113
+ # The network configuration for customer VPC connectivity.
1114
+ #
1115
+ # @note When making an API call, you may pass NetworkConfiguration
1116
+ # data as a hash:
1117
+ #
1118
+ # {
1119
+ # subnet_ids: ["SubnetString"],
1120
+ # security_group_ids: ["SecurityGroupString"],
1121
+ # }
1122
+ #
1123
+ # @!attribute [rw] subnet_ids
1124
+ # The array of subnet Ids for customer VPC connectivity.
1125
+ # @return [Array<String>]
1126
+ #
1127
+ # @!attribute [rw] security_group_ids
1128
+ # The array of security group Ids for customer VPC connectivity.
1129
+ # @return [Array<String>]
1130
+ #
1131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/NetworkConfiguration AWS API Documentation
1132
+ #
1133
+ class NetworkConfiguration < Struct.new(
1134
+ :subnet_ids,
1135
+ :security_group_ids)
1136
+ SENSITIVE = []
1137
+ include Aws::Structure
1138
+ end
1139
+
1140
+ # The specified resource was not found.
1141
+ #
1142
+ # @!attribute [rw] message
1143
+ # @return [String]
1144
+ #
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ResourceNotFoundException AWS API Documentation
1146
+ #
1147
+ class ResourceNotFoundException < Struct.new(
1148
+ :message)
1149
+ SENSITIVE = []
1150
+ include Aws::Structure
1151
+ end
1152
+
1153
+ # The Amazon S3 configuration for monitoring log publishing. You can
1154
+ # configure your jobs to send log information to Amazon S3.
1155
+ #
1156
+ # @note When making an API call, you may pass S3MonitoringConfiguration
1157
+ # data as a hash:
1158
+ #
1159
+ # {
1160
+ # log_uri: "UriString",
1161
+ # encryption_key_arn: "EncryptionKeyArn",
1162
+ # }
1163
+ #
1164
+ # @!attribute [rw] log_uri
1165
+ # The Amazon S3 destination URI for log publishing.
1166
+ # @return [String]
1167
+ #
1168
+ # @!attribute [rw] encryption_key_arn
1169
+ # The KMS key ARN to encrypt the logs published to the given Amazon S3
1170
+ # destination.
1171
+ # @return [String]
1172
+ #
1173
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/S3MonitoringConfiguration AWS API Documentation
1174
+ #
1175
+ class S3MonitoringConfiguration < Struct.new(
1176
+ :log_uri,
1177
+ :encryption_key_arn)
1178
+ SENSITIVE = []
1179
+ include Aws::Structure
1180
+ end
1181
+
1182
+ # The maximum number of resources per account has been reached.
1183
+ #
1184
+ # @!attribute [rw] message
1185
+ # @return [String]
1186
+ #
1187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ServiceQuotaExceededException AWS API Documentation
1188
+ #
1189
+ class ServiceQuotaExceededException < Struct.new(
1190
+ :message)
1191
+ SENSITIVE = []
1192
+ include Aws::Structure
1193
+ end
1194
+
1195
+ # The configurations for the Spark submit job driver.
1196
+ #
1197
+ # @note When making an API call, you may pass SparkSubmit
1198
+ # data as a hash:
1199
+ #
1200
+ # {
1201
+ # entry_point: "EntryPointPath", # required
1202
+ # entry_point_arguments: ["EntryPointArgument"],
1203
+ # spark_submit_parameters: "SparkSubmitParameters",
1204
+ # }
1205
+ #
1206
+ # @!attribute [rw] entry_point
1207
+ # The entry point for the Spark submit job run.
1208
+ # @return [String]
1209
+ #
1210
+ # @!attribute [rw] entry_point_arguments
1211
+ # The arguments for the Spark submit job run.
1212
+ # @return [Array<String>]
1213
+ #
1214
+ # @!attribute [rw] spark_submit_parameters
1215
+ # The parameters for the Spark submit job run.
1216
+ # @return [String]
1217
+ #
1218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/SparkSubmit AWS API Documentation
1219
+ #
1220
+ class SparkSubmit < Struct.new(
1221
+ :entry_point,
1222
+ :entry_point_arguments,
1223
+ :spark_submit_parameters)
1224
+ SENSITIVE = [:entry_point, :spark_submit_parameters]
1225
+ include Aws::Structure
1226
+ end
1227
+
1228
+ # @note When making an API call, you may pass StartApplicationRequest
1229
+ # data as a hash:
1230
+ #
1231
+ # {
1232
+ # application_id: "ApplicationId", # required
1233
+ # }
1234
+ #
1235
+ # @!attribute [rw] application_id
1236
+ # The ID of the application to start.
1237
+ # @return [String]
1238
+ #
1239
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartApplicationRequest AWS API Documentation
1240
+ #
1241
+ class StartApplicationRequest < Struct.new(
1242
+ :application_id)
1243
+ SENSITIVE = []
1244
+ include Aws::Structure
1245
+ end
1246
+
1247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartApplicationResponse AWS API Documentation
1248
+ #
1249
+ class StartApplicationResponse < Aws::EmptyStructure; end
1250
+
1251
+ # @note When making an API call, you may pass StartJobRunRequest
1252
+ # data as a hash:
1253
+ #
1254
+ # {
1255
+ # application_id: "ApplicationId", # required
1256
+ # client_token: "ClientToken", # required
1257
+ # execution_role_arn: "IAMRoleArn", # required
1258
+ # job_driver: {
1259
+ # spark_submit: {
1260
+ # entry_point: "EntryPointPath", # required
1261
+ # entry_point_arguments: ["EntryPointArgument"],
1262
+ # spark_submit_parameters: "SparkSubmitParameters",
1263
+ # },
1264
+ # hive: {
1265
+ # query: "Query", # required
1266
+ # init_query_file: "InitScriptPath",
1267
+ # parameters: "HiveCliParameters",
1268
+ # },
1269
+ # },
1270
+ # configuration_overrides: {
1271
+ # application_configuration: [
1272
+ # {
1273
+ # classification: "String1024", # required
1274
+ # properties: {
1275
+ # "String1024" => "String1024",
1276
+ # },
1277
+ # configurations: {
1278
+ # # recursive ConfigurationList
1279
+ # },
1280
+ # },
1281
+ # ],
1282
+ # monitoring_configuration: {
1283
+ # s3_monitoring_configuration: {
1284
+ # log_uri: "UriString",
1285
+ # encryption_key_arn: "EncryptionKeyArn",
1286
+ # },
1287
+ # managed_persistence_monitoring_configuration: {
1288
+ # enabled: false,
1289
+ # encryption_key_arn: "EncryptionKeyArn",
1290
+ # },
1291
+ # },
1292
+ # },
1293
+ # tags: {
1294
+ # "TagKey" => "TagValue",
1295
+ # },
1296
+ # execution_timeout_minutes: 1,
1297
+ # name: "String256",
1298
+ # }
1299
+ #
1300
+ # @!attribute [rw] application_id
1301
+ # The ID of the application on which to run the job.
1302
+ # @return [String]
1303
+ #
1304
+ # @!attribute [rw] client_token
1305
+ # The client idempotency token of the job run to start. Its value must
1306
+ # be unique for each request.
1307
+ #
1308
+ # **A suitable default value is auto-generated.** You should normally
1309
+ # not need to pass this option.
1310
+ # @return [String]
1311
+ #
1312
+ # @!attribute [rw] execution_role_arn
1313
+ # The execution role ARN for the job run.
1314
+ # @return [String]
1315
+ #
1316
+ # @!attribute [rw] job_driver
1317
+ # The job driver for the job run.
1318
+ # @return [Types::JobDriver]
1319
+ #
1320
+ # @!attribute [rw] configuration_overrides
1321
+ # The configuration overrides for the job run.
1322
+ # @return [Types::ConfigurationOverrides]
1323
+ #
1324
+ # @!attribute [rw] tags
1325
+ # The tags assigned to the job run.
1326
+ # @return [Hash<String,String>]
1327
+ #
1328
+ # @!attribute [rw] execution_timeout_minutes
1329
+ # The maximum duration for the job run to run. If the job run runs
1330
+ # beyond this duration, it will be automatically cancelled.
1331
+ # @return [Integer]
1332
+ #
1333
+ # @!attribute [rw] name
1334
+ # The optional job run name. This doesn't have to be unique.
1335
+ # @return [String]
1336
+ #
1337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartJobRunRequest AWS API Documentation
1338
+ #
1339
+ class StartJobRunRequest < Struct.new(
1340
+ :application_id,
1341
+ :client_token,
1342
+ :execution_role_arn,
1343
+ :job_driver,
1344
+ :configuration_overrides,
1345
+ :tags,
1346
+ :execution_timeout_minutes,
1347
+ :name)
1348
+ SENSITIVE = []
1349
+ include Aws::Structure
1350
+ end
1351
+
1352
+ # @!attribute [rw] application_id
1353
+ # This output displays the application ID on which the job run was
1354
+ # submitted.
1355
+ # @return [String]
1356
+ #
1357
+ # @!attribute [rw] job_run_id
1358
+ # The output contains the ID of the started job run.
1359
+ # @return [String]
1360
+ #
1361
+ # @!attribute [rw] arn
1362
+ # The output lists the execution role ARN of the job run.
1363
+ # @return [String]
1364
+ #
1365
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StartJobRunResponse AWS API Documentation
1366
+ #
1367
+ class StartJobRunResponse < Struct.new(
1368
+ :application_id,
1369
+ :job_run_id,
1370
+ :arn)
1371
+ SENSITIVE = []
1372
+ include Aws::Structure
1373
+ end
1374
+
1375
+ # @note When making an API call, you may pass StopApplicationRequest
1376
+ # data as a hash:
1377
+ #
1378
+ # {
1379
+ # application_id: "ApplicationId", # required
1380
+ # }
1381
+ #
1382
+ # @!attribute [rw] application_id
1383
+ # The ID of the application to stop.
1384
+ # @return [String]
1385
+ #
1386
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StopApplicationRequest AWS API Documentation
1387
+ #
1388
+ class StopApplicationRequest < Struct.new(
1389
+ :application_id)
1390
+ SENSITIVE = []
1391
+ include Aws::Structure
1392
+ end
1393
+
1394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/StopApplicationResponse AWS API Documentation
1395
+ #
1396
+ class StopApplicationResponse < Aws::EmptyStructure; end
1397
+
1398
+ # @note When making an API call, you may pass TagResourceRequest
1399
+ # data as a hash:
1400
+ #
1401
+ # {
1402
+ # resource_arn: "ResourceArn", # required
1403
+ # tags: { # required
1404
+ # "TagKey" => "TagValue",
1405
+ # },
1406
+ # }
1407
+ #
1408
+ # @!attribute [rw] resource_arn
1409
+ # The Amazon Resource Name (ARN) that identifies the resource to list
1410
+ # the tags for. Currently, the supported resources are Amazon EMR
1411
+ # Serverless applications and job runs.
1412
+ # @return [String]
1413
+ #
1414
+ # @!attribute [rw] tags
1415
+ # The tags to add to the resource. A tag is an array of key-value
1416
+ # pairs.
1417
+ # @return [Hash<String,String>]
1418
+ #
1419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/TagResourceRequest AWS API Documentation
1420
+ #
1421
+ class TagResourceRequest < Struct.new(
1422
+ :resource_arn,
1423
+ :tags)
1424
+ SENSITIVE = []
1425
+ include Aws::Structure
1426
+ end
1427
+
1428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/TagResourceResponse AWS API Documentation
1429
+ #
1430
+ class TagResourceResponse < Aws::EmptyStructure; end
1431
+
1432
+ # The aggregate vCPU, memory, and storage resources used from the time
1433
+ # job start executing till the time job is terminated, rounded up to the
1434
+ # nearest second.
1435
+ #
1436
+ # @!attribute [rw] v_cpu_hour
1437
+ # The aggregated vCPU used per hour from the time job start executing
1438
+ # till the time job is terminated.
1439
+ # @return [Float]
1440
+ #
1441
+ # @!attribute [rw] memory_gb_hour
1442
+ # The aggregated memory used per hour from the time job start
1443
+ # executing till the time job is terminated.
1444
+ # @return [Float]
1445
+ #
1446
+ # @!attribute [rw] storage_gb_hour
1447
+ # The aggregated storage used per hour from the time job start
1448
+ # executing till the time job is terminated.
1449
+ # @return [Float]
1450
+ #
1451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/TotalResourceUtilization AWS API Documentation
1452
+ #
1453
+ class TotalResourceUtilization < Struct.new(
1454
+ :v_cpu_hour,
1455
+ :memory_gb_hour,
1456
+ :storage_gb_hour)
1457
+ SENSITIVE = []
1458
+ include Aws::Structure
1459
+ end
1460
+
1461
+ # @note When making an API call, you may pass UntagResourceRequest
1462
+ # data as a hash:
1463
+ #
1464
+ # {
1465
+ # resource_arn: "ResourceArn", # required
1466
+ # tag_keys: ["TagKey"], # required
1467
+ # }
1468
+ #
1469
+ # @!attribute [rw] resource_arn
1470
+ # The Amazon Resource Name (ARN) that identifies the resource to list
1471
+ # the tags for. Currently, the supported resources are Amazon EMR
1472
+ # Serverless applications and job runs.
1473
+ # @return [String]
1474
+ #
1475
+ # @!attribute [rw] tag_keys
1476
+ # The keys of the tags to be removed.
1477
+ # @return [Array<String>]
1478
+ #
1479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UntagResourceRequest AWS API Documentation
1480
+ #
1481
+ class UntagResourceRequest < Struct.new(
1482
+ :resource_arn,
1483
+ :tag_keys)
1484
+ SENSITIVE = []
1485
+ include Aws::Structure
1486
+ end
1487
+
1488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UntagResourceResponse AWS API Documentation
1489
+ #
1490
+ class UntagResourceResponse < Aws::EmptyStructure; end
1491
+
1492
+ # @note When making an API call, you may pass UpdateApplicationRequest
1493
+ # data as a hash:
1494
+ #
1495
+ # {
1496
+ # application_id: "ApplicationId", # required
1497
+ # client_token: "ClientToken", # required
1498
+ # initial_capacity: {
1499
+ # "WorkerTypeString" => {
1500
+ # worker_count: 1, # required
1501
+ # worker_configuration: {
1502
+ # cpu: "CpuSize", # required
1503
+ # memory: "MemorySize", # required
1504
+ # disk: "DiskSize",
1505
+ # },
1506
+ # },
1507
+ # },
1508
+ # maximum_capacity: {
1509
+ # cpu: "CpuSize", # required
1510
+ # memory: "MemorySize", # required
1511
+ # disk: "DiskSize",
1512
+ # },
1513
+ # auto_start_configuration: {
1514
+ # enabled: false,
1515
+ # },
1516
+ # auto_stop_configuration: {
1517
+ # enabled: false,
1518
+ # idle_timeout_minutes: 1,
1519
+ # },
1520
+ # network_configuration: {
1521
+ # subnet_ids: ["SubnetString"],
1522
+ # security_group_ids: ["SecurityGroupString"],
1523
+ # },
1524
+ # }
1525
+ #
1526
+ # @!attribute [rw] application_id
1527
+ # The ID of the application to update.
1528
+ # @return [String]
1529
+ #
1530
+ # @!attribute [rw] client_token
1531
+ # The client idempotency token of the application to update. Its value
1532
+ # must be unique for each request.
1533
+ #
1534
+ # **A suitable default value is auto-generated.** You should normally
1535
+ # not need to pass this option.
1536
+ # @return [String]
1537
+ #
1538
+ # @!attribute [rw] initial_capacity
1539
+ # The capacity to initialize when the application is updated.
1540
+ # @return [Hash<String,Types::InitialCapacityConfig>]
1541
+ #
1542
+ # @!attribute [rw] maximum_capacity
1543
+ # The maximum capacity to allocate when the application is updated.
1544
+ # This is cumulative across all workers at any given point in time
1545
+ # during the lifespan of the application. No new resources will be
1546
+ # created once any one of the defined limits is hit.
1547
+ # @return [Types::MaximumAllowedResources]
1548
+ #
1549
+ # @!attribute [rw] auto_start_configuration
1550
+ # The configuration for an application to automatically start on job
1551
+ # submission.
1552
+ # @return [Types::AutoStartConfig]
1553
+ #
1554
+ # @!attribute [rw] auto_stop_configuration
1555
+ # The configuration for an application to automatically stop after a
1556
+ # certain amount of time being idle.
1557
+ # @return [Types::AutoStopConfig]
1558
+ #
1559
+ # @!attribute [rw] network_configuration
1560
+ # The network configuration for customer VPC connectivity.
1561
+ # @return [Types::NetworkConfiguration]
1562
+ #
1563
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UpdateApplicationRequest AWS API Documentation
1564
+ #
1565
+ class UpdateApplicationRequest < Struct.new(
1566
+ :application_id,
1567
+ :client_token,
1568
+ :initial_capacity,
1569
+ :maximum_capacity,
1570
+ :auto_start_configuration,
1571
+ :auto_stop_configuration,
1572
+ :network_configuration)
1573
+ SENSITIVE = []
1574
+ include Aws::Structure
1575
+ end
1576
+
1577
+ # @!attribute [rw] application
1578
+ # Information about the updated application.
1579
+ # @return [Types::Application]
1580
+ #
1581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/UpdateApplicationResponse AWS API Documentation
1582
+ #
1583
+ class UpdateApplicationResponse < Struct.new(
1584
+ :application)
1585
+ SENSITIVE = []
1586
+ include Aws::Structure
1587
+ end
1588
+
1589
+ # The input fails to satisfy the constraints specified by an AWS
1590
+ # service.
1591
+ #
1592
+ # @!attribute [rw] message
1593
+ # @return [String]
1594
+ #
1595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/ValidationException AWS API Documentation
1596
+ #
1597
+ class ValidationException < Struct.new(
1598
+ :message)
1599
+ SENSITIVE = []
1600
+ include Aws::Structure
1601
+ end
1602
+
1603
+ # The cumulative configuration requirements for every worker instance of
1604
+ # the worker type.
1605
+ #
1606
+ # @note When making an API call, you may pass WorkerResourceConfig
1607
+ # data as a hash:
1608
+ #
1609
+ # {
1610
+ # cpu: "CpuSize", # required
1611
+ # memory: "MemorySize", # required
1612
+ # disk: "DiskSize",
1613
+ # }
1614
+ #
1615
+ # @!attribute [rw] cpu
1616
+ # The CPU requirements for every worker instance of the worker type.
1617
+ # @return [String]
1618
+ #
1619
+ # @!attribute [rw] memory
1620
+ # The memory requirements for every worker instance of the worker
1621
+ # type.
1622
+ # @return [String]
1623
+ #
1624
+ # @!attribute [rw] disk
1625
+ # The disk requirements for every worker instance of the worker type.
1626
+ # @return [String]
1627
+ #
1628
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-serverless-2021-07-13/WorkerResourceConfig AWS API Documentation
1629
+ #
1630
+ class WorkerResourceConfig < Struct.new(
1631
+ :cpu,
1632
+ :memory,
1633
+ :disk)
1634
+ SENSITIVE = []
1635
+ include Aws::Structure
1636
+ end
1637
+
1638
+ end
1639
+ end