aws-sdk-athena 1.64.0 → 1.65.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ef4f565c264acbdf2e8231ff320670a5a809e877e71265e84529aee3060a3e24
4
- data.tar.gz: 8fc2bc53535c4a9ea120231a3ec2deb2eeb82faa6842d98da3e6552c4d1e71e2
3
+ metadata.gz: 93a5aab54a9e7b9bb75bf9274a0a1db4d32a7fbb6d8803f519065c43f4627b26
4
+ data.tar.gz: 1b8ff4beb625c0636d13045d3f26f70b296d8500e2313485ec663e3e39d5c4fb
5
5
  SHA512:
6
- metadata.gz: 7e47325bfb2ddf6cc4a4f05adb381b19c9e25d1601fce6adc0b4748df3f9d856f3725f9aa3a6e6899ca070b15fb460a69f1a19be3702fd09666ee1c3ea6ce06f
7
- data.tar.gz: 7b262a69c7faac4b11fa0847ac78928a4b6b8e127a065110834ab9d7bce6850e452cd293c2a9d80402850e940491afafde26bf46ae1b6bb5b7b7186463ee59f8
6
+ metadata.gz: 160bfa2697be724741708f9cd19a165c989fd2c6f815f33c7a2cb51f6a052303f38cf68308b597e1726791a46d5cf6df1e9a98f07ee9568eb177782228777c17
7
+ data.tar.gz: 941aced19cae2d832a1687eeea8d368191c214cf06f07b13a3c8dc20938ce8f39b47e4fe536ab74650f6a1a30657f9e1be81b2b707425156191b46cdbca1658c
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.65.0 (2023-04-28)
5
+ ------------------
6
+
7
+ * Feature - You can now use capacity reservations on Amazon Athena to run SQL queries on fully-managed compute capacity.
8
+
4
9
  1.64.0 (2023-03-30)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.64.0
1
+ 1.65.0
@@ -546,6 +546,64 @@ module Aws::Athena
546
546
  req.send_request(options)
547
547
  end
548
548
 
549
+ # Cancels the capacity reservation with the specified name.
550
+ #
551
+ # @option params [required, String] :name
552
+ # The name of the capacity reservation to cancel.
553
+ #
554
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
555
+ #
556
+ # @example Request syntax with placeholder values
557
+ #
558
+ # resp = client.cancel_capacity_reservation({
559
+ # name: "CapacityReservationName", # required
560
+ # })
561
+ #
562
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CancelCapacityReservation AWS API Documentation
563
+ #
564
+ # @overload cancel_capacity_reservation(params = {})
565
+ # @param [Hash] params ({})
566
+ def cancel_capacity_reservation(params = {}, options = {})
567
+ req = build_request(:cancel_capacity_reservation, params)
568
+ req.send_request(options)
569
+ end
570
+
571
+ # Creates a capacity reservation with the specified name and number of
572
+ # requested data processing units.
573
+ #
574
+ # @option params [required, Integer] :target_dpus
575
+ # The number of requested data processing units.
576
+ #
577
+ # @option params [required, String] :name
578
+ # The name of the capacity reservation to create.
579
+ #
580
+ # @option params [Array<Types::Tag>] :tags
581
+ # The tags for the capacity reservation.
582
+ #
583
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
584
+ #
585
+ # @example Request syntax with placeholder values
586
+ #
587
+ # resp = client.create_capacity_reservation({
588
+ # target_dpus: 1, # required
589
+ # name: "CapacityReservationName", # required
590
+ # tags: [
591
+ # {
592
+ # key: "TagKey",
593
+ # value: "TagValue",
594
+ # },
595
+ # ],
596
+ # })
597
+ #
598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateCapacityReservation AWS API Documentation
599
+ #
600
+ # @overload create_capacity_reservation(params = {})
601
+ # @param [Hash] params ({})
602
+ def create_capacity_reservation(params = {}, options = {})
603
+ req = build_request(:create_capacity_reservation, params)
604
+ req.send_request(options)
605
+ end
606
+
549
607
  # Creates (registers) a data catalog with the specified name and
550
608
  # properties. Catalogs created are visible to all users of the same
551
609
  # Amazon Web Services account.
@@ -1183,6 +1241,77 @@ module Aws::Athena
1183
1241
  req.send_request(options)
1184
1242
  end
1185
1243
 
1244
+ # Gets the capacity assignment configuration for a capacity reservation,
1245
+ # if one exists.
1246
+ #
1247
+ # @option params [required, String] :capacity_reservation_name
1248
+ # The name of the capacity reservation to retrieve the capacity
1249
+ # assignment configuration for.
1250
+ #
1251
+ # @return [Types::GetCapacityAssignmentConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1252
+ #
1253
+ # * {Types::GetCapacityAssignmentConfigurationOutput#capacity_assignment_configuration #capacity_assignment_configuration} => Types::CapacityAssignmentConfiguration
1254
+ #
1255
+ # @example Request syntax with placeholder values
1256
+ #
1257
+ # resp = client.get_capacity_assignment_configuration({
1258
+ # capacity_reservation_name: "CapacityReservationName", # required
1259
+ # })
1260
+ #
1261
+ # @example Response structure
1262
+ #
1263
+ # resp.capacity_assignment_configuration.capacity_reservation_name #=> String
1264
+ # resp.capacity_assignment_configuration.capacity_assignments #=> Array
1265
+ # resp.capacity_assignment_configuration.capacity_assignments[0].work_group_names #=> Array
1266
+ # resp.capacity_assignment_configuration.capacity_assignments[0].work_group_names[0] #=> String
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityAssignmentConfiguration AWS API Documentation
1269
+ #
1270
+ # @overload get_capacity_assignment_configuration(params = {})
1271
+ # @param [Hash] params ({})
1272
+ def get_capacity_assignment_configuration(params = {}, options = {})
1273
+ req = build_request(:get_capacity_assignment_configuration, params)
1274
+ req.send_request(options)
1275
+ end
1276
+
1277
+ # Returns information about the capacity reservation with the specified
1278
+ # name.
1279
+ #
1280
+ # @option params [required, String] :name
1281
+ # The name of the capacity reservation.
1282
+ #
1283
+ # @return [Types::GetCapacityReservationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1284
+ #
1285
+ # * {Types::GetCapacityReservationOutput#capacity_reservation #capacity_reservation} => Types::CapacityReservation
1286
+ #
1287
+ # @example Request syntax with placeholder values
1288
+ #
1289
+ # resp = client.get_capacity_reservation({
1290
+ # name: "CapacityReservationName", # required
1291
+ # })
1292
+ #
1293
+ # @example Response structure
1294
+ #
1295
+ # resp.capacity_reservation.name #=> String
1296
+ # resp.capacity_reservation.status #=> String, one of "PENDING", "ACTIVE", "CANCELLING", "CANCELLED", "FAILED", "UPDATE_PENDING"
1297
+ # resp.capacity_reservation.target_dpus #=> Integer
1298
+ # resp.capacity_reservation.allocated_dpus #=> Integer
1299
+ # resp.capacity_reservation.last_allocation.status #=> String, one of "PENDING", "SUCCEEDED", "FAILED"
1300
+ # resp.capacity_reservation.last_allocation.status_message #=> String
1301
+ # resp.capacity_reservation.last_allocation.request_time #=> Time
1302
+ # resp.capacity_reservation.last_allocation.request_completion_time #=> Time
1303
+ # resp.capacity_reservation.last_successful_allocation_time #=> Time
1304
+ # resp.capacity_reservation.creation_time #=> Time
1305
+ #
1306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityReservation AWS API Documentation
1307
+ #
1308
+ # @overload get_capacity_reservation(params = {})
1309
+ # @param [Hash] params ({})
1310
+ def get_capacity_reservation(params = {}, options = {})
1311
+ req = build_request(:get_capacity_reservation, params)
1312
+ req.send_request(options)
1313
+ end
1314
+
1186
1315
  # Returns the specified data catalog.
1187
1316
  #
1188
1317
  # @option params [required, String] :name
@@ -1910,6 +2039,53 @@ module Aws::Athena
1910
2039
  req.send_request(options)
1911
2040
  end
1912
2041
 
