aws-sdk-emr 1.39.0 → 1.44.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.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -61,6 +61,10 @@ module Aws::EMR
61
61
  # },
62
62
  # on_demand_specification: {
63
63
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
64
+ # capacity_reservation_options: {
65
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
66
+ # capacity_reservation_preference: "open", # accepts open, none
67
+ # },
64
68
  # },
65
69
  # },
66
70
  # },
@@ -307,7 +311,7 @@ module Aws::EMR
307
311
  #
308
312
  # @!attribute [rw] tags
309
313
  # A list of tags to associate with a cluster and propagate to EC2
310
- # instances. Tags are user-defined key/value pairs that consist of a
314
+ # instances. Tags are user-defined key-value pairs that consist of a
311
315
  # required key string with a maximum of 128 characters, and an
312
316
  # optional value string with a maximum of 256 characters.
313
317
  # @return [Array<Types::Tag>]
@@ -547,8 +551,8 @@ module Aws::EMR
547
551
  # }
548
552
  #
549
553
  # @!attribute [rw] block_public_security_group_rules
550
- # Indicates whether EMR block public access is enabled (`true`) or
551
- # disabled (`false`). By default, the value is `false` for accounts
554
+ # Indicates whether Amazon EMR block public access is enabled (`true`)
555
+ # or disabled (`false`). By default, the value is `false` for accounts
552
556
  # that have created EMR clusters before July 2019. For accounts
553
557
  # created after this, the default is `true`.
554
558
  # @return [Boolean]
@@ -683,7 +687,7 @@ module Aws::EMR
683
687
  # }
684
688
  #
685
689
  # @!attribute [rw] cluster_id
686
- # The `ClusterID` for which specified steps will be canceled. Use
690
+ # The `ClusterID` for the specified steps that will be canceled. Use
687
691
  # RunJobFlow and ListClusters to get ClusterIDs.
688
692
  # @return [String]
689
693
  #
@@ -693,7 +697,7 @@ module Aws::EMR
693
697
  # @return [Array<String>]
694
698
  #
695
699
  # @!attribute [rw] step_cancellation_option
696
- # The option to choose for cancelling `RUNNING` steps. By default, the
700
+ # The option to choose to cancel `RUNNING` steps. By default, the
697
701
  # value is `SEND_INTERRUPT`.
698
702
  # @return [String]
699
703
  #
@@ -951,13 +955,13 @@ module Aws::EMR
951
955
  # to terminate the instance was submitted. This option is only
952
956
  # available with Amazon EMR 5.1.0 and later and is the default for
953
957
  # clusters created using that version. `TERMINATE_AT_TASK_COMPLETION`
954
- # indicates that Amazon EMR blacklists and drains tasks from nodes
955
- # before terminating the Amazon EC2 instances, regardless of the
956
- # instance-hour boundary. With either behavior, Amazon EMR removes the
957
- # least active nodes first and blocks instance termination if it could
958
- # lead to HDFS corruption. `TERMINATE_AT_TASK_COMPLETION` is available
959
- # only in Amazon EMR version 4.1.0 and later, and is the default for
960
- # versions of Amazon EMR earlier than 5.1.0.
958
+ # indicates that Amazon EMR adds nodes to a deny list and drains tasks
959
+ # from nodes before terminating the Amazon EC2 instances, regardless
960
+ # of the instance-hour boundary. With either behavior, Amazon EMR
961
+ # removes the least active nodes first and blocks instance termination
962
+ # if it could lead to HDFS corruption. `TERMINATE_AT_TASK_COMPLETION`
963
+ # is available only in Amazon EMR version 4.1.0 and later, and is the
964
+ # default for versions of Amazon EMR earlier than 5.1.0.
961
965
  # @return [String]
962
966
  #
963
967
  # @!attribute [rw] custom_ami_id
@@ -966,9 +970,9 @@ module Aws::EMR
966
970
  # @return [String]
967
971
  #
968
972
  # @!attribute [rw] ebs_root_volume_size
969
- # The size, in GiB, of the EBS root device volume of the Linux AMI
970
- # that is used for each EC2 instance. Available in Amazon EMR version
971
- # 4.x and later.
973
+ # The size, in GiB, of the Amazon EBS root device volume of the Linux
974
+ # AMI that is used for each EC2 instance. Available in Amazon EMR
975
+ # version 4.x and later.
972
976
  # @return [Integer]
973
977
  #
974
978
  # @!attribute [rw] repo_upgrade_on_boot
@@ -980,7 +984,8 @@ module Aws::EMR
980
984
  # @!attribute [rw] kerberos_attributes
981
985
  # Attributes for Kerberos configuration when Kerberos authentication
982
986
  # is enabled using a security configuration. For more information see
983
- # [Use Kerberos Authentication][1] in the *EMR Management Guide*.
987
+ # [Use Kerberos Authentication][1] in the *Amazon EMR Management
988
+ # Guide*.
984
989
  #
985
990
  #
986
991
  #
@@ -1138,7 +1143,7 @@ module Aws::EMR
1138
1143
  # @return [Time]
1139
1144
  #
1140
1145
  # @!attribute [rw] ready_date_time
1141
- # The date and time when the cluster was ready to execute steps.
1146
+ # The date and time when the cluster was ready to run steps.
1142
1147
  # @return [Time]
1143
1148
  #
1144
1149
  # @!attribute [rw] end_date_time
@@ -1200,7 +1205,7 @@ module Aws::EMR
1200
1205
  # @return [String]
1201
1206
  #
1202
1207
  # @!attribute [rw] minimum_capacity_units
1203
- # The lower boundary of EC2 units. It is measured through VCPU cores
1208
+ # The lower boundary of EC2 units. It is measured through vCPU cores
1204
1209
  # or instances for instance groups and measured through units for
1205
1210
  # instance fleets. Managed scaling activities are not allowed beyond
1206
1211
  # this boundary. The limit only applies to the core and task nodes.
@@ -1208,7 +1213,7 @@ module Aws::EMR
1208
1213
  # @return [Integer]
1209
1214
  #
1210
1215
  # @!attribute [rw] maximum_capacity_units
1211
- # The upper boundary of EC2 units. It is measured through VCPU cores
1216
+ # The upper boundary of EC2 units. It is measured through vCPU cores
1212
1217
  # or instances for instance groups and measured through units for
1213
1218
  # instance fleets. Managed scaling activities are not allowed beyond
1214
1219
  # this boundary. The limit only applies to the core and task nodes.
@@ -1217,15 +1222,15 @@ module Aws::EMR
1217
1222
  #
1218
1223
  # @!attribute [rw] maximum_on_demand_capacity_units
1219
1224
  # The upper boundary of On-Demand EC2 units. It is measured through
1220
- # VCPU cores or instances for instance groups and measured through
1225
+ # vCPU cores or instances for instance groups and measured through
1221
1226
  # units for instance fleets. The On-Demand units are not allowed to
1222
1227
  # scale beyond this boundary. The parameter is used to split capacity
1223
- # allocation between On-Demand and Spot instances.
1228
+ # allocation between On-Demand and Spot Instances.
1224
1229
  # @return [Integer]
1225
1230
  #
1226
1231
  # @!attribute [rw] maximum_core_capacity_units
1227
1232
  # The upper boundary of EC2 units for core node type in a cluster. It
1228
- # is measured through VCPU cores or instances for instance groups and
1233
+ # is measured through vCPU cores or instances for instance groups and
1229
1234
  # measured through units for instance fleets. The core units are not
1230
1235
  # allowed to scale beyond this boundary. The parameter is used to
1231
1236
  # split capacity allocation between core and task nodes.
@@ -1351,6 +1356,190 @@ module Aws::EMR
1351
1356
  include Aws::Structure
1352
1357
  end
1353
1358
 