2042
+ # Lists the capacity reservations for the current account.
2043
+ #
2044
+ # @option params [String] :next_token
2045
+ # A token generated by the Athena service that specifies where to
2046
+ # continue pagination if a previous request was truncated.
2047
+ #
2048
+ # @option params [Integer] :max_results
2049
+ # Specifies the maximum number of results to return.
2050
+ #
2051
+ # @return [Types::ListCapacityReservationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2052
+ #
2053
+ # * {Types::ListCapacityReservationsOutput#next_token #next_token} => String
2054
+ # * {Types::ListCapacityReservationsOutput#capacity_reservations #capacity_reservations} => Array&lt;Types::CapacityReservation&gt;
2055
+ #
2056
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2057
+ #
2058
+ # @example Request syntax with placeholder values
2059
+ #
2060
+ # resp = client.list_capacity_reservations({
2061
+ # next_token: "Token",
2062
+ # max_results: 1,
2063
+ # })
2064
+ #
2065
+ # @example Response structure
2066
+ #
2067
+ # resp.next_token #=> String
2068
+ # resp.capacity_reservations #=> Array
2069
+ # resp.capacity_reservations[0].name #=> String
2070
+ # resp.capacity_reservations[0].status #=> String, one of "PENDING", "ACTIVE", "CANCELLING", "CANCELLED", "FAILED", "UPDATE_PENDING"
2071
+ # resp.capacity_reservations[0].target_dpus #=> Integer
2072
+ # resp.capacity_reservations[0].allocated_dpus #=> Integer
2073
+ # resp.capacity_reservations[0].last_allocation.status #=> String, one of "PENDING", "SUCCEEDED", "FAILED"
2074
+ # resp.capacity_reservations[0].last_allocation.status_message #=> String
2075
+ # resp.capacity_reservations[0].last_allocation.request_time #=> Time
2076
+ # resp.capacity_reservations[0].last_allocation.request_completion_time #=> Time
2077
+ # resp.capacity_reservations[0].last_successful_allocation_time #=> Time
2078
+ # resp.capacity_reservations[0].creation_time #=> Time
2079
+ #
2080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCapacityReservations AWS API Documentation
2081
+ #
2082
+ # @overload list_capacity_reservations(params = {})
2083
+ # @param [Hash] params ({})
2084
+ def list_capacity_reservations(params = {}, options = {})
2085
+ req = build_request(:list_capacity_reservations, params)
2086
+ req.send_request(options)
2087
+ end
2088
+
1913
2089
  # Lists the data catalogs in the current Amazon Web Services account.
1914
2090
  #
1915
2091
  # <note markdown="1"> In the Athena console, data catalogs are listed as "data sources" on
@@ -2520,8 +2696,7 @@ module Aws::Athena
2520
2696
  req.send_request(options)
2521
2697
  end
2522
2698
 
2523
- # Lists the tags associated with an Athena workgroup or data catalog
2524
- # resource.
2699
+ # Lists the tags associated with an Athena resource.
2525
2700
  #
2526
2701
  # @option params [required, String] :resource_arn
2527
2702
  # Lists the tags for the resource with the specified ARN.
@@ -2611,6 +2786,40 @@ module Aws::Athena
2611
2786
  req.send_request(options)
2612
2787
  end
2613
2788
 
2789
+ # Puts a new capacity assignment configuration for a specified capacity
2790
+ # reservation. If a capacity assignment configuration already exists for
2791
+ # the capacity reservation, replaces the existing capacity assignment
2792
+ # configuration.
2793
+ #
2794
+ # @option params [required, String] :capacity_reservation_name
2795
+ # The name of the capacity reservation to put a capacity assignment
2796
+ # configuration for.
2797
+ #
2798
+ # @option params [required, Array<Types::CapacityAssignment>] :capacity_assignments
2799
+ # The list of assignments for the capacity assignment configuration.
2800
+ #
2801
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2802
+ #
2803
+ # @example Request syntax with placeholder values
2804
+ #
2805
+ # resp = client.put_capacity_assignment_configuration({
2806
+ # capacity_reservation_name: "CapacityReservationName", # required
2807
+ # capacity_assignments: [ # required
2808
+ # {
2809
+ # work_group_names: ["WorkGroupName"],
2810
+ # },
2811
+ # ],
2812
+ # })
2813
+ #
2814
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/PutCapacityAssignmentConfiguration AWS API Documentation
2815
+ #
2816
+ # @overload put_capacity_assignment_configuration(params = {})
2817
+ # @param [Hash] params ({})
2818
+ def put_capacity_assignment_configuration(params = {}, options = {})
2819
+ req = build_request(:put_capacity_assignment_configuration, params)
2820
+ req.send_request(options)
2821
+ end
2822
+
2614
2823
  # Submits calculations for execution within a session. You can supply
2615
2824
  # the code to run as an inline code block within the request.
2616
2825
  #
@@ -2917,30 +3126,29 @@ module Aws::Athena
2917
3126
  end
2918
3127
 
2919
3128
  # Adds one or more tags to an Athena resource. A tag is a label that you
2920
- # assign to a resource. In Athena, a resource can be a workgroup or data
2921
- # catalog. Each tag consists of a key and an optional value, both of
2922
- # which you define. For example, you can use tags to categorize Athena
2923
- # workgroups or data catalogs by purpose, owner, or environment. Use a
2924
- # consistent set of tag keys to make it easier to search and filter
2925
- # workgroups or data catalogs in your account. For best practices, see
2926
- # [Tagging Best Practices][1]. Tag keys can be from 1 to 128 UTF-8
2927
- # Unicode characters, and tag values can be from 0 to 256 UTF-8 Unicode
2928
- # characters. Tags can use letters and numbers representable in UTF-8,
2929
- # and the following characters: + - = . \_ : / @. Tag keys and values
2930
- # are case-sensitive. Tag keys must be unique per resource. If you
2931
- # specify more than one tag, separate them by commas.
3129
+ # assign to a resource. Each tag consists of a key and an optional
3130
+ # value, both of which you define. For example, you can use tags to
3131
+ # categorize Athena workgroups, data catalogs, or capacity reservations
3132
+ # by purpose, owner, or environment. Use a consistent set of tag keys to
3133
+ # make it easier to search and filter the resources in your account. For
3134
+ # best practices, see [Tagging Best Practices][1]. Tag keys can be from
3135
+ # 1 to 128 UTF-8 Unicode characters, and tag values can be from 0 to 256
3136
+ # UTF-8 Unicode characters. Tags can use letters and numbers
3137
+ # representable in UTF-8, and the following characters: + - = . \_ : /
3138
+ # @. Tag keys and values are case-sensitive. Tag keys must be unique per
3139
+ # resource. If you specify more than one tag, separate them by commas.
2932
3140
  #
2933
3141
  #
2934
3142
  #
2935
3143
  # [1]: https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html
2936
3144
  #
2937
3145
  # @option params [required, String] :resource_arn
2938
- # Specifies the ARN of the Athena resource (workgroup or data catalog)
2939
- # to which tags are to be added.
3146
+ # Specifies the ARN of the Athena resource to which tags are to be
3147
+ # added.
2940
3148
  #
2941
3149
  # @option params [required, Array<Types::Tag>] :tags
2942
3150
  # A collection of one or more tags, separated by commas, to be added to
2943
- # an Athena workgroup or data catalog resource.
3151
+ # an Athena resource.
2944
3152
  #
2945
3153
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2946
3154
  #
@@ -2997,7 +3205,7 @@ module Aws::Athena
2997
3205
  req.send_request(options)
2998
3206
  end
2999
3207
 
3000
- # Removes one or more tags from a data catalog or workgroup resource.
3208
+ # Removes one or more tags from an Athena resource.
3001
3209
  #
3002
3210
  # @option params [required, String] :resource_arn
3003
3211
  # Specifies the ARN of the resource from which tags are to be removed.
@@ -3024,6 +3232,33 @@ module Aws::Athena
3024
3232
  req.send_request(options)
3025
3233
  end
3026
3234
 
3235
+ # Updates the number of requested data processing units for the capacity
3236
+ # reservation with the specified name.
3237
+ #
3238
+ # @option params [required, Integer] :target_dpus
3239
+ # The new number of requested data processing units.
3240
+ #
3241
+ # @option params [required, String] :name
3242
+ # The name of the capacity reservation.
3243
+ #
3244
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3245
+ #
3246
+ # @example Request syntax with placeholder values
3247
+ #
3248
+ # resp = client.update_capacity_reservation({
3249
+ # target_dpus: 1, # required
3250
+ # name: "CapacityReservationName", # required
3251
+ # })
3252
+ #
3253
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateCapacityReservation AWS API Documentation
3254
+ #
3255
+ # @overload update_capacity_reservation(params = {})
3256
+ # @param [Hash] params ({})
3257
+ def update_capacity_reservation(params = {}, options = {})
3258
+ req = build_request(:update_capacity_reservation, params)
3259
+ req.send_request(options)
3260
+ end
3261
+
3027
3262
  # Updates the data catalog that has the specified name.
3028
3263
  #
3029
3264
  # @option params [required, String] :name
@@ -3322,7 +3557,7 @@ module Aws::Athena
3322
3557
  params: params,
3323
3558
  config: config)
3324
3559
  context[:gem_name] = 'aws-sdk-athena'
3325
- context[:gem_version] = '1.64.0'
3560
+ context[:gem_version] = '1.65.0'
3326
3561
  Seahorse::Client::Request.new(handlers, context)
3327
3562
  end
3328
3563
 
@@ -15,6 +15,7 @@ module Aws::Athena
15
15
 
16
16
  AclConfiguration = Shapes::StructureShape.new(name: 'AclConfiguration')
17
17
  Age = Shapes::IntegerShape.new(name: 'Age')
18
+ AllocatedDpusInteger = Shapes::IntegerShape.new(name: 'AllocatedDpusInteger')
18
19
  AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
19
20
  ApplicationDPUSizes = Shapes::StructureShape.new(name: 'ApplicationDPUSizes')
20
21
  ApplicationDPUSizesList = Shapes::ListShape.new(name: 'ApplicationDPUSizesList')
@@ -39,6 +40,17 @@ module Aws::Athena
39
40
  CalculationStatus = Shapes::StructureShape.new(name: 'CalculationStatus')
40
41
  CalculationSummary = Shapes::StructureShape.new(name: 'CalculationSummary')
41
42
  CalculationsList = Shapes::ListShape.new(name: 'CalculationsList')
43
+ CancelCapacityReservationInput = Shapes::StructureShape.new(name: 'CancelCapacityReservationInput')
44
+ CancelCapacityReservationOutput = Shapes::StructureShape.new(name: 'CancelCapacityReservationOutput')
45
+ CapacityAllocation = Shapes::StructureShape.new(name: 'CapacityAllocation')
46
+ CapacityAllocationStatus = Shapes::StringShape.new(name: 'CapacityAllocationStatus')
47
+ CapacityAssignment = Shapes::StructureShape.new(name: 'CapacityAssignment')
48
+ CapacityAssignmentConfiguration = Shapes::StructureShape.new(name: 'CapacityAssignmentConfiguration')
49
+ CapacityAssignmentsList = Shapes::ListShape.new(name: 'CapacityAssignmentsList')
50
+ CapacityReservation = Shapes::StructureShape.new(name: 'CapacityReservation')
51
+ CapacityReservationName = Shapes::StringShape.new(name: 'CapacityReservationName')
52
+ CapacityReservationStatus = Shapes::StringShape.new(name: 'CapacityReservationStatus')
53
+ CapacityReservationsList = Shapes::ListShape.new(name: 'CapacityReservationsList')
42
54
  CatalogNameString = Shapes::StringShape.new(name: 'CatalogNameString')
43
55
  ClientRequestToken = Shapes::StringShape.new(name: 'ClientRequestToken')
44
56
  CodeBlock = Shapes::StringShape.new(name: 'CodeBlock')
@@ -49,6 +61,8 @@ module Aws::Athena
49
61
  ColumnNullable = Shapes::StringShape.new(name: 'ColumnNullable')
50
62
  CommentString = Shapes::StringShape.new(name: 'CommentString')
51
63
  CoordinatorDpuSize = Shapes::IntegerShape.new(name: 'CoordinatorDpuSize')
64
+ CreateCapacityReservationInput = Shapes::StructureShape.new(name: 'CreateCapacityReservationInput')
65
+ CreateCapacityReservationOutput = Shapes::StructureShape.new(name: 'CreateCapacityReservationOutput')
52
66
  CreateDataCatalogInput = Shapes::StructureShape.new(name: 'CreateDataCatalogInput')
53
67
  CreateDataCatalogOutput = Shapes::StructureShape.new(name: 'CreateDataCatalogOutput')
54
68
  CreateNamedQueryInput = Shapes::StructureShape.new(name: 'CreateNamedQueryInput')
@@ -109,6 +123,10 @@ module Aws::Athena
109
123
  GetCalculationExecutionResponse = Shapes::StructureShape.new(name: 'GetCalculationExecutionResponse')
110
124
  GetCalculationExecutionStatusRequest = Shapes::StructureShape.new(name: 'GetCalculationExecutionStatusRequest')
111
125
  GetCalculationExecutionStatusResponse = Shapes::StructureShape.new(name: 'GetCalculationExecutionStatusResponse')
126
+ GetCapacityAssignmentConfigurationInput = Shapes::StructureShape.new(name: 'GetCapacityAssignmentConfigurationInput')
127
+ GetCapacityAssignmentConfigurationOutput = Shapes::StructureShape.new(name: 'GetCapacityAssignmentConfigurationOutput')
128
+ GetCapacityReservationInput = Shapes::StructureShape.new(name: 'GetCapacityReservationInput')
129
+ GetCapacityReservationOutput = Shapes::StructureShape.new(name: 'GetCapacityReservationOutput')
112
130
  GetDataCatalogInput = Shapes::StructureShape.new(name: 'GetDataCatalogInput')
113
131
  GetDataCatalogOutput = Shapes::StructureShape.new(name: 'GetDataCatalogOutput')
114
132
  GetDatabaseInput = Shapes::StructureShape.new(name: 'GetDatabaseInput')
@@ -145,6 +163,8 @@ module Aws::Athena
145
163
  ListApplicationDPUSizesOutput = Shapes::StructureShape.new(name: 'ListApplicationDPUSizesOutput')
146
164
  ListCalculationExecutionsRequest = Shapes::StructureShape.new(name: 'ListCalculationExecutionsRequest')
147
165
  ListCalculationExecutionsResponse = Shapes::StructureShape.new(name: 'ListCalculationExecutionsResponse')
166
+ ListCapacityReservationsInput = Shapes::StructureShape.new(name: 'ListCapacityReservationsInput')
167
+ ListCapacityReservationsOutput = Shapes::StructureShape.new(name: 'ListCapacityReservationsOutput')
148
168
  ListDataCatalogsInput = Shapes::StructureShape.new(name: 'ListDataCatalogsInput')
149
169
  ListDataCatalogsOutput = Shapes::StructureShape.new(name: 'ListDataCatalogsOutput')
150
170
  ListDatabasesInput = Shapes::StructureShape.new(name: 'ListDatabasesInput')
@@ -174,6 +194,7 @@ module Aws::Athena
174
194
  Long = Shapes::IntegerShape.new(name: 'Long')
175
195
  MaxApplicationDPUSizesCount = Shapes::IntegerShape.new(name: 'MaxApplicationDPUSizesCount')
176
196
  MaxCalculationsCount = Shapes::IntegerShape.new(name: 'MaxCalculationsCount')
197
+ MaxCapacityReservationsCount = Shapes::IntegerShape.new(name: 'MaxCapacityReservationsCount')
177
198
  MaxConcurrentDpus = Shapes::IntegerShape.new(name: 'MaxConcurrentDpus')
178
199
  MaxDataCatalogsCount = Shapes::IntegerShape.new(name: 'MaxDataCatalogsCount')
179
200
  MaxDatabasesCount = Shapes::IntegerShape.new(name: 'MaxDatabasesCount')
@@ -210,6 +231,8 @@ module Aws::Athena
210
231
  PreparedStatementNameList = Shapes::ListShape.new(name: 'PreparedStatementNameList')
211
232
  PreparedStatementSummary = Shapes::StructureShape.new(name: 'PreparedStatementSummary')
212
233
  PreparedStatementsList = Shapes::ListShape.new(name: 'PreparedStatementsList')
234
+ PutCapacityAssignmentConfigurationInput = Shapes::StructureShape.new(name: 'PutCapacityAssignmentConfigurationInput')
235
+ PutCapacityAssignmentConfigurationOutput = Shapes::StructureShape.new(name: 'PutCapacityAssignmentConfigurationOutput')
213
236
  QueryExecution = Shapes::StructureShape.new(name: 'QueryExecution')
214
237
  QueryExecutionContext = Shapes::StructureShape.new(name: 'QueryExecutionContext')
215
238
  QueryExecutionId = Shapes::StringShape.new(name: 'QueryExecutionId')
@@ -275,6 +298,7 @@ module Aws::Athena
275
298
  TagResourceInput = Shapes::StructureShape.new(name: 'TagResourceInput')
276
299
  TagResourceOutput = Shapes::StructureShape.new(name: 'TagResourceOutput')
277
300
  TagValue = Shapes::StringShape.new(name: 'TagValue')