1359
+ # @note When making an API call, you may pass CreateStudioInput
1360
+ # data as a hash:
1361
+ #
1362
+ # {
1363
+ # name: "XmlStringMaxLen256", # required
1364
+ # description: "XmlStringMaxLen256",
1365
+ # auth_mode: "SSO", # required, accepts SSO, IAM
1366
+ # vpc_id: "XmlStringMaxLen256", # required
1367
+ # subnet_ids: ["String"], # required
1368
+ # service_role: "XmlString", # required
1369
+ # user_role: "XmlString", # required
1370
+ # workspace_security_group_id: "XmlStringMaxLen256", # required
1371
+ # engine_security_group_id: "XmlStringMaxLen256", # required
1372
+ # default_s3_location: "XmlString", # required
1373
+ # tags: [
1374
+ # {
1375
+ # key: "String",
1376
+ # value: "String",
1377
+ # },
1378
+ # ],
1379
+ # }
1380
+ #
1381
+ # @!attribute [rw] name
1382
+ # A descriptive name for the Amazon EMR Studio.
1383
+ # @return [String]
1384
+ #
1385
+ # @!attribute [rw] description
1386
+ # A detailed description of the Amazon EMR Studio.
1387
+ # @return [String]
1388
+ #
1389
+ # @!attribute [rw] auth_mode
1390
+ # Specifies whether the Studio authenticates users using single
1391
+ # sign-on (SSO) or IAM. Amazon EMR Studio currently only supports SSO
1392
+ # authentication.
1393
+ # @return [String]
1394
+ #
1395
+ # @!attribute [rw] vpc_id
1396
+ # The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate
1397
+ # with the Studio.
1398
+ # @return [String]
1399
+ #
1400
+ # @!attribute [rw] subnet_ids
1401
+ # A list of subnet IDs to associate with the Amazon EMR Studio. A
1402
+ # Studio can have a maximum of 5 subnets. The subnets must belong to
1403
+ # the VPC specified by `VpcId`. Studio users can create a Workspace in
1404
+ # any of the specified subnets.
1405
+ # @return [Array<String>]
1406
+ #
1407
+ # @!attribute [rw] service_role
1408
+ # The IAM role that will be assumed by the Amazon EMR Studio. The
1409
+ # service role provides a way for Amazon EMR Studio to interoperate
1410
+ # with other AWS services.
1411
+ # @return [String]
1412
+ #
1413
+ # @!attribute [rw] user_role
1414
+ # The IAM user role that will be assumed by users and groups logged in
1415
+ # to an Amazon EMR Studio. The permissions attached to this IAM role
1416
+ # can be scoped down for each user or group using session policies.
1417
+ # @return [String]
1418
+ #
1419
+ # @!attribute [rw] workspace_security_group_id
1420
+ # The ID of the Amazon EMR Studio Workspace security group. The
1421
+ # Workspace security group allows outbound network traffic to
1422
+ # resources in the Engine security group, and it must be in the same
1423
+ # VPC specified by `VpcId`.
1424
+ # @return [String]
1425
+ #
1426
+ # @!attribute [rw] engine_security_group_id
1427
+ # The ID of the Amazon EMR Studio Engine security group. The Engine
1428
+ # security group allows inbound network traffic from the Workspace
1429
+ # security group, and it must be in the same VPC specified by `VpcId`.
1430
+ # @return [String]
1431
+ #
1432
+ # @!attribute [rw] default_s3_location
1433
+ # The default Amazon S3 location to back up Amazon EMR Studio
1434
+ # Workspaces and notebook files. A Studio user can select an
1435
+ # alternative Amazon S3 location when creating a Workspace.
1436
+ # @return [String]
1437
+ #
1438
+ # @!attribute [rw] tags
1439
+ # A list of tags to associate with the Amazon EMR Studio. Tags are
1440
+ # user-defined key-value pairs that consist of a required key string
1441
+ # with a maximum of 128 characters, and an optional value string with
1442
+ # a maximum of 256 characters.
1443
+ # @return [Array<Types::Tag>]
1444
+ #
1445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioInput AWS API Documentation
1446
+ #
1447
+ class CreateStudioInput < Struct.new(
1448
+ :name,
1449
+ :description,
1450
+ :auth_mode,
1451
+ :vpc_id,
1452
+ :subnet_ids,
1453
+ :service_role,
1454
+ :user_role,
1455
+ :workspace_security_group_id,
1456
+ :engine_security_group_id,
1457
+ :default_s3_location,
1458
+ :tags)
1459
+ SENSITIVE = []
1460
+ include Aws::Structure
1461
+ end
1462
+
1463
+ # @!attribute [rw] studio_id
1464
+ # The ID of the Amazon EMR Studio.
1465
+ # @return [String]
1466
+ #
1467
+ # @!attribute [rw] url
1468
+ # The unique Studio access URL.
1469
+ # @return [String]
1470
+ #
1471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioOutput AWS API Documentation
1472
+ #
1473
+ class CreateStudioOutput < Struct.new(
1474
+ :studio_id,
1475
+ :url)
1476
+ SENSITIVE = []
1477
+ include Aws::Structure
1478
+ end
1479
+
1480
+ # @note When making an API call, you may pass CreateStudioSessionMappingInput
1481
+ # data as a hash:
1482
+ #
1483
+ # {
1484
+ # studio_id: "XmlStringMaxLen256", # required
1485
+ # identity_id: "XmlStringMaxLen256",
1486
+ # identity_name: "XmlStringMaxLen256",
1487
+ # identity_type: "USER", # required, accepts USER, GROUP
1488
+ # session_policy_arn: "XmlStringMaxLen256", # required
1489
+ # }
1490
+ #
1491
+ # @!attribute [rw] studio_id
1492
+ # The ID of the Amazon EMR Studio to which the user or group will be
1493
+ # mapped.
1494
+ # @return [String]
1495
+ #
1496
+ # @!attribute [rw] identity_id
1497
+ # The globally unique identifier (GUID) of the user or group from the
1498
+ # AWS SSO Identity Store. For more information, see [UserId][1] and
1499
+ # [GroupId][2] in the *AWS SSO Identity Store API Reference*. Either
1500
+ # `IdentityName` or `IdentityId` must be specified.
1501
+ #
1502
+ #
1503
+ #
1504
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId
1505
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId
1506
+ # @return [String]
1507
+ #
1508
+ # @!attribute [rw] identity_name
1509
+ # The name of the user or group. For more information, see
1510
+ # [UserName][1] and [DisplayName][2] in the *AWS SSO Identity Store
1511
+ # API Reference*. Either `IdentityName` or `IdentityId` must be
1512
+ # specified.
1513
+ #
1514
+ #
1515
+ #
1516
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
1517
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
1518
+ # @return [String]
1519
+ #
1520
+ # @!attribute [rw] identity_type
1521
+ # Specifies whether the identity to map to the Amazon EMR Studio is a
1522
+ # user or a group.
1523
+ # @return [String]
1524
+ #
1525
+ # @!attribute [rw] session_policy_arn
1526
+ # The Amazon Resource Name (ARN) for the session policy that will be
1527
+ # applied to the user or group. Session policies refine Studio user
1528
+ # permissions without the need to use multiple IAM user roles.
1529
+ # @return [String]
1530
+ #
1531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/CreateStudioSessionMappingInput AWS API Documentation
1532
+ #
1533
+ class CreateStudioSessionMappingInput < Struct.new(
1534
+ :studio_id,
1535
+ :identity_id,
1536
+ :identity_name,
1537
+ :identity_type,
1538
+ :session_policy_arn)
1539
+ SENSITIVE = []
1540
+ include Aws::Structure
1541
+ end
1542
+
1354
1543
  # @note When making an API call, you may pass DeleteSecurityConfigurationInput
1355
1544
  # data as a hash:
1356
1545
  #
@@ -1374,6 +1563,79 @@ module Aws::EMR
1374
1563
  #
1375
1564
  class DeleteSecurityConfigurationOutput < Aws::EmptyStructure; end
1376
1565
 
1566
+ # @note When making an API call, you may pass DeleteStudioInput
1567
+ # data as a hash:
1568
+ #
1569
+ # {
1570
+ # studio_id: "XmlStringMaxLen256", # required
1571
+ # }
1572
+ #
1573
+ # @!attribute [rw] studio_id
1574
+ # The ID of the Amazon EMR Studio.
1575
+ # @return [String]
1576
+ #
1577
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioInput AWS API Documentation
1578
+ #
1579
+ class DeleteStudioInput < Struct.new(
1580
+ :studio_id)
1581
+ SENSITIVE = []
1582
+ include Aws::Structure
1583
+ end
1584
+
1585
+ # @note When making an API call, you may pass DeleteStudioSessionMappingInput
1586
+ # data as a hash:
1587
+ #
1588
+ # {
1589
+ # studio_id: "XmlStringMaxLen256", # required
1590
+ # identity_id: "XmlStringMaxLen256",
1591
+ # identity_name: "XmlStringMaxLen256",
1592
+ # identity_type: "USER", # required, accepts USER, GROUP
1593
+ # }
1594
+ #
1595
+ # @!attribute [rw] studio_id
1596
+ # The ID of the Amazon EMR Studio.
1597
+ # @return [String]
1598
+ #
1599
+ # @!attribute [rw] identity_id
1600
+ # The globally unique identifier (GUID) of the user or group to remove
1601
+ # from the Amazon EMR Studio. For more information, see [UserId][1]
1602
+ # and [GroupId][2] in the *AWS SSO Identity Store API Reference*.
1603
+ # Either `IdentityName` or `IdentityId` must be specified.
1604
+ #
1605
+ #
1606
+ #
1607
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId
1608
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId
1609
+ # @return [String]
1610
+ #
1611
+ # @!attribute [rw] identity_name
1612
+ # The name of the user name or group to remove from the Amazon EMR
1613
+ # Studio. For more information, see [UserName][1] and [DisplayName][2]
1614
+ # in the *AWS SSO Identity Store API Reference*. Either `IdentityName`
1615
+ # or `IdentityId` must be specified.
1616
+ #
1617
+ #
1618
+ #
1619
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
1620
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
1621
+ # @return [String]
1622
+ #
1623
+ # @!attribute [rw] identity_type
1624
+ # Specifies whether the identity to delete from the Amazon EMR Studio
1625
+ # is a user or a group.
1626
+ # @return [String]
1627
+ #
1628
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DeleteStudioSessionMappingInput AWS API Documentation
1629
+ #
1630
+ class DeleteStudioSessionMappingInput < Struct.new(
1631
+ :studio_id,
1632
+ :identity_id,
1633
+ :identity_name,
1634
+ :identity_type)
1635
+ SENSITIVE = []
1636
+ include Aws::Structure
1637
+ end
1638
+
1377
1639
  # This input determines which cluster to describe.
1378
1640
  #
1379
1641
  # @note When making an API call, you may pass DescribeClusterInput
@@ -1575,6 +1837,37 @@ module Aws::EMR
1575
1837
  include Aws::Structure
1576
1838
  end
1577
1839
 
1840
+ # @note When making an API call, you may pass DescribeStudioInput
1841
+ # data as a hash:
1842
+ #
1843
+ # {
1844
+ # studio_id: "XmlStringMaxLen256", # required
1845
+ # }
1846
+ #
1847
+ # @!attribute [rw] studio_id
1848
+ # The Amazon EMR Studio ID.
1849
+ # @return [String]
1850
+ #
1851
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudioInput AWS API Documentation
1852
+ #
1853
+ class DescribeStudioInput < Struct.new(
1854
+ :studio_id)
1855
+ SENSITIVE = []
1856
+ include Aws::Structure
1857
+ end
1858
+
1859
+ # @!attribute [rw] studio
1860
+ # The Amazon EMR Studio details.
1861
+ # @return [Types::Studio]
1862
+ #
1863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/DescribeStudioOutput AWS API Documentation
1864
+ #
1865
+ class DescribeStudioOutput < Struct.new(
1866
+ :studio)
1867
+ SENSITIVE = []
1868
+ include Aws::Structure
1869
+ end
1870
+
1578
1871
  # Configuration of requested EBS block device associated with the
1579
1872
  # instance group.
1580
1873
  #
@@ -1836,9 +2129,9 @@ module Aws::EMR
1836
2129
  # @return [String]
1837
2130
  #
1838
2131
  # @!attribute [rw] message
1839
- # The descriptive message including the error the EMR service has
1840
- # identified as the cause of step failure. This is text from an error
1841
- # log that describes the root cause of the failure.
2132
+ # The descriptive message including the error the Amazon EMR service
2133
+ # has identified as the cause of step failure. This is text from an
2134
+ # error log that describes the root cause of the failure.
1842
2135
  # @return [String]
1843
2136
  #
1844
2137
  # @!attribute [rw] log_file
@@ -1936,6 +2229,72 @@ module Aws::EMR
1936
2229
  include Aws::Structure
1937
2230
  end
1938
2231
 