301
+ TargetDpusInteger = Shapes::IntegerShape.new(name: 'TargetDpusInteger')
278
302
  TerminateSessionRequest = Shapes::StructureShape.new(name: 'TerminateSessionRequest')
279
303
  TerminateSessionResponse = Shapes::StructureShape.new(name: 'TerminateSessionResponse')
280
304
  ThrottleReason = Shapes::StringShape.new(name: 'ThrottleReason')
@@ -290,6 +314,8 @@ module Aws::Athena
290
314
  UnprocessedQueryExecutionIdList = Shapes::ListShape.new(name: 'UnprocessedQueryExecutionIdList')
291
315
  UntagResourceInput = Shapes::StructureShape.new(name: 'UntagResourceInput')
292
316
  UntagResourceOutput = Shapes::StructureShape.new(name: 'UntagResourceOutput')
317
+ UpdateCapacityReservationInput = Shapes::StructureShape.new(name: 'UpdateCapacityReservationInput')
318
+ UpdateCapacityReservationOutput = Shapes::StructureShape.new(name: 'UpdateCapacityReservationOutput')
293
319
  UpdateDataCatalogInput = Shapes::StructureShape.new(name: 'UpdateDataCatalogInput')
294
320
  UpdateDataCatalogOutput = Shapes::StructureShape.new(name: 'UpdateDataCatalogOutput')
295
321
  UpdateNamedQueryInput = Shapes::StructureShape.new(name: 'UpdateNamedQueryInput')
@@ -307,6 +333,7 @@ module Aws::Athena
307
333
  WorkGroupConfigurationUpdates = Shapes::StructureShape.new(name: 'WorkGroupConfigurationUpdates')
308
334
  WorkGroupDescriptionString = Shapes::StringShape.new(name: 'WorkGroupDescriptionString')
309
335
  WorkGroupName = Shapes::StringShape.new(name: 'WorkGroupName')
336
+ WorkGroupNamesList = Shapes::ListShape.new(name: 'WorkGroupNamesList')
310
337
  WorkGroupState = Shapes::StringShape.new(name: 'WorkGroupState')
311
338
  WorkGroupSummary = Shapes::StructureShape.new(name: 'WorkGroupSummary')
312
339
  WorkGroupsList = Shapes::ListShape.new(name: 'WorkGroupsList')
@@ -376,6 +403,37 @@ module Aws::Athena
376
403
 
377
404
  CalculationsList.member = Shapes::ShapeRef.new(shape: CalculationSummary)
378
405
 
406
+ CancelCapacityReservationInput.add_member(:name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "Name"))
407
+ CancelCapacityReservationInput.struct_class = Types::CancelCapacityReservationInput
408
+
409
+ CancelCapacityReservationOutput.struct_class = Types::CancelCapacityReservationOutput
410
+
411
+ CapacityAllocation.add_member(:status, Shapes::ShapeRef.new(shape: CapacityAllocationStatus, required: true, location_name: "Status"))
412
+ CapacityAllocation.add_member(:status_message, Shapes::ShapeRef.new(shape: String, location_name: "StatusMessage"))
413
+ CapacityAllocation.add_member(:request_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "RequestTime"))
414
+ CapacityAllocation.add_member(:request_completion_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "RequestCompletionTime"))
415
+ CapacityAllocation.struct_class = Types::CapacityAllocation
416
+
417
+ CapacityAssignment.add_member(:work_group_names, Shapes::ShapeRef.new(shape: WorkGroupNamesList, location_name: "WorkGroupNames"))
418
+ CapacityAssignment.struct_class = Types::CapacityAssignment
419
+
420
+ CapacityAssignmentConfiguration.add_member(:capacity_reservation_name, Shapes::ShapeRef.new(shape: CapacityReservationName, location_name: "CapacityReservationName"))
421
+ CapacityAssignmentConfiguration.add_member(:capacity_assignments, Shapes::ShapeRef.new(shape: CapacityAssignmentsList, location_name: "CapacityAssignments"))
422
+ CapacityAssignmentConfiguration.struct_class = Types::CapacityAssignmentConfiguration
423
+
424
+ CapacityAssignmentsList.member = Shapes::ShapeRef.new(shape: CapacityAssignment)
425
+
426
+ CapacityReservation.add_member(:name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "Name"))
427
+ CapacityReservation.add_member(:status, Shapes::ShapeRef.new(shape: CapacityReservationStatus, required: true, location_name: "Status"))
428
+ CapacityReservation.add_member(:target_dpus, Shapes::ShapeRef.new(shape: TargetDpusInteger, required: true, location_name: "TargetDpus"))
429
+ CapacityReservation.add_member(:allocated_dpus, Shapes::ShapeRef.new(shape: AllocatedDpusInteger, required: true, location_name: "AllocatedDpus"))
430
+ CapacityReservation.add_member(:last_allocation, Shapes::ShapeRef.new(shape: CapacityAllocation, location_name: "LastAllocation"))
431
+ CapacityReservation.add_member(:last_successful_allocation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastSuccessfulAllocationTime"))
432
+ CapacityReservation.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "CreationTime"))
433
+ CapacityReservation.struct_class = Types::CapacityReservation
434
+
435
+ CapacityReservationsList.member = Shapes::ShapeRef.new(shape: CapacityReservation)
436
+
379
437
  Column.add_member(:name, Shapes::ShapeRef.new(shape: NameString, required: true, location_name: "Name"))
380
438
  Column.add_member(:type, Shapes::ShapeRef.new(shape: TypeString, location_name: "Type"))
381
439
  Column.add_member(:comment, Shapes::ShapeRef.new(shape: CommentString, location_name: "Comment"))
@@ -397,6 +455,13 @@ module Aws::Athena
397
455
 
398
456
  ColumnList.member = Shapes::ShapeRef.new(shape: Column)
399
457
 
458
+ CreateCapacityReservationInput.add_member(:target_dpus, Shapes::ShapeRef.new(shape: TargetDpusInteger, required: true, location_name: "TargetDpus"))
459
+ CreateCapacityReservationInput.add_member(:name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "Name"))
460
+ CreateCapacityReservationInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
461
+ CreateCapacityReservationInput.struct_class = Types::CreateCapacityReservationInput
462
+
463
+ CreateCapacityReservationOutput.struct_class = Types::CreateCapacityReservationOutput
464
+
400
465
  CreateDataCatalogInput.add_member(:name, Shapes::ShapeRef.new(shape: CatalogNameString, required: true, location_name: "Name"))
401
466
  CreateDataCatalogInput.add_member(:type, Shapes::ShapeRef.new(shape: DataCatalogType, required: true, location_name: "Type"))
402
467
  CreateDataCatalogInput.add_member(:description, Shapes::ShapeRef.new(shape: DescriptionString, location_name: "Description"))
@@ -564,6 +629,18 @@ module Aws::Athena
564
629
  GetCalculationExecutionStatusResponse.add_member(:statistics, Shapes::ShapeRef.new(shape: CalculationStatistics, location_name: "Statistics"))
565
630
  GetCalculationExecutionStatusResponse.struct_class = Types::GetCalculationExecutionStatusResponse
566
631
 
632
+ GetCapacityAssignmentConfigurationInput.add_member(:capacity_reservation_name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "CapacityReservationName"))
633
+ GetCapacityAssignmentConfigurationInput.struct_class = Types::GetCapacityAssignmentConfigurationInput
634
+
635
+ GetCapacityAssignmentConfigurationOutput.add_member(:capacity_assignment_configuration, Shapes::ShapeRef.new(shape: CapacityAssignmentConfiguration, required: true, location_name: "CapacityAssignmentConfiguration"))
636
+ GetCapacityAssignmentConfigurationOutput.struct_class = Types::GetCapacityAssignmentConfigurationOutput
637
+
638
+ GetCapacityReservationInput.add_member(:name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "Name"))
639
+ GetCapacityReservationInput.struct_class = Types::GetCapacityReservationInput
640
+
641
+ GetCapacityReservationOutput.add_member(:capacity_reservation, Shapes::ShapeRef.new(shape: CapacityReservation, required: true, location_name: "CapacityReservation"))
642
+ GetCapacityReservationOutput.struct_class = Types::GetCapacityReservationOutput
643
+
567
644
  GetDataCatalogInput.add_member(:name, Shapes::ShapeRef.new(shape: CatalogNameString, required: true, location_name: "Name"))
568
645
  GetDataCatalogInput.struct_class = Types::GetDataCatalogInput
569
646
 