2232
+ # @note When making an API call, you may pass GetStudioSessionMappingInput
2233
+ # data as a hash:
2234
+ #
2235
+ # {
2236
+ # studio_id: "XmlStringMaxLen256", # required
2237
+ # identity_id: "XmlStringMaxLen256",
2238
+ # identity_name: "XmlStringMaxLen256",
2239
+ # identity_type: "USER", # required, accepts USER, GROUP
2240
+ # }
2241
+ #
2242
+ # @!attribute [rw] studio_id
2243
+ # The ID of the Amazon EMR Studio.
2244
+ # @return [String]
2245
+ #
2246
+ # @!attribute [rw] identity_id
2247
+ # The globally unique identifier (GUID) of the user or group. For more
2248
+ # information, see [UserId][1] and [GroupId][2] in the *AWS SSO
2249
+ # Identity Store API Reference*. Either `IdentityName` or `IdentityId`
2250
+ # must be specified.
2251
+ #
2252
+ #
2253
+ #
2254
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId
2255
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId
2256
+ # @return [String]
2257
+ #
2258
+ # @!attribute [rw] identity_name
2259
+ # The name of the user or group to fetch. For more information, see
2260
+ # [UserName][1] and [DisplayName][2] in the *AWS SSO Identity Store
2261
+ # API Reference*. Either `IdentityName` or `IdentityId` must be
2262
+ # specified.
2263
+ #
2264
+ #
2265
+ #
2266
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
2267
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
2268
+ # @return [String]
2269
+ #
2270
+ # @!attribute [rw] identity_type
2271
+ # Specifies whether the identity to fetch is a user or a group.
2272
+ # @return [String]
2273
+ #
2274
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMappingInput AWS API Documentation
2275
+ #
2276
+ class GetStudioSessionMappingInput < Struct.new(
2277
+ :studio_id,
2278
+ :identity_id,
2279
+ :identity_name,
2280
+ :identity_type)
2281
+ SENSITIVE = []
2282
+ include Aws::Structure
2283
+ end
2284
+
2285
+ # @!attribute [rw] session_mapping
2286
+ # The session mapping details for the specified Amazon EMR Studio and
2287
+ # identity, including session policy ARN and creation time.
2288
+ # @return [Types::SessionMappingDetail]
2289
+ #
2290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/GetStudioSessionMappingOutput AWS API Documentation
2291
+ #
2292
+ class GetStudioSessionMappingOutput < Struct.new(
2293
+ :session_mapping)
2294
+ SENSITIVE = []
2295
+ include Aws::Structure
2296
+ end
2297
+
1939
2298
  # A job flow step consisting of a JAR file whose main function will be
1940
2299
  # executed. The main function submits a job for Hadoop to execute and
1941
2300
  # waits for the job to finish or fail.
@@ -1957,7 +2316,7 @@ module Aws::EMR
1957
2316
  #
1958
2317
  # @!attribute [rw] properties
1959
2318
  # A list of Java properties that are set when the step runs. You can
1960
- # use these properties to pass key value pairs to your main function.
2319
+ # use these properties to pass key-value pairs to your main function.
1961
2320
  # @return [Array<Types::KeyValue>]
1962
2321
  #
1963
2322
  # @!attribute [rw] jar
@@ -1996,7 +2355,7 @@ module Aws::EMR
1996
2355
  #
1997
2356
  # @!attribute [rw] properties
1998
2357
  # The list of Java properties that are set when the step runs. You can
1999
- # use these properties to pass key value pairs to your main function.
2358
+ # use these properties to pass key-value pairs to your main function.
2000
2359
  # @return [Hash<String,String>]
2001
2360
  #
2002
2361
  # @!attribute [rw] main_class
@@ -2095,7 +2454,7 @@ module Aws::EMR
2095
2454
  # Describes an instance fleet, which is a group of EC2 instances that
2096
2455
  # host a particular node type (master, core, or task) in an Amazon EMR
2097
2456
  # cluster. Instance fleets can consist of a mix of instance types and
2098
- # On-Demand and Spot instances, which are provisioned to meet a defined
2457
+ # On-Demand and Spot Instances, which are provisioned to meet a defined
2099
2458
  # target capacity.
2100
2459
  #
2101
2460
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
@@ -2122,11 +2481,11 @@ module Aws::EMR
2122
2481
  #
2123
2482
  # @!attribute [rw] target_on_demand_capacity
2124
2483
  # The target capacity of On-Demand units for the instance fleet, which
2125
- # determines how many On-Demand instances to provision. When the
2484
+ # determines how many On-Demand Instances to provision. When the
2126
2485
  # instance fleet launches, Amazon EMR tries to provision On-Demand
2127
- # instances as specified by InstanceTypeConfig. Each instance
2486
+ # Instances as specified by InstanceTypeConfig. Each instance
2128
2487
  # configuration has a specified `WeightedCapacity`. When an On-Demand
2129
- # instance is provisioned, the `WeightedCapacity` units count toward
2488
+ # Instance is provisioned, the `WeightedCapacity` units count toward
2130
2489
  # the target capacity. Amazon EMR provisions instances until the
2131
2490
  # target capacity is totally fulfilled, even if this results in an
2132
2491
  # overage. For example, if there are 2 units remaining to fulfill
@@ -2136,7 +2495,7 @@ module Aws::EMR
2136
2495
  # InstanceFleet$ProvisionedOnDemandCapacity to determine the Spot
2137
2496
  # capacity units that have been provisioned for the instance fleet.
2138
2497
  #
2139
- # <note markdown="1"> If not specified or set to 0, only Spot instances are provisioned
2498
+ # <note markdown="1"> If not specified or set to 0, only Spot Instances are provisioned
2140
2499
  # for the instance fleet using `TargetSpotCapacity`. At least one of
2141
2500
  # `TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater
2142
2501
  # than 0. For a master instance fleet, only one of
@@ -2148,8 +2507,8 @@ module Aws::EMR
2148
2507
  #
2149
2508
  # @!attribute [rw] target_spot_capacity
2150
2509
  # The target capacity of Spot units for the instance fleet, which
2151
- # determines how many Spot instances to provision. When the instance
2152
- # fleet launches, Amazon EMR tries to provision Spot instances as
2510
+ # determines how many Spot Instances to provision. When the instance
2511
+ # fleet launches, Amazon EMR tries to provision Spot Instances as
2153
2512
  # specified by InstanceTypeConfig. Each instance configuration has a
2154
2513
  # specified `WeightedCapacity`. When a Spot instance is provisioned,
2155
2514
  # the `WeightedCapacity` units count toward the target capacity.
@@ -2162,7 +2521,7 @@ module Aws::EMR
2162
2521
  # determine the Spot capacity units that have been provisioned for the
2163
2522
  # instance fleet.
2164
2523
  #
2165
- # <note markdown="1"> If not specified or set to 0, only On-Demand instances are
2524
+ # <note markdown="1"> If not specified or set to 0, only On-Demand Instances are
2166
2525
  # provisioned for the instance fleet. At least one of
2167
2526
  # `TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater
2168
2527
  # than 0. For a master instance fleet, only one of
@@ -2268,6 +2627,10 @@ module Aws::EMR
2268
2627
  # },
2269
2628
  # on_demand_specification: {
2270
2629
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
2630
+ # capacity_reservation_options: {
2631
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
2632
+ # capacity_reservation_preference: "open", # accepts open, none
2633
+ # },
2271
2634
  # },
2272
2635
  # },
2273
2636
  # }
@@ -2278,16 +2641,16 @@ module Aws::EMR
2278
2641
  #
2279
2642
  # @!attribute [rw] instance_fleet_type
2280
2643
  # The node type that the instance fleet hosts. Valid values are
2281
- # MASTER,CORE,and TASK.
2644
+ # MASTER, CORE, and TASK.
2282
2645
  # @return [String]
2283
2646
  #
2284
2647
  # @!attribute [rw] target_on_demand_capacity
2285
2648
  # The target capacity of On-Demand units for the instance fleet, which
2286
- # determines how many On-Demand instances to provision. When the
2649
+ # determines how many On-Demand Instances to provision. When the
2287
2650
  # instance fleet launches, Amazon EMR tries to provision On-Demand
2288
- # instances as specified by InstanceTypeConfig. Each instance
2651
+ # Instances as specified by InstanceTypeConfig. Each instance
2289
2652
  # configuration has a specified `WeightedCapacity`. When an On-Demand
2290
- # instance is provisioned, the `WeightedCapacity` units count toward
2653
+ # Instance is provisioned, the `WeightedCapacity` units count toward
2291
2654
  # the target capacity. Amazon EMR provisions instances until the
2292
2655
  # target capacity is totally fulfilled, even if this results in an
2293
2656
  # overage. For example, if there are 2 units remaining to fulfill
@@ -2295,7 +2658,7 @@ module Aws::EMR
2295
2658
  # `WeightedCapacity` of 5 units, the instance is provisioned, and the
2296
2659
  # target capacity is exceeded by 3 units.
2297
2660
  #
2298
- # <note markdown="1"> If not specified or set to 0, only Spot instances are provisioned
2661
+ # <note markdown="1"> If not specified or set to 0, only Spot Instances are provisioned
2299
2662
  # for the instance fleet using `TargetSpotCapacity`. At least one of
2300
2663
  # `TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater
2301
2664
  # than 0. For a master instance fleet, only one of
@@ -2307,10 +2670,10 @@ module Aws::EMR
2307
2670
  #
2308
2671
  # @!attribute [rw] target_spot_capacity
2309
2672
  # The target capacity of Spot units for the instance fleet, which
2310
- # determines how many Spot instances to provision. When the instance
2311
- # fleet launches, Amazon EMR tries to provision Spot instances as
2673
+ # determines how many Spot Instances to provision. When the instance
2674
+ # fleet launches, Amazon EMR tries to provision Spot Instances as
2312
2675
  # specified by InstanceTypeConfig. Each instance configuration has a
2313
- # specified `WeightedCapacity`. When a Spot instance is provisioned,
2676
+ # specified `WeightedCapacity`. When a Spot Instance is provisioned,
2314
2677
  # the `WeightedCapacity` units count toward the target capacity.
2315
2678
  # Amazon EMR provisions instances until the target capacity is totally
2316
2679
  # fulfilled, even if this results in an overage. For example, if there
@@ -2319,7 +2682,7 @@ module Aws::EMR
2319
2682
  # instance is provisioned, and the target capacity is exceeded by 3
2320
2683
  # units.
2321
2684
  #
2322
- # <note markdown="1"> If not specified or set to 0, only On-Demand instances are
2685
+ # <note markdown="1"> If not specified or set to 0, only On-Demand Instances are
2323
2686
  # provisioned for the instance fleet. At least one of
2324
2687
  # `TargetSpotCapacity` and `TargetOnDemandCapacity` should be greater
2325
2688
  # than 0. For a master instance fleet, only one of
@@ -2391,13 +2754,13 @@ module Aws::EMR
2391
2754
  include Aws::Structure
2392
2755
  end
2393
2756
 
2394
- # The launch specification for Spot instances in the fleet, which
2757
+ # The launch specification for Spot Instances in the fleet, which
2395
2758
  # determines the defined duration, provisioning timeout behavior, and
2396
2759
  # allocation strategy.
2397
2760
  #
2398
2761
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
2399
2762
  # versions 4.8.0 and later, excluding 5.0.x versions. On-Demand and Spot
2400
- # instance allocation strategies are available in Amazon EMR version
2763
+ # Instance allocation strategies are available in Amazon EMR version
2401
2764
  # 5.12.1 and later.
2402
2765
  #
2403
2766
  # </note>
@@ -2414,22 +2777,26 @@ module Aws::EMR
2414
2777
  # },
2415
2778
  # on_demand_specification: {
2416
2779
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
2780
+ # capacity_reservation_options: {
2781
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
2782
+ # capacity_reservation_preference: "open", # accepts open, none
2783
+ # },
2417
2784
  # },
2418
2785
  # }
2419
2786
  #
2420
2787
  # @!attribute [rw] spot_specification
2421
- # The launch specification for Spot instances in the fleet, which
2788
+ # The launch specification for Spot Instances in the fleet, which
2422
2789
  # determines the defined duration, provisioning timeout behavior, and
2423
2790
  # allocation strategy.
2424
2791
  # @return [Types::SpotProvisioningSpecification]
2425
2792
  #
2426
2793
  # @!attribute [rw] on_demand_specification
2427
- # The launch specification for On-Demand instances in the instance
2794
+ # The launch specification for On-Demand Instances in the instance
2428
2795
  # fleet, which determines the allocation strategy.
2429
2796
  #
2430
2797
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
2431
2798
  # versions 4.8.0 and later, excluding 5.0.x versions. On-Demand
2432
- # instances allocation strategy is available in Amazon EMR version
2799
+ # Instances allocation strategy is available in Amazon EMR version
2433
2800
  # 5.12.1 and later.
2434
2801
  #
2435
2802
  # </note>
@@ -2574,10 +2941,10 @@ module Aws::EMR
2574
2941
  # @return [String]
2575
2942
  #
2576
2943
  # @!attribute [rw] bid_price
2577
- # The bid price for each EC2 Spot instance type as defined by
2578
- # `InstanceType`. Expressed in USD. If neither `BidPrice` nor
2579
- # `BidPriceAsPercentageOfOnDemandPrice` is provided,
2580
- # `BidPriceAsPercentageOfOnDemandPrice` defaults to 100%.
2944
+ # If specified, indicates that the instance group uses Spot Instances.
2945
+ # This is the maximum price you are willing to pay for Spot Instances.
2946
+ # Specify `OnDemandPrice` to set the amount equal to the On-Demand
2947
+ # price, or specify an amount in USD.
2581
2948
  # @return [String]
2582
2949
  #
2583
2950
  # @!attribute [rw] instance_type
@@ -2756,10 +3123,10 @@ module Aws::EMR
2756
3123
  # @return [String]
2757
3124
  #
2758
3125
  # @!attribute [rw] bid_price
2759
- # The bid price for each EC2 Spot instance type as defined by
2760
- # `InstanceType`. Expressed in USD. If neither `BidPrice` nor
2761
- # `BidPriceAsPercentageOfOnDemandPrice` is provided,
2762
- # `BidPriceAsPercentageOfOnDemandPrice` defaults to 100%.
3126
+ # If specified, indicates that the instance group uses Spot Instances.
3127
+ # This is the maximum price you are willing to pay for Spot Instances.
3128
+ # Specify `OnDemandPrice` to set the amount equal to the On-Demand
3129
+ # price, or specify an amount in USD.
2763
3130
  # @return [String]
2764
3131
  #
2765
3132
  # @!attribute [rw] instance_type
@@ -2828,10 +3195,10 @@ module Aws::EMR
2828
3195
  # @return [String]
2829
3196
  #
2830
3197
  # @!attribute [rw] bid_price
2831
- # The bid price for each EC2 Spot instance type as defined by
2832
- # `InstanceType`. Expressed in USD. If neither `BidPrice` nor
2833
- # `BidPriceAsPercentageOfOnDemandPrice` is provided,
2834
- # `BidPriceAsPercentageOfOnDemandPrice` defaults to 100%.
3198
+ # If specified, indicates that the instance group uses Spot Instances.
3199
+ # This is the maximum price you are willing to pay for Spot Instances.
3200
+ # Specify `OnDemandPrice` to set the amount equal to the On-Demand
3201
+ # price, or specify an amount in USD.
2835
3202
  # @return [String]
2836
3203
  #
2837
3204
  # @!attribute [rw] instance_type
@@ -2923,7 +3290,7 @@ module Aws::EMR
2923
3290
  # }
2924
3291
  #
2925
3292
  # @!attribute [rw] instance_group_id
2926
- # Unique ID of the instance group to expand or shrink.
3293
+ # Unique ID of the instance group to modify.
2927
3294
  # @return [String]
2928
3295
  #
2929
3296
  # @!attribute [rw] instance_count
@@ -3131,7 +3498,7 @@ module Aws::EMR
3131
3498
  # An instance type configuration for each instance type in an instance
3132
3499
  # fleet, which determines the EC2 instances Amazon EMR attempts to
3133
3500
  # provision to fulfill On-Demand and Spot target capacities. There can
3134
- # be a maximum of 5 instance type configurations in a fleet.
3501
+ # be a maximum of five instance type configurations in a fleet.
3135
3502
  #
3136
3503
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
3137
3504
  # versions 4.8.0 and later, excluding 5.0.x versions.
@@ -3185,7 +3552,7 @@ module Aws::EMR
3185
3552
  # @return [Integer]
3186
3553
  #
3187
3554
  # @!attribute [rw] bid_price
3188
- # The bid price for each EC2 Spot instance type as defined by
3555
+ # The bid price for each EC2 Spot Instance type as defined by
3189
3556
  # `InstanceType`. Expressed in USD. If neither `BidPrice` nor
3190
3557
  # `BidPriceAsPercentageOfOnDemandPrice` is provided,
3191
3558
  # `BidPriceAsPercentageOfOnDemandPrice` defaults to 100%.
@@ -3193,15 +3560,15 @@ module Aws::EMR
3193
3560
  #
3194
3561
  # @!attribute [rw] bid_price_as_percentage_of_on_demand_price
3195
3562
  # The bid price, as a percentage of On-Demand price, for each EC2 Spot
3196
- # instance as defined by `InstanceType`. Expressed as a number (for
3563
+ # Instance as defined by `InstanceType`. Expressed as a number (for
3197
3564
  # example, 20 specifies 20%). If neither `BidPrice` nor
3198
3565
  # `BidPriceAsPercentageOfOnDemandPrice` is provided,
3199
3566
  # `BidPriceAsPercentageOfOnDemandPrice` defaults to 100%.
3200
3567
  # @return [Float]
3201
3568
  #
3202
3569
  # @!attribute [rw] ebs_configuration
3203
- # The configuration of Amazon Elastic Block Storage (EBS) attached to
3204
- # each instance as defined by `InstanceType`.
3570
+ # The configuration of Amazon Elastic Block Storage (Amazon EBS)
3571
+ # attached to each instance as defined by `InstanceType`.
3205
3572
  # @return [Types::EbsConfiguration]
3206
3573
  #
3207
3574
  # @!attribute [rw] configurations
@@ -3244,13 +3611,13 @@ module Aws::EMR
3244
3611
  # @return [Integer]
3245
3612
  #
3246
3613
  # @!attribute [rw] bid_price
3247
- # The bid price for each EC2 Spot instance type as defined by
3614
+ # The bid price for each EC2 Spot Instance type as defined by
3248
3615
  # `InstanceType`. Expressed in USD.
3249
3616
  # @return [String]
3250
3617
  #
3251
3618
  # @!attribute [rw] bid_price_as_percentage_of_on_demand_price
3252
3619
  # The bid price, as a percentage of On-Demand price, for each EC2 Spot
3253
- # instance as defined by `InstanceType`. Expressed as a number (for
3620
+ # Instance as defined by `InstanceType`. Expressed as a number (for
3254
3621
  # example, 20 specifies 20%).
3255
3622
  # @return [Float]
3256
3623
  #
@@ -3261,8 +3628,8 @@ module Aws::EMR
3261
3628
  # @return [Array<Types::Configuration>]
3262
3629
  #
3263
3630
  # @!attribute [rw] ebs_block_devices
3264
- # The configuration of Amazon Elastic Block Storage (EBS) attached to
3265
- # each instance as defined by `InstanceType`.
3631
+ # The configuration of Amazon Elastic Block Storage (Amazon EBS)
3632
+ # attached to each instance as defined by `InstanceType`.
3266
3633
  # @return [Array<Types::EbsBlockDevice>]
3267
3634
  #
3268
3635
  # @!attribute [rw] ebs_optimized
@@ -3291,8 +3658,8 @@ module Aws::EMR
3291
3658
  #
3292
3659
  class InternalServerError < Aws::EmptyStructure; end
3293
3660
 
3294
- # This exception occurs when there is an internal failure in the EMR
3295
- # service.
3661
+ # This exception occurs when there is an internal failure in the Amazon
3662
+ # EMR service.
3296
3663
  #
3297
3664
  # @!attribute [rw] message
3298
3665
  # The message associated with the exception.
@@ -3368,9 +3735,9 @@ module Aws::EMR
3368
3735
  # @return [Array<Types::BootstrapActionDetail>]
3369
3736
  #
3370
3737
  # @!attribute [rw] supported_products
3371
- # A list of strings set by third party software when the job flow is
3372
- # launched. If you are not using third party software to manage the
3373
- # job flow this value is empty.
3738
+ # A list of strings set by third-party software when the job flow is
3739
+ # launched. If you are not using third-party software to manage the
3740
+ # job flow, this value is empty.
3374
3741
  # @return [Array<String>]
3375
3742
  #
3376
3743
  # @!attribute [rw] visible_to_all_users
@@ -3391,8 +3758,8 @@ module Aws::EMR
3391
3758
  # @return [String]