@@ -688,6 +765,14 @@ module Aws::Athena
688
765
  ListCalculationExecutionsResponse.add_member(:calculations, Shapes::ShapeRef.new(shape: CalculationsList, location_name: "Calculations"))
689
766
  ListCalculationExecutionsResponse.struct_class = Types::ListCalculationExecutionsResponse
690
767
 
768
+ ListCapacityReservationsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
769
+ ListCapacityReservationsInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxCapacityReservationsCount, location_name: "MaxResults"))
770
+ ListCapacityReservationsInput.struct_class = Types::ListCapacityReservationsInput
771
+
772
+ ListCapacityReservationsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
773
+ ListCapacityReservationsOutput.add_member(:capacity_reservations, Shapes::ShapeRef.new(shape: CapacityReservationsList, required: true, location_name: "CapacityReservations"))
774
+ ListCapacityReservationsOutput.struct_class = Types::ListCapacityReservationsOutput
775
+
691
776
  ListDataCatalogsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
692
777
  ListDataCatalogsInput.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxDataCatalogsCount, location_name: "MaxResults"))
693
778
  ListDataCatalogsInput.struct_class = Types::ListDataCatalogsInput
@@ -859,6 +944,12 @@ module Aws::Athena
859
944
 
860
945
  PreparedStatementsList.member = Shapes::ShapeRef.new(shape: PreparedStatementSummary)
861
946
 
947
+ PutCapacityAssignmentConfigurationInput.add_member(:capacity_reservation_name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "CapacityReservationName"))
948
+ PutCapacityAssignmentConfigurationInput.add_member(:capacity_assignments, Shapes::ShapeRef.new(shape: CapacityAssignmentsList, required: true, location_name: "CapacityAssignments"))
949
+ PutCapacityAssignmentConfigurationInput.struct_class = Types::PutCapacityAssignmentConfigurationInput
950
+
951
+ PutCapacityAssignmentConfigurationOutput.struct_class = Types::PutCapacityAssignmentConfigurationOutput
952
+
862
953
  QueryExecution.add_member(:query_execution_id, Shapes::ShapeRef.new(shape: QueryExecutionId, location_name: "QueryExecutionId"))
863
954
  QueryExecution.add_member(:query, Shapes::ShapeRef.new(shape: QueryString, location_name: "Query"))
864
955
  QueryExecution.add_member(:statement_type, Shapes::ShapeRef.new(shape: StatementType, location_name: "StatementType"))
@@ -1120,6 +1211,12 @@ module Aws::Athena
1120
1211
 
1121
1212
  UntagResourceOutput.struct_class = Types::UntagResourceOutput
1122
1213
 
1214
+ UpdateCapacityReservationInput.add_member(:target_dpus, Shapes::ShapeRef.new(shape: TargetDpusInteger, required: true, location_name: "TargetDpus"))
1215
+ UpdateCapacityReservationInput.add_member(:name, Shapes::ShapeRef.new(shape: CapacityReservationName, required: true, location_name: "Name"))
1216
+ UpdateCapacityReservationInput.struct_class = Types::UpdateCapacityReservationInput
1217
+
1218
+ UpdateCapacityReservationOutput.struct_class = Types::UpdateCapacityReservationOutput
1219
+
1123
1220
  UpdateDataCatalogInput.add_member(:name, Shapes::ShapeRef.new(shape: CatalogNameString, required: true, location_name: "Name"))
1124
1221
  UpdateDataCatalogInput.add_member(:type, Shapes::ShapeRef.new(shape: DataCatalogType, required: true, location_name: "Type"))
1125
1222
  UpdateDataCatalogInput.add_member(:description, Shapes::ShapeRef.new(shape: DescriptionString, location_name: "Description"))
@@ -1201,6 +1298,8 @@ module Aws::Athena
1201
1298
  WorkGroupConfigurationUpdates.add_member(:enable_minimum_encryption_configuration, Shapes::ShapeRef.new(shape: BoxedBoolean, location_name: "EnableMinimumEncryptionConfiguration"))
1202
1299
  WorkGroupConfigurationUpdates.struct_class = Types::WorkGroupConfigurationUpdates
1203
1300
 
1301
+ WorkGroupNamesList.member = Shapes::ShapeRef.new(shape: WorkGroupName)
1302
+
1204
1303
  WorkGroupSummary.add_member(:name, Shapes::ShapeRef.new(shape: WorkGroupName, location_name: "Name"))
1205
1304
  WorkGroupSummary.add_member(:state, Shapes::ShapeRef.new(shape: WorkGroupState, location_name: "State"))
1206
1305
  WorkGroupSummary.add_member(:description, Shapes::ShapeRef.new(shape: WorkGroupDescriptionString, location_name: "Description"))
@@ -1260,6 +1359,26 @@ module Aws::Athena
1260
1359
  o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1261
1360
  end)
1262
1361
 
1362
+ api.add_operation(:cancel_capacity_reservation, Seahorse::Model::Operation.new.tap do |o|
1363
+ o.name = "CancelCapacityReservation"
1364
+ o.http_method = "POST"
1365
+ o.http_request_uri = "/"
1366
+ o.input = Shapes::ShapeRef.new(shape: CancelCapacityReservationInput)
1367
+ o.output = Shapes::ShapeRef.new(shape: CancelCapacityReservationOutput)
1368
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1369
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1370
+ end)
1371
+
1372
+ api.add_operation(:create_capacity_reservation, Seahorse::Model::Operation.new.tap do |o|
1373
+ o.name = "CreateCapacityReservation"
1374
+ o.http_method = "POST"
1375
+ o.http_request_uri = "/"
1376
+ o.input = Shapes::ShapeRef.new(shape: CreateCapacityReservationInput)
1377
+ o.output = Shapes::ShapeRef.new(shape: CreateCapacityReservationOutput)
1378
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1379
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1380
+ end)
1381
+
1263
1382
  api.add_operation(:create_data_catalog, Seahorse::Model::Operation.new.tap do |o|
1264
1383
  o.name = "CreateDataCatalog"
1265
1384
  o.http_method = "POST"
@@ -1418,6 +1537,26 @@ module Aws::Athena
1418
1537
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1419
1538
  end)
1420
1539
 
1540
+ api.add_operation(:get_capacity_assignment_configuration, Seahorse::Model::Operation.new.tap do |o|
1541
+ o.name = "GetCapacityAssignmentConfiguration"
1542
+ o.http_method = "POST"
1543
+ o.http_request_uri = "/"
1544
+ o.input = Shapes::ShapeRef.new(shape: GetCapacityAssignmentConfigurationInput)
1545
+ o.output = Shapes::ShapeRef.new(shape: GetCapacityAssignmentConfigurationOutput)
1546
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1547
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1548
+ end)
1549
+
1550
+ api.add_operation(:get_capacity_reservation, Seahorse::Model::Operation.new.tap do |o|
1551
+ o.name = "GetCapacityReservation"
1552
+ o.http_method = "POST"
1553
+ o.http_request_uri = "/"
1554
+ o.input = Shapes::ShapeRef.new(shape: GetCapacityReservationInput)
1555
+ o.output = Shapes::ShapeRef.new(shape: GetCapacityReservationOutput)
1556
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1557
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1558
+ end)
1559
+
1421
1560
  api.add_operation(:get_data_catalog, Seahorse::Model::Operation.new.tap do |o|
1422
1561
  o.name = "GetDataCatalog"
1423
1562
  o.http_method = "POST"
@@ -1596,6 +1735,22 @@ module Aws::Athena
1596
1735
  )
1597
1736
  end)
1598
1737
 
1738
+ api.add_operation(:list_capacity_reservations, Seahorse::Model::Operation.new.tap do |o|
1739
+ o.name = "ListCapacityReservations"
1740
+ o.http_method = "POST"
1741
+ o.http_request_uri = "/"
1742
+ o.input = Shapes::ShapeRef.new(shape: ListCapacityReservationsInput)
1743
+ o.output = Shapes::ShapeRef.new(shape: ListCapacityReservationsOutput)
1744
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1745
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1746
+ o[:pager] = Aws::Pager.new(
1747
+ limit_key: "max_results",
1748
+ tokens: {
1749
+ "next_token" => "next_token"
1750
+ }
1751
+ )
1752
+ end)
1753
+
1599
1754
  api.add_operation(:list_data_catalogs, Seahorse::Model::Operation.new.tap do |o|
1600
1755
  o.name = "ListDataCatalogs"
1601
1756
  o.http_method = "POST"
@@ -1799,6 +1954,16 @@ module Aws::Athena
1799
1954
  )
1800
1955
  end)
1801
1956
 