3392
3759
  #
3393
3760
  # @!attribute [rw] service_role
3394
- # The IAM role that will be assumed by the Amazon EMR service to
3395
- # access AWS resources on your behalf.
3761
+ # The IAM role that is assumed by the Amazon EMR service to access AWS
3762
+ # resources on your behalf.
3396
3763
  # @return [String]
3397
3764
  #
3398
3765
  # @!attribute [rw] auto_scaling_role
@@ -3410,13 +3777,13 @@ module Aws::EMR
3410
3777
  # to terminate the instance was submitted. This option is only
3411
3778
  # available with Amazon EMR 5.1.0 and later and is the default for
3412
3779
  # clusters created using that version. `TERMINATE_AT_TASK_COMPLETION`
3413
- # indicates that Amazon EMR blacklists and drains tasks from nodes
3414
- # before terminating the Amazon EC2 instances, regardless of the
3415
- # instance-hour boundary. With either behavior, Amazon EMR removes the
3416
- # least active nodes first and blocks instance termination if it could
3417
- # lead to HDFS corruption. `TERMINATE_AT_TASK_COMPLETION` available
3418
- # only in Amazon EMR version 4.1.0 and later, and is the default for
3419
- # versions of Amazon EMR earlier than 5.1.0.
3780
+ # indicates that Amazon EMR adds nodes to a deny list and drains tasks
3781
+ # from nodes before terminating the Amazon EC2 instances, regardless
3782
+ # of the instance-hour boundary. With either behavior, Amazon EMR
3783
+ # removes the least active nodes first and blocks instance termination
3784
+ # if it could lead to HDFS corruption. `TERMINATE_AT_TASK_COMPLETION`
3785
+ # available only in Amazon EMR version 4.1.0 and later, and is the
3786
+ # default for versions of Amazon EMR earlier than 5.1.0.
3420
3787
  # @return [String]
3421
3788
  #
3422
3789
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/JobFlowDetail AWS API Documentation
@@ -3483,10 +3850,10 @@ module Aws::EMR
3483
3850
 
3484
3851
  # A description of the Amazon EC2 instance on which the cluster (job
3485
3852
  # flow) runs. A valid JobFlowInstancesConfig must contain either
3486
- # InstanceGroups or InstanceFleets, which is the recommended
3487
- # configuration. They cannot be used together. You may also have
3488
- # MasterInstanceType, SlaveInstanceType, and InstanceCount (all three
3489
- # must be present), but we don't recommend this configuration.
3853
+ # InstanceGroups or InstanceFleets. They cannot be used together. You
3854
+ # may also have MasterInstanceType, SlaveInstanceType, and InstanceCount
3855
+ # (all three must be present), but we don't recommend this
3856
+ # configuration.
3490
3857
  #
3491
3858
  # @note When making an API call, you may pass JobFlowInstancesConfig
3492
3859
  # data as a hash:
@@ -3614,6 +3981,10 @@ module Aws::EMR
3614
3981
  # },
3615
3982
  # on_demand_specification: {
3616
3983
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
3984
+ # capacity_reservation_options: {
3985
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
3986
+ # capacity_reservation_preference: "open", # accepts open, none
3987
+ # },
3617
3988
  # },
3618
3989
  # },
3619
3990
  # },
@@ -3662,8 +4033,8 @@ module Aws::EMR
3662
4033
  # @return [Array<Types::InstanceFleetConfig>]
3663
4034
  #
3664
4035
  # @!attribute [rw] ec2_key_name
3665
- # The name of the EC2 key pair that can be used to ssh to the master
3666
- # node as the user called "hadoop."
4036
+ # The name of the EC2 key pair that can be used to connect to the
4037
+ # master node using SSH as the user called "hadoop."
3667
4038
  # @return [String]
3668
4039
  #
3669
4040
  # @!attribute [rw] placement
@@ -3683,12 +4054,12 @@ module Aws::EMR
3683
4054
  #
3684
4055
  # @!attribute [rw] hadoop_version
3685
4056
  # Applies only to Amazon EMR release versions earlier than 4.0. The
3686
- # Hadoop version for the cluster. Valid inputs are "0.18"
3687
- # (deprecated), "0.20" (deprecated), "0.20.205" (deprecated),
3688
- # "1.0.3", "2.2.0", or "2.4.0". If you do not set this value,
3689
- # the default of 0.18 is used, unless the `AmiVersion` parameter is
3690
- # set in the RunJobFlow call, in which case the default version of
3691
- # Hadoop for that AMI version is used.
4057
+ # Hadoop version for the cluster. Valid inputs are "0.18" (no longer
4058
+ # maintained), "0.20" (no longer maintained), "0.20.205" (no
4059
+ # longer maintained), "1.0.3", "2.2.0", or "2.4.0". If you do
4060
+ # not set this value, the default of 0.18 is used, unless the
4061
+ # `AmiVersion` parameter is set in the RunJobFlow call, in which case
4062
+ # the default version of Hadoop for that AMI version is used.
3692
4063
  # @return [String]
3693
4064
  #
3694
4065
  # @!attribute [rw] ec2_subnet_id
@@ -3793,17 +4164,17 @@ module Aws::EMR
3793
4164
  #
3794
4165
  # @!attribute [rw] normalized_instance_hours
3795
4166
  # An approximation of the cost of the cluster, represented in
3796
- # m1.small/hours. This value is incremented one time for every hour
3797
- # that an m1.small runs. Larger instances are weighted more, so an
3798
- # Amazon EC2 instance that is roughly four times more expensive would
3799
- # result in the normalized instance hours being incremented by four.
3800
- # This result is only an approximation and does not reflect the actual
3801
- # billing rate.
4167
+ # m1.small/hours. This value is increased one time for every hour that
4168
+ # an m1.small instance runs. Larger instances are weighted more
4169
+ # heavily, so an Amazon EC2 instance that is roughly four times more
4170
+ # expensive would result in the normalized instance hours being
4171
+ # increased incrementally four times. This result is only an
4172
+ # approximation and does not reflect the actual billing rate.
3802
4173
  # @return [Integer]
3803
4174
  #
3804
4175
  # @!attribute [rw] ec2_key_name
3805
- # The name of an Amazon EC2 key pair that can be used to ssh to the
3806
- # master node.
4176
+ # The name of an Amazon EC2 key pair that can be used to connect to
4177
+ # the master node using SSH.
3807
4178
  # @return [String]
3808
4179
  #
3809
4180
  # @!attribute [rw] ec2_subnet_id
@@ -3852,7 +4223,7 @@ module Aws::EMR
3852
4223
 
3853
4224
  # Attributes for Kerberos configuration when Kerberos authentication is
3854
4225
  # enabled using a security configuration. For more information see [Use
3855
- # Kerberos Authentication][1] in the *EMR Management Guide*.
4226
+ # Kerberos Authentication][1] in the *Amazon EMR Management Guide*.
3856
4227
  #
3857
4228
  #
3858
4229
  #
@@ -3908,7 +4279,7 @@ module Aws::EMR
3908
4279
  include Aws::Structure
3909
4280
  end
3910
4281
 
3911
- # A key value pair.
4282
+ # A key-value pair.
3912
4283
  #
3913
4284
  # @note When making an API call, you may pass KeyValue
3914
4285
  # data as a hash:
@@ -3919,7 +4290,7 @@ module Aws::EMR
3919
4290
  # }
3920
4291
  #
3921
4292
  # @!attribute [rw] key
3922
- # The unique identifier of a key value pair.
4293
+ # The unique identifier of a key-value pair.
3923
4294
  # @return [String]
3924
4295
  #
3925
4296
  # @!attribute [rw] value
@@ -4416,6 +4787,96 @@ module Aws::EMR
4416
4787
  include Aws::Structure
4417
4788
  end
4418
4789
 
4790
+ # @note When making an API call, you may pass ListStudioSessionMappingsInput
4791
+ # data as a hash:
4792
+ #
4793
+ # {
4794
+ # studio_id: "XmlStringMaxLen256",
4795
+ # identity_type: "USER", # accepts USER, GROUP
4796
+ # marker: "Marker",
4797
+ # }
4798
+ #
4799
+ # @!attribute [rw] studio_id
4800
+ # The ID of the Amazon EMR Studio.
4801
+ # @return [String]
4802
+ #
4803
+ # @!attribute [rw] identity_type
4804
+ # Specifies whether to return session mappings for users or groups. If
4805
+ # not specified, the results include session mapping details for both
4806
+ # users and groups.
4807
+ # @return [String]
4808
+ #
4809
+ # @!attribute [rw] marker
4810
+ # The pagination token that indicates the set of results to retrieve.
4811
+ # @return [String]
4812
+ #
4813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappingsInput AWS API Documentation
4814
+ #
4815
+ class ListStudioSessionMappingsInput < Struct.new(
4816
+ :studio_id,
4817
+ :identity_type,
4818
+ :marker)
4819
+ SENSITIVE = []
4820
+ include Aws::Structure
4821
+ end
4822
+
4823
+ # @!attribute [rw] session_mappings
4824
+ # A list of session mapping summary objects. Each object includes
4825
+ # session mapping details such as creation time, identity type (user
4826
+ # or group), and Amazon EMR Studio ID.
4827
+ # @return [Array<Types::SessionMappingSummary>]
4828
+ #
4829
+ # @!attribute [rw] marker
4830
+ # The pagination token that indicates the next set of results to
4831
+ # retrieve.
4832
+ # @return [String]
4833
+ #
4834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudioSessionMappingsOutput AWS API Documentation
4835
+ #
4836
+ class ListStudioSessionMappingsOutput < Struct.new(
4837
+ :session_mappings,
4838
+ :marker)
4839
+ SENSITIVE = []
4840
+ include Aws::Structure
4841
+ end
4842
+
4843
+ # @note When making an API call, you may pass ListStudiosInput
4844
+ # data as a hash:
4845
+ #
4846
+ # {
4847
+ # marker: "Marker",
4848
+ # }
4849
+ #
4850
+ # @!attribute [rw] marker
4851
+ # The pagination token that indicates the set of results to retrieve.
4852
+ # @return [String]
4853
+ #
4854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudiosInput AWS API Documentation
4855
+ #
4856
+ class ListStudiosInput < Struct.new(
4857
+ :marker)
4858
+ SENSITIVE = []
4859
+ include Aws::Structure
4860
+ end
4861
+
4862
+ # @!attribute [rw] studios
4863
+ # The list of Studio summary objects.
4864
+ # @return [Array<Types::StudioSummary>]
4865
+ #
4866
+ # @!attribute [rw] marker
4867
+ # The pagination token that indicates the next set of results to
4868
+ # retrieve.
4869
+ # @return [String]
4870
+ #
4871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ListStudiosOutput AWS API Documentation
4872
+ #
4873
+ class ListStudiosOutput < Struct.new(
4874
+ :studios,
4875
+ :marker)
4876
+ SENSITIVE = []
4877
+ include Aws::Structure
4878
+ end
4879
+
4419
4880
  # Managed scaling policy for an Amazon EMR cluster. The policy specifies
4420
4881
  # the limits for resources that can be added or terminated from a
4421
4882
  # cluster. The policy only applies to the core and task nodes. The
@@ -4494,7 +4955,7 @@ module Aws::EMR
4494
4955
  #
4495
4956
  # @!attribute [rw] step_concurrency_level
4496
4957
  # The number of steps that can be executed concurrently. You can
4497
- # specify a maximum of 256 steps.
4958
+ # specify a minimum of 1 step and a maximum of 256 steps.
4498
4959
  # @return [Integer]
4499
4960
  #
4500
4961
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/ModifyClusterInput AWS API Documentation
@@ -4691,7 +5152,7 @@ module Aws::EMR
4691
5152
  #
4692
5153
  # @!attribute [rw] tags
4693
5154
  # A list of tags associated with a notebook execution. Tags are
4694
- # user-defined key value pairs that consist of a required key string
5155
+ # user-defined key-value pairs that consist of a required key string
4695
5156
  # with a maximum of 128 characters and an optional value string with a
4696
5157
  # maximum of 256 characters.
4697
5158
  # @return [Array<Types::Tag>]
@@ -4784,12 +5245,62 @@ module Aws::EMR
4784
5245
  include Aws::Structure
4785
5246
  end
4786
5247
 
4787
- # The launch specification for On-Demand instances in the instance
5248
+ # Describes the strategy for using unused Capacity Reservations for
5249
+ # fulfilling On-Demand capacity.
5250
+ #
5251
+ # @note When making an API call, you may pass OnDemandCapacityReservationOptions
5252
+ # data as a hash:
5253
+ #
5254
+ # {
5255
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
5256
+ # capacity_reservation_preference: "open", # accepts open, none
5257
+ # }
5258
+ #
5259
+ # @!attribute [rw] usage_strategy
5260
+ # Indicates whether to use unused Capacity Reservations for fulfilling
5261
+ # On-Demand capacity.
5262
+ #
5263
+ # If you specify `use-capacity-reservations-first`, the fleet uses
5264
+ # unused Capacity Reservations to fulfill On-Demand capacity up to the
5265
+ # target On-Demand capacity. If multiple instance pools have unused
5266
+ # Capacity Reservations, the On-Demand allocation strategy
5267
+ # (`lowest-price`) is applied. If the number of unused Capacity
5268
+ # Reservations is less than the On-Demand target capacity, the
5269
+ # remaining On-Demand target capacity is launched according to the
5270
+ # On-Demand allocation strategy (`lowest-price`).
5271
+ #
5272
+ # If you do not specify a value, the fleet fulfils the On-Demand
5273
+ # capacity according to the chosen On-Demand allocation strategy.
5274
+ # @return [String]
5275
+ #
5276
+ # @!attribute [rw] capacity_reservation_preference
5277
+ # Indicates the instance's Capacity Reservation preferences. Possible
5278
+ # preferences include:
5279
+ #
5280
+ # * `open` - The instance can run in any open Capacity Reservation
5281
+ # that has matching attributes (instance type, platform,
5282
+ # Availability Zone).
5283
+ #
5284
+ # * `none` - The instance avoids running in a Capacity Reservation
5285
+ # even if one is available. The instance runs as an On-Demand
5286
+ # Instance.
5287
+ # @return [String]
5288
+ #
5289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/OnDemandCapacityReservationOptions AWS API Documentation
5290
+ #
5291
+ class OnDemandCapacityReservationOptions < Struct.new(
5292
+ :usage_strategy,
5293
+ :capacity_reservation_preference)
5294
+ SENSITIVE = []
5295
+ include Aws::Structure
5296
+ end
5297
+
5298
+ # The launch specification for On-Demand Instances in the instance
4788
5299
  # fleet, which determines the allocation strategy.
4789
5300
  #
4790
5301
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
4791
5302
  # versions 4.8.0 and later, excluding 5.0.x versions. On-Demand
4792
- # instances allocation strategy is available in Amazon EMR version
5303
+ # Instances allocation strategy is available in Amazon EMR version
4793
5304
  # 5.12.1 and later.
4794
5305
  #
4795
5306
  # </note>
@@ -4799,18 +5310,28 @@ module Aws::EMR
4799
5310
  #
4800
5311
  # {
4801
5312
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
5313
+ # capacity_reservation_options: {
5314
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
5315
+ # capacity_reservation_preference: "open", # accepts open, none
5316
+ # },
4802
5317
  # }
4803
5318
  #
4804
5319
  # @!attribute [rw] allocation_strategy
4805
5320
  # Specifies the strategy to use in launching On-Demand instance
4806
- # fleets. Currently, the only option is lowest-price (the default),
5321
+ # fleets. Currently, the only option is `lowest-price` (the default),
4807
5322
  # which launches the lowest price first.
4808
5323
  # @return [String]
4809
5324
  #
5325
+ # @!attribute [rw] capacity_reservation_options
5326
+ # The launch specification for On-Demand instances in the instance
5327
+ # fleet, which determines the allocation strategy.
5328
+ # @return [Types::OnDemandCapacityReservationOptions]
5329
+ #
4810
5330
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/OnDemandProvisioningSpecification AWS API Documentation
4811
5331
  #
4812
5332
  class OnDemandProvisioningSpecification < Struct.new(
4813
- :allocation_strategy)
5333
+ :allocation_strategy,
5334
+ :capacity_reservation_options)
4814
5335
  SENSITIVE = []
4815
5336
  include Aws::Structure
4816
5337
  end
@@ -5005,7 +5526,7 @@ module Aws::EMR
5005
5526
  # @return [Types::AutoScalingPolicyDescription]
5006
5527
  #
5007
5528
  # @!attribute [rw] cluster_arn
5008
- # The Amazon Resource Name of the cluster.
5529
+ # The Amazon Resource Name (ARN) of the cluster.
5009
5530
  # @return [String]
5010
5531
  #
5011
5532
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/PutAutoScalingPolicyOutput AWS API Documentation
@@ -5331,6 +5852,10 @@ module Aws::EMR
5331
5852
  # },
5332
5853
  # on_demand_specification: {
5333
5854
  # allocation_strategy: "lowest-price", # required, accepts lowest-price
5855
+ # capacity_reservation_options: {
5856
+ # usage_strategy: "use-capacity-reservations-first", # accepts use-capacity-reservations-first
5857
+ # capacity_reservation_preference: "open", # accepts open, none
5858
+ # },
5334
5859
  # },
5335
5860
  # },
5336
5861
  # },
@@ -5456,9 +5981,9 @@ module Aws::EMR
5456
5981
  #
5457
5982
  # @!attribute [rw] log_encryption_kms_key_id
5458
5983
  # The AWS KMS customer master key (CMK) used for encrypting log files.
5459
- # If a value is not provided, the logs will remain encrypted by
5460
- # AES-256. This attribute is only available with EMR version 5.30.0
5461
- # and later, excluding EMR 6.0.0.
5984
+ # If a value is not provided, the logs remain encrypted by AES-256.
5985
+ # This attribute is only available with Amazon EMR version 5.30.0 and
5986
+ # later, excluding Amazon EMR 6.0.0.
5462
5987
  # @return [String]
5463
5988
  #
5464
5989
  # @!attribute [rw] additional_info
@@ -5542,7 +6067,7 @@ module Aws::EMR
5542
6067
  #
5543
6068
  # * "mapr-m7" - launch the cluster using MapR M7 Edition.
5544
6069
  #
5545
- # * "hunk" - launch the cluster with the Hunk Big Data Analtics
6070
+ # * "hunk" - launch the cluster with the Hunk Big Data Analytics
5546
6071
  # Platform.
5547
6072
  #
5548
6073
  # * "hue"- launch the cluster with Hue installed.
@@ -5616,11 +6141,11 @@ module Aws::EMR
5616
6141
  # the request to terminate the instance was submitted. This option is
5617
6142
  # only available with Amazon EMR 5.1.0 and later and is the default
5618
6143
  # for clusters created using that version.
5619
- # `TERMINATE_AT_TASK_COMPLETION` indicates that Amazon EMR blacklists
5620
- # and drains tasks from nodes before terminating the Amazon EC2
5621
- # instances, regardless of the instance-hour boundary. With either
5622
- # behavior, Amazon EMR removes the least active nodes first and blocks
5623
- # instance termination if it could lead to HDFS corruption.
6144
+ # `TERMINATE_AT_TASK_COMPLETION` indicates that Amazon EMR adds nodes
6145
+ # to a deny list and drains tasks from nodes before terminating the
6146
+ # Amazon EC2 instances, regardless of the instance-hour boundary. With
6147
+ # either behavior, Amazon EMR removes the least active nodes first and
6148
+ # blocks instance termination if it could lead to HDFS corruption.
5624
6149
  # `TERMINATE_AT_TASK_COMPLETION` available only in Amazon EMR version
5625
6150
  # 4.1.0 and later, and is the default for versions of Amazon EMR
5626
6151
  # earlier than 5.1.0.
@@ -5648,9 +6173,9 @@ module Aws::EMR
5648
6173
  # @return [String]
5649
6174
  #
5650
6175
  # @!attribute [rw] ebs_root_volume_size
5651
- # The size, in GiB, of the EBS root device volume of the Linux AMI
5652
- # that is used for each EC2 instance. Available in Amazon EMR version
5653
- # 4.x and later.
6176
+ # The size, in GiB, of the Amazon EBS root device volume of the Linux
6177
+ # AMI that is used for each EC2 instance. Available in Amazon EMR
6178
+ # version 4.x and later.
5654
6179
  # @return [Integer]
5655
6180
  #
5656
6181
  # @!attribute [rw] repo_upgrade_on_boot
@@ -5665,7 +6190,8 @@ module Aws::EMR
5665
6190
  # @!attribute [rw] kerberos_attributes
5666
6191
  # Attributes for Kerberos configuration when Kerberos authentication