1957
+ api.add_operation(:put_capacity_assignment_configuration, Seahorse::Model::Operation.new.tap do |o|
1958
+ o.name = "PutCapacityAssignmentConfiguration"
1959
+ o.http_method = "POST"
1960
+ o.http_request_uri = "/"
1961
+ o.input = Shapes::ShapeRef.new(shape: PutCapacityAssignmentConfigurationInput)
1962
+ o.output = Shapes::ShapeRef.new(shape: PutCapacityAssignmentConfigurationOutput)
1963
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1964
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
1965
+ end)
1966
+
1802
1967
  api.add_operation(:start_calculation_execution, Seahorse::Model::Operation.new.tap do |o|
1803
1968
  o.name = "StartCalculationExecution"
1804
1969
  o.http_method = "POST"
@@ -1888,6 +2053,16 @@ module Aws::Athena
1888
2053
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
1889
2054
  end)
1890
2055
 
2056
+ api.add_operation(:update_capacity_reservation, Seahorse::Model::Operation.new.tap do |o|
2057
+ o.name = "UpdateCapacityReservation"
2058
+ o.http_method = "POST"
2059
+ o.http_request_uri = "/"
2060
+ o.input = Shapes::ShapeRef.new(shape: UpdateCapacityReservationInput)
2061
+ o.output = Shapes::ShapeRef.new(shape: UpdateCapacityReservationOutput)
2062
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2063
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
2064
+ end)
2065
+
1891
2066
  api.add_operation(:update_data_catalog, Seahorse::Model::Operation.new.tap do |o|
1892
2067
  o.name = "UpdateDataCatalog"
1893
2068
  o.http_method = "POST"
@@ -53,6 +53,34 @@ module Aws::Athena
53
53
  end
54
54
  end
55
55
 
56
+ class CancelCapacityReservation
57
+ def self.build(context)
58
+ unless context.config.regional_endpoint
59
+ endpoint = context.config.endpoint.to_s
60
+ end
61
+ Aws::Athena::EndpointParameters.new(
62
+ region: context.config.region,
63
+ use_dual_stack: context.config.use_dualstack_endpoint,
64
+ use_fips: context.config.use_fips_endpoint,
65
+ endpoint: endpoint,
66
+ )
67
+ end
68
+ end
69
+
70
+ class CreateCapacityReservation
71
+ def self.build(context)
72
+ unless context.config.regional_endpoint
73
+ endpoint = context.config.endpoint.to_s
74
+ end
75
+ Aws::Athena::EndpointParameters.new(
76
+ region: context.config.region,
77
+ use_dual_stack: context.config.use_dualstack_endpoint,
78
+ use_fips: context.config.use_fips_endpoint,
79
+ endpoint: endpoint,
80
+ )
81
+ end
82
+ end
83
+
56
84
  class CreateDataCatalog
57
85
  def self.build(context)
58
86
  unless context.config.regional_endpoint
@@ -263,6 +291,34 @@ module Aws::Athena
263
291
  end
264
292
  end
265
293
 
294
+ class GetCapacityAssignmentConfiguration
295
+ def self.build(context)
296
+ unless context.config.regional_endpoint
297
+ endpoint = context.config.endpoint.to_s
298
+ end
299
+ Aws::Athena::EndpointParameters.new(
300
+ region: context.config.region,
301
+ use_dual_stack: context.config.use_dualstack_endpoint,
302
+ use_fips: context.config.use_fips_endpoint,
303
+ endpoint: endpoint,
304
+ )
305
+ end
306
+ end
307
+
308
+ class GetCapacityReservation
309
+ def self.build(context)
310
+ unless context.config.regional_endpoint
311
+ endpoint = context.config.endpoint.to_s
312
+ end
313
+ Aws::Athena::EndpointParameters.new(
314
+ region: context.config.region,
315
+ use_dual_stack: context.config.use_dualstack_endpoint,
316
+ use_fips: context.config.use_fips_endpoint,
317
+ endpoint: endpoint,
318
+ )
319
+ end
320
+ end
321
+
266
322
  class GetDataCatalog
267
323
  def self.build(context)
268
324
  unless context.config.regional_endpoint
@@ -473,6 +529,20 @@ module Aws::Athena
473
529
  end
474
530
  end
475
531
 
532
+ class ListCapacityReservations
533
+ def self.build(context)
534
+ unless context.config.regional_endpoint
535
+ endpoint = context.config.endpoint.to_s
536
+ end
537
+ Aws::Athena::EndpointParameters.new(
538
+ region: context.config.region,
539
+ use_dual_stack: context.config.use_dualstack_endpoint,
540
+ use_fips: context.config.use_fips_endpoint,
541
+ endpoint: endpoint,
542
+ )
543
+ end
544
+ end
545
+
476
546
  class ListDataCatalogs
477
547
  def self.build(context)
478
548
  unless context.config.regional_endpoint
@@ -655,6 +725,20 @@ module Aws::Athena
655
725
  end
656
726
  end
657
727
 
728
+ class PutCapacityAssignmentConfiguration
729
+ def self.build(context)
730
+ unless context.config.regional_endpoint
731
+ endpoint = context.config.endpoint.to_s
732
+ end
733
+ Aws::Athena::EndpointParameters.new(
734
+ region: context.config.region,
735
+ use_dual_stack: context.config.use_dualstack_endpoint,
736
+ use_fips: context.config.use_fips_endpoint,
737
+ endpoint: endpoint,
738
+ )
739
+ end
740
+ end
741
+
658
742
  class StartCalculationExecution
659
743
  def self.build(context)
660
744
  unless context.config.regional_endpoint
@@ -767,6 +851,20 @@ module Aws::Athena
767
851
  end
768
852
  end
769
853
 
854
+ class UpdateCapacityReservation
855
+ def self.build(context)
856
+ unless context.config.regional_endpoint
857
+ endpoint = context.config.endpoint.to_s
858
+ end
859
+ Aws::Athena::EndpointParameters.new(
860
+ region: context.config.region,
861
+ use_dual_stack: context.config.use_dualstack_endpoint,
862
+ use_fips: context.config.use_fips_endpoint,
863
+ endpoint: endpoint,
864
+ )
865
+ end
866
+ end
867
+
770
868
  class UpdateDataCatalog
771
869
  def self.build(context)
772
870
  unless context.config.regional_endpoint
@@ -62,6 +62,10 @@ module Aws::Athena
62
62
  Aws::Athena::Endpoints::BatchGetPreparedStatement.build(context)
63
63
  when :batch_get_query_execution
64
64
  Aws::Athena::Endpoints::BatchGetQueryExecution.build(context)
65
+ when :cancel_capacity_reservation
66
+ Aws::Athena::Endpoints::CancelCapacityReservation.build(context)
67
+ when :create_capacity_reservation
68
+ Aws::Athena::Endpoints::CreateCapacityReservation.build(context)
65
69
  when :create_data_catalog
66
70
  Aws::Athena::Endpoints::CreateDataCatalog.build(context)
67
71
  when :create_named_query
@@ -92,6 +96,10 @@ module Aws::Athena
92
96
  Aws::Athena::Endpoints::GetCalculationExecutionCode.build(context)
93
97
  when :get_calculation_execution_status
94
98
  Aws::Athena::Endpoints::GetCalculationExecutionStatus.build(context)
99
+ when :get_capacity_assignment_configuration
100
+ Aws::Athena::Endpoints::GetCapacityAssignmentConfiguration.build(context)
101
+ when :get_capacity_reservation
102
+ Aws::Athena::Endpoints::GetCapacityReservation.build(context)
95
103
  when :get_data_catalog
96
104
  Aws::Athena::Endpoints::GetDataCatalog.build(context)
97
105
  when :get_database
@@ -122,6 +130,8 @@ module Aws::Athena
122
130
  Aws::Athena::Endpoints::ListApplicationDPUSizes.build(context)
123
131
  when :list_calculation_executions
124
132
  Aws::Athena::Endpoints::ListCalculationExecutions.build(context)
133
+ when :list_capacity_reservations
134
+ Aws::Athena::Endpoints::ListCapacityReservations.build(context)
125
135
  when :list_data_catalogs
126
136
  Aws::Athena::Endpoints::ListDataCatalogs.build(context)
127
137
  when :list_databases
@@ -148,6 +158,8 @@ module Aws::Athena
148
158
  Aws::Athena::Endpoints::ListTagsForResource.build(context)
149
159
  when :list_work_groups
150
160
  Aws::Athena::Endpoints::ListWorkGroups.build(context)
161
+ when :put_capacity_assignment_configuration
162
+ Aws::Athena::Endpoints::PutCapacityAssignmentConfiguration.build(context)
151
163
  when :start_calculation_execution
152
164
  Aws::Athena::Endpoints::StartCalculationExecution.build(context)
153
165
  when :start_query_execution
@@ -164,6 +176,8 @@ module Aws::Athena
164
176
  Aws::Athena::Endpoints::TerminateSession.build(context)
165
177
  when :untag_resource
166
178
  Aws::Athena::Endpoints::UntagResource.build(context)
179
+ when :update_capacity_reservation
180
+ Aws::Athena::Endpoints::UpdateCapacityReservation.build(context)
167
181
  when :update_data_catalog
168
182
  Aws::Athena::Endpoints::UpdateDataCatalog.build(context)
169
183
  when :update_named_query
@@ -344,6 +344,142 @@ module Aws::Athena
344
344
  include Aws::Structure
345
345
  end
346
346
 
347
+ # @!attribute [rw] name
348
+ # The name of the capacity reservation to cancel.
349
+ # @return [String]
350
+ #
351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CancelCapacityReservationInput AWS API Documentation
352
+ #
353
+ class CancelCapacityReservationInput < Struct.new(
354
+ :name)
355
+ SENSITIVE = []
356
+ include Aws::Structure
357
+ end
358
+
359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CancelCapacityReservationOutput AWS API Documentation
360
+ #
361
+ class CancelCapacityReservationOutput < Aws::EmptyStructure; end
362
+
363
+ # Contains the submission time of a single allocation request for a
364
+ # capacity reservation and the most recent status of the attempted
365
+ # allocation.
366
+ #
367
+ # @!attribute [rw] status
368
+ # The status of the capacity allocation.
369
+ # @return [String]
370
+ #
371
+ # @!attribute [rw] status_message
372
+ # The status message of the capacity allocation.
373
+ # @return [String]
374
+ #
375
+ # @!attribute [rw] request_time
376
+ # The time when the capacity allocation was requested.
377
+ # @return [Time]
378
+ #
379
+ # @!attribute [rw] request_completion_time
380
+ # The time when the capacity allocation request was completed.
381
+ # @return [Time]
382
+ #
383
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CapacityAllocation AWS API Documentation
384
+ #
385
+ class CapacityAllocation < Struct.new(
386
+ :status,
387
+ :status_message,
388
+ :request_time,
389
+ :request_completion_time)
390
+ SENSITIVE = []
391
+ include Aws::Structure
392
+ end
393
+
394
+ # A mapping between one or more workgroups and a capacity reservation.
395
+ #
396
+ # @!attribute [rw] work_group_names
397
+ # The list of workgroup names for the capacity assignment.
398
+ # @return [Array<String>]
399
+ #
400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CapacityAssignment AWS API Documentation
401
+ #
402
+ class CapacityAssignment < Struct.new(
403
+ :work_group_names)
404
+ SENSITIVE = []
405
+ include Aws::Structure
406
+ end
407
+
408
+ # Assigns Athena workgroups (and hence their queries) to capacity
409
+ # reservations. A capacity reservation can have only one capacity
410
+ # assignment configuration, but the capacity assignment configuration
411
+ # can be made up of multiple individual assignments. Each assignment
412
+ # specifies how Athena queries can consume capacity from the capacity
413
+ # reservation that their workgroup is mapped to.
414
+ #
415
+ # @!attribute [rw] capacity_reservation_name
416
+ # The name of the reservation that the capacity assignment
417
+ # configuration is for.
418
+ # @return [String]
419
+ #
420
+ # @!attribute [rw] capacity_assignments
421
+ # The list of assignments that make up the capacity assignment
422
+ # configuration.
423
+ # @return [Array<Types::CapacityAssignment>]
424
+ #
425
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CapacityAssignmentConfiguration AWS API Documentation
426
+ #
427
+ class CapacityAssignmentConfiguration < Struct.new(
428
+ :capacity_reservation_name,
429
+ :capacity_assignments)
430
+ SENSITIVE = []
431
+ include Aws::Structure
432
+ end
433
+
434
+ # A reservation for a specified number of data processing units (DPUs).
435
+ # When a reservation is initially created, it has no DPUs. Athena
436
+ # allocates DPUs until the allocated amount equals the requested amount.
437
+ #
438
+ # @!attribute [rw] name
439
+ # The name of the capacity reservation.
440
+ # @return [String]
441
+ #
442
+ # @!attribute [rw] status
443
+ # The status of the capacity reservation.
444
+ # @return [String]
445
+ #
446
+ # @!attribute [rw] target_dpus
447
+ # The number of data processing units requested.
448
+ # @return [Integer]
449
+ #
450
+ # @!attribute [rw] allocated_dpus
451
+ # The number of data processing units currently allocated.
452
+ # @return [Integer]
453
+ #
454
+ # @!attribute [rw] last_allocation
455
+ # Contains the submission time of a single allocation request for a
456
+ # capacity reservation and the most recent status of the attempted
457
+ # allocation.
458
+ # @return [Types::CapacityAllocation]
459
+ #
460
+ # @!attribute [rw] last_successful_allocation_time
461
+ # The time of the most recent capacity allocation that succeeded.
462
+ # @return [Time]
463
+ #
464
+ # @!attribute [rw] creation_time
465
+ # The time in UTC epoch millis when the capacity reservation was
466
+ # created.
467
+ # @return [Time]
468
+ #
469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CapacityReservation AWS API Documentation
470
+ #
471
+ class CapacityReservation < Struct.new(
472
+ :name,
473
+ :status,
474
+ :target_dpus,
475
+ :allocated_dpus,
476
+ :last_allocation,
477
+ :last_successful_allocation_time,
478
+ :creation_time)
479
+ SENSITIVE = []
480
+ include Aws::Structure
481
+ end
482
+
347
483
  # Contains metadata for a column in a table.
348
484
  #
349
485
  # @!attribute [rw] name
@@ -429,6 +565,32 @@ module Aws::Athena
429
565
  include Aws::Structure
430
566
  end
431
567
 
568
+ # @!attribute [rw] target_dpus
569
+ # The number of requested data processing units.
570
+ # @return [Integer]
571
+ #
572
+ # @!attribute [rw] name
573
+ # The name of the capacity reservation to create.
574
+ # @return [String]
575
+ #
576
+ # @!attribute [rw] tags
577
+ # The tags for the capacity reservation.
578
+ # @return [Array<Types::Tag>]
579
+ #
580
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateCapacityReservationInput AWS API Documentation
581
+ #
582
+ class CreateCapacityReservationInput < Struct.new(
583
+ :target_dpus,
584
+ :name,
585
+ :tags)
586
+ SENSITIVE = []
587
+ include Aws::Structure
588
+ end
589
+
590
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateCapacityReservationOutput AWS API Documentation
591
+ #
592
+ class CreateCapacityReservationOutput < Aws::EmptyStructure; end
593
+
432
594
  # @!attribute [rw] name
433
595
  # The name of the data catalog to create. The catalog name must be
434
596
  # unique for the Amazon Web Services account and can use a maximum of
@@ -1011,7 +1173,7 @@ module Aws::Athena
1011
1173
  # @!attribute [rw] coordinator_dpu_size
1012
1174
  # The number of DPUs to use for the coordinator. A coordinator is a
1013
1175
  # special executor that orchestrates processing work and manages other
1014
- # executors in a notebook session.
1176
+ # executors in a notebook session. The default is 1.
1015
1177
  # @return [Integer]
1016
1178
  #
1017
1179
  # @!attribute [rw] max_concurrent_dpus
@@ -1021,7 +1183,7 @@ module Aws::Athena
1021
1183
  # @!attribute [rw] default_executor_dpu_size
1022
1184
  # The default number of DPUs to use for executors. An executor is the
1023
1185
  # smallest unit of compute that a notebook session can request from
1024
- # Athena.
1186
+ # Athena. The default is 1.
1025
1187
  # @return [Integer]
1026
1188
  #
1027
1189
  # @!attribute [rw] additional_configs
@@ -1282,6 +1444,56 @@ module Aws::Athena
1282
1444
  include Aws::Structure
1283
1445
  end
1284
1446
 
1447
+ # @!attribute [rw] capacity_reservation_name
1448
+ # The name of the capacity reservation to retrieve the capacity
1449
+ # assignment configuration for.
1450
+ # @return [String]
1451
+ #
1452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityAssignmentConfigurationInput AWS API Documentation
1453
+ #
1454
+ class GetCapacityAssignmentConfigurationInput < Struct.new(
1455
+ :capacity_reservation_name)
1456
+ SENSITIVE = []
1457
+ include Aws::Structure
1458
+ end
1459
+
1460
+ # @!attribute [rw] capacity_assignment_configuration
1461
+ # The requested capacity assignment configuration for the specified
1462
+ # capacity reservation.
1463
+ # @return [Types::CapacityAssignmentConfiguration]
1464
+ #
1465
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityAssignmentConfigurationOutput AWS API Documentation
1466
+ #
1467
+ class GetCapacityAssignmentConfigurationOutput < Struct.new(
1468
+ :capacity_assignment_configuration)
1469
+ SENSITIVE = []
1470
+ include Aws::Structure
1471
+ end
1472
+
1473
+ # @!attribute [rw] name
1474
+ # The name of the capacity reservation.
1475
+ # @return [String]
1476
+ #
1477
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityReservationInput AWS API Documentation
1478
+ #
1479
+ class GetCapacityReservationInput < Struct.new(
1480
+ :name)
1481
+ SENSITIVE = []
1482
+ include Aws::Structure
1483
+ end
1484
+
1485
+ # @!attribute [rw] capacity_reservation
1486
+ # The requested capacity reservation structure.
1487
+ # @return [Types::CapacityReservation]
1488
+ #
1489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityReservationOutput AWS API Documentation
1490
+ #
1491
+ class GetCapacityReservationOutput < Struct.new(
1492
+ :capacity_reservation)
1493
+ SENSITIVE = []
1494
+ include Aws::Structure
1495
+ end
1496
+
1285
1497
  # @!attribute [rw] name
1286
1498
  # The name of the data catalog to return.
1287
1499
  # @return [String]
@@ -1860,6 +2072,44 @@ module Aws::Athena
1860
2072
  include Aws::Structure
1861
2073
  end
1862
2074
 
2075
+ # @!attribute [rw] next_token
2076
+ # A token generated by the Athena service that specifies where to
2077
+ # continue pagination if a previous request was truncated.
2078
+ # @return [String]
2079
+ #
2080
+ # @!attribute [rw] max_results
2081
+ # Specifies the maximum number of results to return.
2082
+ # @return [Integer]
2083
+ #
2084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCapacityReservationsInput AWS API Documentation
2085
+ #
2086
+ class ListCapacityReservationsInput < Struct.new(
2087
+ :next_token,
2088
+ :max_results)
2089
+ SENSITIVE = []
2090
+ include Aws::Structure
2091
+ end
2092
+
2093
+ # @!attribute [rw] next_token
2094
+ # A token generated by the Athena service that specifies where to
2095
+ # continue pagination if a previous request was truncated. To obtain
2096
+ # the next set of pages, pass in the NextToken from the response
2097
+ # object of the previous page call.
2098
+ # @return [String]
2099
+ #
2100
+ # @!attribute [rw] capacity_reservations
2101
+ # The capacity reservations for the current account.
2102
+ # @return [Array<Types::CapacityReservation>]
2103
+ #
2104
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCapacityReservationsOutput AWS API Documentation
2105
+ #
2106
+ class ListCapacityReservationsOutput < Struct.new(
2107
+ :next_token,
2108
+ :capacity_reservations)
2109
+ SENSITIVE = []
2110
+ include Aws::Structure
2111
+ end
2112
+
1863
2113
  # @!attribute [rw] next_token
1864
2114
  # A token generated by the Athena service that specifies where to
1865
2115
  # continue pagination if a previous request was truncated. To obtain
@@ -2666,6 +2916,28 @@ module Aws::Athena
2666
2916
  include Aws::Structure
2667
2917
  end
2668
2918
 
2919
+ # @!attribute [rw] capacity_reservation_name
2920
+ # The name of the capacity reservation to put a capacity assignment
2921
+ # configuration for.
2922
+ # @return [String]
2923
+ #
2924
+ # @!attribute [rw] capacity_assignments
2925
+ # The list of assignments for the capacity assignment configuration.
2926
+ # @return [Array<Types::CapacityAssignment>]
2927
+ #
2928
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/PutCapacityAssignmentConfigurationInput AWS API Documentation
2929
+ #
2930
+ class PutCapacityAssignmentConfigurationInput < Struct.new(
2931
+ :capacity_reservation_name,
2932
+ :capacity_assignments)
2933
+ SENSITIVE = []
2934
+ include Aws::Structure
2935
+ end
2936
+
2937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/PutCapacityAssignmentConfigurationOutput AWS API Documentation
2938
+ #
2939
+ class PutCapacityAssignmentConfigurationOutput < Aws::EmptyStructure; end
2940
+
2669
2941
  # Information about a single instance of a query execution.
2670
2942
  #
2671
2943
  # @!attribute [rw] query_execution_id
@@ -3913,14 +4185,14 @@ module Aws::Athena
3913
4185
  include Aws::Structure
3914
4186
  end
3915
4187
 
3916
- # A label that you assign to a resource. In Athena, a resource can be a
3917
- # workgroup or data catalog. Each tag consists of a key and an optional
3918
- # value, both of which you define. For example, you can use tags to
3919
- # categorize Athena workgroups or data catalogs by purpose, owner, or
3920
- # environment. Use a consistent set of tag keys to make it easier to
3921
- # search and filter workgroups or data catalogs in your account. For
3922
- # best practices, see [Tagging Best Practices][1]. Tag keys can be from
3923
- # 1 to 128 UTF-8 Unicode characters, and tag values can be from 0 to 256
4188
+ # A label that you assign to a resource. Athena resources include
4189
+ # workgroups, data catalogs, and capacity reservations. Each tag
4190
+ # consists of a key and an optional value, both of which you define. For
4191
+ # example, you can use tags to categorize Athena resources by purpose,
4192
+ # owner, or environment. Use a consistent set of tag keys to make it
4193
+ # easier to search and filter the resources in your account. For best
4194
+ # practices, see [Tagging Best Practices][1]. Tag keys can be from 1 to
4195
+ # 128 UTF-8 Unicode characters, and tag values can be from 0 to 256
3924
4196
  # UTF-8 Unicode characters. Tags can use letters and numbers
3925
4197
  # representable in UTF-8, and the following characters: + - = . \_ : /
3926
4198
  # @. Tag keys and values are case-sensitive. Tag keys must be unique per
@@ -3954,13 +4226,13 @@ module Aws::Athena
3954
4226
  end
3955
4227
 
3956
4228
  # @!attribute [rw] resource_arn
3957
- # Specifies the ARN of the Athena resource (workgroup or data catalog)
3958
- # to which tags are to be added.
4229
+ # Specifies the ARN of the Athena resource to which tags are to be
4230
+ # added.
3959
4231
  # @return [String]
3960
4232
  #
3961
4233
  # @!attribute [rw] tags
3962
4234
  # A collection of one or more tags, separated by commas, to be added
3963
- # to an Athena workgroup or data catalog resource.
4235
+ # to an Athena resource.
3964
4236
  # @return [Array<Types::Tag>]
3965
4237
  #
3966
4238
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/TagResourceInput AWS API Documentation
@@ -4148,6 +4420,27 @@ module Aws::Athena
4148
4420
  #
4149
4421
  class UntagResourceOutput < Aws::EmptyStructure; end
4150
4422
 
4423
+ # @!attribute [rw] target_dpus
4424
+ # The new number of requested data processing units.
4425
+ # @return [Integer]
4426
+ #
4427
+ # @!attribute [rw] name
4428
+ # The name of the capacity reservation.
4429
+ # @return [String]
4430
+ #
4431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateCapacityReservationInput AWS API Documentation
4432
+ #
4433
+ class UpdateCapacityReservationInput < Struct.new(
4434
+ :target_dpus,
4435
+ :name)
4436
+ SENSITIVE = []
4437
+ include Aws::Structure
4438
+ end
4439
+
4440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateCapacityReservationOutput AWS API Documentation
4441
+ #
4442
+ class UpdateCapacityReservationOutput < Aws::EmptyStructure; end
4443
+
4151
4444
  # @!attribute [rw] name
4152
4445
  # The name of the data catalog to update. The catalog name must be
4153
4446
  # unique for the Amazon Web Services account and can use a maximum of
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-athena/customizations'
52
52
  # @!group service
53
53
  module Aws::Athena
54
54
 
55
- GEM_VERSION = '1.64.0'
55
+ GEM_VERSION = '1.65.0'
56
56
 
57
57
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-athena
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.64.0
4
+ version: 1.65.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-30 00:00:00.000000000 Z
11
+ date: 2023-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core