5667
6192
  # is enabled using a security configuration. For more information see
5668
- # [Use Kerberos Authentication][1] in the *EMR Management Guide*.
6193
+ # [Use Kerberos Authentication][1] in the *Amazon EMR Management
6194
+ # Guide*.
5669
6195
  #
5670
6196
  #
5671
6197
  #
@@ -5723,11 +6249,11 @@ module Aws::EMR
5723
6249
  # The result of the RunJobFlow operation.
5724
6250
  #
5725
6251
  # @!attribute [rw] job_flow_id
5726
- # An unique identifier for the job flow.
6252
+ # A unique identifier for the job flow.
5727
6253
  # @return [String]
5728
6254
  #
5729
6255
  # @!attribute [rw] cluster_arn
5730
- # The Amazon Resource Name of the cluster.
6256
+ # The Amazon Resource Name (ARN) of the cluster.
5731
6257
  # @return [String]
5732
6258
  #
5733
6259
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/RunJobFlowOutput AWS API Documentation
@@ -5962,6 +6488,110 @@ module Aws::EMR
5962
6488
  include Aws::Structure
5963
6489
  end
5964
6490
 
6491
+ # Details for an Amazon EMR Studio session mapping including creation
6492
+ # time, user or group ID, Studio ID, and so on.
6493
+ #
6494
+ # @!attribute [rw] studio_id
6495
+ # The ID of the Amazon EMR Studio.
6496
+ # @return [String]
6497
+ #
6498
+ # @!attribute [rw] identity_id
6499
+ # The globally unique identifier (GUID) of the user or group.
6500
+ # @return [String]
6501
+ #
6502
+ # @!attribute [rw] identity_name
6503
+ # The name of the user or group. For more information, see
6504
+ # [UserName][1] and [DisplayName][2] in the *AWS SSO Identity Store
6505
+ # API Reference*.
6506
+ #
6507
+ #
6508
+ #
6509
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
6510
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
6511
+ # @return [String]
6512
+ #
6513
+ # @!attribute [rw] identity_type
6514
+ # Specifies whether the identity mapped to the Amazon EMR Studio is a
6515
+ # user or a group.
6516
+ # @return [String]
6517
+ #
6518
+ # @!attribute [rw] session_policy_arn
6519
+ # The Amazon Resource Name (ARN) of the session policy associated with
6520
+ # the user or group.
6521
+ # @return [String]
6522
+ #
6523
+ # @!attribute [rw] creation_time
6524
+ # The time the session mapping was created.
6525
+ # @return [Time]
6526
+ #
6527
+ # @!attribute [rw] last_modified_time
6528
+ # The time the session mapping was last modified.
6529
+ # @return [Time]
6530
+ #
6531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SessionMappingDetail AWS API Documentation
6532
+ #
6533
+ class SessionMappingDetail < Struct.new(
6534
+ :studio_id,
6535
+ :identity_id,
6536
+ :identity_name,
6537
+ :identity_type,
6538
+ :session_policy_arn,
6539
+ :creation_time,
6540
+ :last_modified_time)
6541
+ SENSITIVE = []
6542
+ include Aws::Structure
6543
+ end
6544
+
6545
+ # Details for an Amazon EMR Studio session mapping. The details do not
6546
+ # include the time the session mapping was last modified.
6547
+ #
6548
+ # @!attribute [rw] studio_id
6549
+ # The ID of the Amazon EMR Studio.
6550
+ # @return [String]
6551
+ #
6552
+ # @!attribute [rw] identity_id
6553
+ # The globally unique identifier (GUID) of the user or group from the
6554
+ # AWS SSO Identity Store.
6555
+ # @return [String]
6556
+ #
6557
+ # @!attribute [rw] identity_name
6558
+ # The name of the user or group. For more information, see
6559
+ # [UserName][1] and [DisplayName][2] in the *AWS SSO Identity Store
6560
+ # API Reference*.
6561
+ #
6562
+ #
6563
+ #
6564
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
6565
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
6566
+ # @return [String]
6567
+ #
6568
+ # @!attribute [rw] identity_type
6569
+ # Specifies whether the identity mapped to the Amazon EMR Studio is a
6570
+ # user or a group.
6571
+ # @return [String]
6572
+ #
6573
+ # @!attribute [rw] session_policy_arn
6574
+ # The Amazon Resource Name (ARN) of the session policy associated with
6575
+ # the user or group.
6576
+ # @return [String]
6577
+ #
6578
+ # @!attribute [rw] creation_time
6579
+ # The time the session mapping was created.
6580
+ # @return [Time]
6581
+ #
6582
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/SessionMappingSummary AWS API Documentation
6583
+ #
6584
+ class SessionMappingSummary < Struct.new(
6585
+ :studio_id,
6586
+ :identity_id,
6587
+ :identity_name,
6588
+ :identity_type,
6589
+ :session_policy_arn,
6590
+ :creation_time)
6591
+ SENSITIVE = []
6592
+ include Aws::Structure
6593
+ end
6594
+
5965
6595
  # The input argument to the TerminationProtection operation.
5966
6596
  #
5967
6597
  # @note When making an API call, you may pass SetTerminationProtectionInput
@@ -6114,12 +6744,12 @@ module Aws::EMR
6114
6744
  include Aws::Structure
6115
6745
  end
6116
6746
 
6117
- # The launch specification for Spot instances in the instance fleet,
6747
+ # The launch specification for Spot Instances in the instance fleet,
6118
6748
  # which determines the defined duration, provisioning timeout behavior,
6119
6749
  # and allocation strategy.
6120
6750
  #
6121
6751
  # <note markdown="1"> The instance fleet configuration is available only in Amazon EMR
6122
- # versions 4.8.0 and later, excluding 5.0.x versions. Spot instance
6752
+ # versions 4.8.0 and later, excluding 5.0.x versions. Spot Instance
6123
6753
  # allocation strategy is available in Amazon EMR version 5.12.1 and
6124
6754
  # later.
6125
6755
  #
@@ -6136,7 +6766,7 @@ module Aws::EMR
6136
6766
  # }
6137
6767
  #
6138
6768
  # @!attribute [rw] timeout_duration_minutes
6139
- # The spot provisioning timeout period in minutes. If Spot instances
6769
+ # The spot provisioning timeout period in minutes. If Spot Instances
6140
6770
  # are not provisioned within this time period, the `TimeOutAction` is
6141
6771
  # taken. Minimum value is 5 and maximum value is 1440. The timeout
6142
6772
  # applies only during initial provisioning, when the cluster is first
@@ -6146,29 +6776,29 @@ module Aws::EMR
6146
6776
  # @!attribute [rw] timeout_action
6147
6777
  # The action to take when `TargetSpotCapacity` has not been fulfilled
6148
6778
  # when the `TimeoutDurationMinutes` has expired; that is, when all
6149
- # Spot instances could not be provisioned within the Spot provisioning
6779
+ # Spot Instances could not be provisioned within the Spot provisioning
6150
6780
  # timeout. Valid values are `TERMINATE_CLUSTER` and
6151
6781
  # `SWITCH_TO_ON_DEMAND`. SWITCH\_TO\_ON\_DEMAND specifies that if no
6152
- # Spot instances are available, On-Demand Instances should be
6782
+ # Spot Instances are available, On-Demand Instances should be
6153
6783
  # provisioned to fulfill any remaining Spot capacity.
6154
6784
  # @return [String]
6155
6785
  #
6156
6786
  # @!attribute [rw] block_duration_minutes
6157
- # The defined duration for Spot instances (also known as Spot blocks)
6158
- # in minutes. When specified, the Spot instance does not terminate
6787
+ # The defined duration for Spot Instances (also known as Spot blocks)
6788
+ # in minutes. When specified, the Spot Instance does not terminate
6159
6789
  # before the defined duration expires, and defined duration pricing
6160
- # for Spot instances applies. Valid values are 60, 120, 180, 240, 300,
6161
- # or 360. The duration period starts as soon as a Spot instance
6790
+ # for Spot Instances applies. Valid values are 60, 120, 180, 240, 300,
6791
+ # or 360. The duration period starts as soon as a Spot Instance
6162
6792
  # receives its instance ID. At the end of the duration, Amazon EC2
6163
- # marks the Spot instance for termination and provides a Spot instance
6793
+ # marks the Spot Instance for termination and provides a Spot Instance
6164
6794
  # termination notice, which gives the instance a two-minute warning
6165
6795
  # before it terminates.
6166
6796
  # @return [Integer]
6167
6797
  #
6168
6798
  # @!attribute [rw] allocation_strategy
6169
- # Specifies the strategy to use in launching Spot instance fleets.
6799
+ # Specifies the strategy to use in launching Spot Instance fleets.
6170
6800
  # Currently, the only option is capacity-optimized (the default),
6171
- # which launches instances from Spot instance pools with optimal
6801
+ # which launches instances from Spot Instance pools with optimal
6172
6802
  # capacity for the number of instances that are launching.
6173
6803
  # @return [String]
6174
6804
  #
@@ -6249,7 +6879,7 @@ module Aws::EMR
6249
6879
  #
6250
6880
  # @!attribute [rw] tags
6251
6881
  # A list of tags associated with a notebook execution. Tags are
6252
- # user-defined key value pairs that consist of a required key string
6882
+ # user-defined key-value pairs that consist of a required key string
6253
6883
  # with a maximum of 128 characters and an optional value string with a
6254
6884
  # maximum of 256 characters.
6255
6885
  # @return [Array<Types::Tag>]
@@ -6548,7 +7178,143 @@ module Aws::EMR
6548
7178
  include Aws::Structure
6549
7179
  end
6550
7180
 
6551
- # The list of supported product configurations which allow user-supplied
7181
+ # Details for an Amazon EMR Studio including ID, creation time, name,
7182
+ # and so on.
7183
+ #
7184
+ # @!attribute [rw] studio_id
7185
+ # The ID of the Amazon EMR Studio.
7186
+ # @return [String]
7187
+ #
7188
+ # @!attribute [rw] studio_arn
7189
+ # The Amazon Resource Name (ARN) of the Amazon EMR Studio.
7190
+ # @return [String]
7191
+ #
7192
+ # @!attribute [rw] name
7193
+ # The name of the Amazon EMR Studio.
7194
+ # @return [String]
7195
+ #
7196
+ # @!attribute [rw] description
7197
+ # The detailed description of the Amazon EMR Studio.
7198
+ # @return [String]
7199
+ #
7200
+ # @!attribute [rw] auth_mode
7201
+ # Specifies whether the Amazon EMR Studio authenticates users using
7202
+ # single sign-on (SSO) or IAM.
7203
+ # @return [String]
7204
+ #
7205
+ # @!attribute [rw] vpc_id
7206
+ # The ID of the VPC associated with the Amazon EMR Studio.
7207
+ # @return [String]
7208
+ #
7209
+ # @!attribute [rw] subnet_ids
7210
+ # The list of IDs of the subnets associated with the Amazon EMR
7211
+ # Studio.
7212
+ # @return [Array<String>]
7213
+ #
7214
+ # @!attribute [rw] service_role
7215
+ # The name of the IAM role assumed by the Amazon EMR Studio.
7216
+ # @return [String]
7217
+ #
7218
+ # @!attribute [rw] user_role
7219
+ # The name of the IAM role assumed by users logged in to the Amazon
7220
+ # EMR Studio.
7221
+ # @return [String]
7222
+ #
7223
+ # @!attribute [rw] workspace_security_group_id
7224
+ # The ID of the Workspace security group associated with the Amazon
7225
+ # EMR Studio. The Workspace security group allows outbound network
7226
+ # traffic to resources in the Engine security group and to the
7227
+ # internet.
7228
+ # @return [String]
7229
+ #
7230
+ # @!attribute [rw] engine_security_group_id
7231
+ # The ID of the Engine security group associated with the Amazon EMR
7232
+ # Studio. The Engine security group allows inbound network traffic
7233
+ # from resources in the Workspace security group.
7234
+ # @return [String]
7235
+ #
7236
+ # @!attribute [rw] url
7237
+ # The unique access URL of the Amazon EMR Studio.
7238
+ # @return [String]
7239
+ #
7240
+ # @!attribute [rw] creation_time
7241
+ # The time the Amazon EMR Studio was created.
7242
+ # @return [Time]
7243
+ #
7244
+ # @!attribute [rw] default_s3_location
7245
+ # The default Amazon S3 location to back up Amazon EMR Studio
7246
+ # Workspaces and notebook files.
7247
+ # @return [String]
7248
+ #
7249
+ # @!attribute [rw] tags
7250
+ # A list of tags associated with the Amazon EMR Studio.
7251
+ # @return [Array<Types::Tag>]
7252
+ #
7253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/Studio AWS API Documentation
7254
+ #
7255
+ class Studio < Struct.new(
7256
+ :studio_id,
7257
+ :studio_arn,
7258
+ :name,
7259
+ :description,
7260
+ :auth_mode,
7261
+ :vpc_id,
7262
+ :subnet_ids,
7263
+ :service_role,
7264
+ :user_role,
7265
+ :workspace_security_group_id,
7266
+ :engine_security_group_id,
7267
+ :url,
7268
+ :creation_time,
7269
+ :default_s3_location,
7270
+ :tags)
7271
+ SENSITIVE = []
7272
+ include Aws::Structure
7273
+ end
7274
+
7275
+ # Details for an Amazon EMR Studio, including ID, Name, VPC, and
7276
+ # Description. The details do not include subnets, IAM roles, security
7277
+ # groups, or tags associated with the Studio.
7278
+ #
7279
+ # @!attribute [rw] studio_id
7280
+ # The ID of the Amazon EMR Studio.
7281
+ # @return [String]
7282
+ #
7283
+ # @!attribute [rw] name
7284
+ # The name of the Amazon EMR Studio.
7285
+ # @return [String]
7286
+ #
7287
+ # @!attribute [rw] vpc_id
7288
+ # The ID of the Virtual Private Cloud (Amazon VPC) associated with the
7289
+ # Amazon EMR Studio.
7290
+ # @return [String]
7291
+ #
7292
+ # @!attribute [rw] description
7293
+ # The detailed description of the Amazon EMR Studio.
7294
+ # @return [String]
7295
+ #
7296
+ # @!attribute [rw] url
7297
+ # The unique access URL of the Amazon EMR Studio.
7298
+ # @return [String]
7299
+ #
7300
+ # @!attribute [rw] creation_time
7301
+ # The time when the Amazon EMR Studio was created.
7302
+ # @return [Time]
7303
+ #
7304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/StudioSummary AWS API Documentation
7305
+ #
7306
+ class StudioSummary < Struct.new(
7307
+ :studio_id,
7308
+ :name,
7309
+ :vpc_id,
7310
+ :description,
7311
+ :url,
7312
+ :creation_time)
7313
+ SENSITIVE = []
7314
+ include Aws::Structure
7315
+ end
7316
+
7317
+ # The list of supported product configurations that allow user-supplied
6552
7318
  # arguments. EMR accepts these arguments and forwards them to the
6553
7319
  # corresponding installation script as bootstrap action arguments.
6554
7320
  #
@@ -6577,7 +7343,7 @@ module Aws::EMR
6577
7343
  include Aws::Structure
6578
7344
  end
6579
7345
 
6580
- # A key/value pair containing user-defined metadata that you can
7346
+ # A key-value pair containing user-defined metadata that you can
6581
7347
  # associate with an Amazon EMR resource. Tags make it easier to
6582
7348
  # associate clusters in various ways, such as grouping clusters to track
6583
7349
  # your Amazon EMR resource allocation costs. For more information, see
@@ -6632,7 +7398,7 @@ module Aws::EMR
6632
7398
  # }
6633
7399
  #
6634
7400
  # @!attribute [rw] job_flow_ids
6635
- # A list of job flows to be shutdown.
7401
+ # A list of job flows to be shut down.
6636
7402
  # @return [Array<String>]
6637
7403
  #
6638
7404
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/TerminateJobFlowsInput AWS API Documentation
@@ -6643,6 +7409,115 @@ module Aws::EMR
6643
7409
  include Aws::Structure
6644
7410
  end
6645
7411
 
7412
+ # @note When making an API call, you may pass UpdateStudioInput
7413
+ # data as a hash:
7414
+ #
7415
+ # {
7416
+ # studio_id: "XmlStringMaxLen256", # required
7417
+ # name: "XmlStringMaxLen256",
7418
+ # description: "XmlStringMaxLen256",
7419
+ # subnet_ids: ["String"],
7420
+ # default_s3_location: "XmlString",
7421
+ # }
7422
+ #
7423
+ # @!attribute [rw] studio_id
7424
+ # The ID of the Amazon EMR Studio to update.
7425
+ # @return [String]
7426
+ #
7427
+ # @!attribute [rw] name
7428
+ # A descriptive name for the Amazon EMR Studio.
7429
+ # @return [String]
7430
+ #
7431
+ # @!attribute [rw] description
7432
+ # A detailed description to assign to the Amazon EMR Studio.
7433
+ # @return [String]
7434
+ #
7435
+ # @!attribute [rw] subnet_ids
7436
+ # A list of subnet IDs to associate with the Amazon EMR Studio. The
7437
+ # list can include new subnet IDs, but must also include all of the
7438
+ # subnet IDs previously associated with the Studio. The list order
7439
+ # does not matter. A Studio can have a maximum of 5 subnets. The
7440
+ # subnets must belong to the same VPC as the Studio.
7441
+ # @return [Array<String>]
7442
+ #
7443
+ # @!attribute [rw] default_s3_location
7444
+ # A default Amazon S3 location to back up Workspaces and notebook
7445
+ # files for the Amazon EMR Studio. A Studio user can select an
7446
+ # alternative Amazon S3 location when creating a Workspace.
7447
+ # @return [String]
7448
+ #
7449
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioInput AWS API Documentation
7450
+ #
7451
+ class UpdateStudioInput < Struct.new(
7452
+ :studio_id,
7453
+ :name,
7454
+ :description,
7455
+ :subnet_ids,
7456
+ :default_s3_location)
7457
+ SENSITIVE = []
7458
+ include Aws::Structure
7459
+ end
7460
+
7461
+ # @note When making an API call, you may pass UpdateStudioSessionMappingInput
7462
+ # data as a hash:
7463
+ #
7464
+ # {
7465
+ # studio_id: "XmlStringMaxLen256", # required
7466
+ # identity_id: "XmlStringMaxLen256",
7467
+ # identity_name: "XmlStringMaxLen256",
7468
+ # identity_type: "USER", # required, accepts USER, GROUP
7469
+ # session_policy_arn: "XmlStringMaxLen256", # required
7470
+ # }
7471
+ #
7472
+ # @!attribute [rw] studio_id
7473
+ # The ID of the Amazon EMR Studio.
7474
+ # @return [String]
7475
+ #
7476
+ # @!attribute [rw] identity_id
7477
+ # The globally unique identifier (GUID) of the user or group. For more
7478
+ # information, see [UserId][1] and [GroupId][2] in the *AWS SSO
7479
+ # Identity Store API Reference*. Either `IdentityName` or `IdentityId`
7480
+ # must be specified.
7481
+ #
7482
+ #
7483
+ #
7484
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId
7485
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId
7486
+ # @return [String]
7487
+ #
7488
+ # @!attribute [rw] identity_name
7489
+ # The name of the user or group to update. For more information, see
7490
+ # [UserName][1] and [DisplayName][2] in the *AWS SSO Identity Store
7491
+ # API Reference*. Either `IdentityName` or `IdentityId` must be
7492
+ # specified.
7493
+ #
7494
+ #
7495
+ #
7496
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName
7497
+ # [2]: https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName
7498
+ # @return [String]
7499
+ #
7500
+ # @!attribute [rw] identity_type
7501
+ # Specifies whether the identity to update is a user or a group.
7502
+ # @return [String]
7503
+ #
7504
+ # @!attribute [rw] session_policy_arn
7505
+ # The Amazon Resource Name (ARN) of the session policy to associate
7506
+ # with the specified user or group.
7507
+ # @return [String]
7508
+ #
7509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticmapreduce-2009-03-31/UpdateStudioSessionMappingInput AWS API Documentation
7510
+ #
7511
+ class UpdateStudioSessionMappingInput < Struct.new(
7512
+ :studio_id,
7513
+ :identity_id,
7514
+ :identity_name,
7515
+ :identity_type,
7516
+ :session_policy_arn)
7517
+ SENSITIVE = []
7518
+ include Aws::Structure
7519
+ end
7520
+
6646
7521
  # EBS volume specifications such as volume type, IOPS, and size (GiB)
6647
7522
  # that will be requested for the EBS volume attached to an EC2 instance
6648
7523
  # in the cluster.