aws-sdk-athena 1.44.0 → 1.75.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.
@@ -10,12 +10,107 @@
10
10
  module Aws::Athena
11
11
  module Types
12
12
 
13
- # @note When making an API call, you may pass BatchGetNamedQueryInput
14
- # data as a hash:
13
+ # Indicates that an Amazon S3 canned ACL should be set to control
14
+ # ownership of stored query results. When Athena stores query results in
15
+ # Amazon S3, the canned ACL is set with the `x-amz-acl` request header.
16
+ # For more information about S3 Object Ownership, see [Object Ownership
17
+ # settings][1] in the *Amazon S3 User Guide*.
15
18
  #
16
- # {
17
- # named_query_ids: ["NamedQueryId"], # required
18
- # }
19
+ #
20
+ #
21
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html#object-ownership-overview
22
+ #
23
+ # @!attribute [rw] s3_acl_option
24
+ # The Amazon S3 canned ACL that Athena should specify when storing
25
+ # query results. Currently the only supported canned ACL is
26
+ # `BUCKET_OWNER_FULL_CONTROL`. If a query runs in a workgroup and the
27
+ # workgroup overrides client-side settings, then the Amazon S3 canned
28
+ # ACL specified in the workgroup's settings is used for all queries
29
+ # that run in the workgroup. For more information about Amazon S3
30
+ # canned ACLs, see [Canned ACL][1] in the *Amazon S3 User Guide*.
31
+ #
32
+ #
33
+ #
34
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl
35
+ # @return [String]
36
+ #
37
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/AclConfiguration AWS API Documentation
38
+ #
39
+ class AclConfiguration < Struct.new(
40
+ :s3_acl_option)
41
+ SENSITIVE = []
42
+ include Aws::Structure
43
+ end
44
+
45
+ # Contains the application runtime IDs and their supported DPU sizes.
46
+ #
47
+ # @!attribute [rw] application_runtime_id
48
+ # The name of the supported application runtime (for example, `Athena
49
+ # notebook version 1`).
50
+ # @return [String]
51
+ #
52
+ # @!attribute [rw] supported_dpu_sizes
53
+ # A list of the supported DPU sizes that the application runtime
54
+ # supports.
55
+ # @return [Array<Integer>]
56
+ #
57
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ApplicationDPUSizes AWS API Documentation
58
+ #
59
+ class ApplicationDPUSizes < Struct.new(
60
+ :application_runtime_id,
61
+ :supported_dpu_sizes)
62
+ SENSITIVE = []
63
+ include Aws::Structure
64
+ end
65
+
66
+ # Provides information about an Athena query error. The `AthenaError`
67
+ # feature provides standardized error information to help you understand
68
+ # failed queries and take steps after a query failure occurs.
69
+ # `AthenaError` includes an `ErrorCategory` field that specifies whether
70
+ # the cause of the failed query is due to system error, user error, or
71
+ # other error.
72
+ #
73
+ # @!attribute [rw] error_category
74
+ # An integer value that specifies the category of a query failure
75
+ # error. The following list shows the category for each integer value.
76
+ #
77
+ # **1** - System
78
+ #
79
+ # **2** - User
80
+ #
81
+ # **3** - Other
82
+ # @return [Integer]
83
+ #
84
+ # @!attribute [rw] error_type
85
+ # An integer value that provides specific information about an Athena
86
+ # query error. For the meaning of specific values, see the [Error Type
87
+ # Reference][1] in the *Amazon Athena User Guide*.
88
+ #
89
+ #
90
+ #
91
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/error-reference.html#error-reference-error-type-reference
92
+ # @return [Integer]
93
+ #
94
+ # @!attribute [rw] retryable
95
+ # True if the query might succeed if resubmitted.
96
+ # @return [Boolean]
97
+ #
98
+ # @!attribute [rw] error_message
99
+ # Contains a short description of the error that occurred.
100
+ # @return [String]
101
+ #
102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/AthenaError AWS API Documentation
103
+ #
104
+ class AthenaError < Struct.new(
105
+ :error_category,
106
+ :error_type,
107
+ :retryable,
108
+ :error_message)
109
+ SENSITIVE = []
110
+ include Aws::Structure
111
+ end
112
+
113
+ # Contains an array of named query IDs.
19
114
  #
20
115
  # @!attribute [rw] named_query_ids
21
116
  # An array of query IDs.
@@ -46,12 +141,42 @@ module Aws::Athena
46
141
  include Aws::Structure
47
142
  end
48
143
 
49
- # @note When making an API call, you may pass BatchGetQueryExecutionInput
50
- # data as a hash:
144
+ # @!attribute [rw] prepared_statement_names
145
+ # A list of prepared statement names to return.
146
+ # @return [Array<String>]
147
+ #
148
+ # @!attribute [rw] work_group
149
+ # The name of the workgroup to which the prepared statements belong.
150
+ # @return [String]
151
+ #
152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetPreparedStatementInput AWS API Documentation
153
+ #
154
+ class BatchGetPreparedStatementInput < Struct.new(
155
+ :prepared_statement_names,
156
+ :work_group)
157
+ SENSITIVE = []
158
+ include Aws::Structure
159
+ end
160
+
161
+ # @!attribute [rw] prepared_statements
162
+ # The list of prepared statements returned.
163
+ # @return [Array<Types::PreparedStatement>]
51
164
  #
52
- # {
53
- # query_execution_ids: ["QueryExecutionId"], # required
54
- # }
165
+ # @!attribute [rw] unprocessed_prepared_statement_names
166
+ # A list of one or more prepared statements that were requested but
167
+ # could not be returned.
168
+ # @return [Array<Types::UnprocessedPreparedStatementName>]
169
+ #
170
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/BatchGetPreparedStatementOutput AWS API Documentation
171
+ #
172
+ class BatchGetPreparedStatementOutput < Struct.new(
173
+ :prepared_statements,
174
+ :unprocessed_prepared_statement_names)
175
+ SENSITIVE = []
176
+ include Aws::Structure
177
+ end
178
+
179
+ # Contains an array of query execution IDs.
55
180
  #
56
181
  # @!attribute [rw] query_execution_ids
57
182
  # An array of query execution IDs.
@@ -82,6 +207,279 @@ module Aws::Athena
82
207
  include Aws::Structure
83
208
  end
84
209
 
210
+ # Contains configuration information for the calculation.
211
+ #
212
+ # @!attribute [rw] code_block
213
+ # A string that contains the code for the calculation.
214
+ # @return [String]
215
+ #
216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CalculationConfiguration AWS API Documentation
217
+ #
218
+ class CalculationConfiguration < Struct.new(
219
+ :code_block)
220
+ SENSITIVE = []
221
+ include Aws::Structure
222
+ end
223
+
224
+ # Contains information about an application-specific calculation result.
225
+ #
226
+ # @!attribute [rw] std_out_s3_uri
227
+ # The Amazon S3 location of the `stdout` file for the calculation.
228
+ # @return [String]
229
+ #
230
+ # @!attribute [rw] std_error_s3_uri
231
+ # The Amazon S3 location of the `stderr` error messages file for the
232
+ # calculation.
233
+ # @return [String]
234
+ #
235
+ # @!attribute [rw] result_s3_uri
236
+ # The Amazon S3 location of the folder for the calculation results.
237
+ # @return [String]
238
+ #
239
+ # @!attribute [rw] result_type
240
+ # The data format of the calculation result.
241
+ # @return [String]
242
+ #
243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CalculationResult AWS API Documentation
244
+ #
245
+ class CalculationResult < Struct.new(
246
+ :std_out_s3_uri,
247
+ :std_error_s3_uri,
248
+ :result_s3_uri,
249
+ :result_type)
250
+ SENSITIVE = []
251
+ include Aws::Structure
252
+ end
253
+
254
+ # Contains statistics for a notebook calculation.
255
+ #
256
+ # @!attribute [rw] dpu_execution_in_millis
257
+ # The data processing unit execution time in milliseconds for the
258
+ # calculation.
259
+ # @return [Integer]
260
+ #
261
+ # @!attribute [rw] progress
262
+ # The progress of the calculation.
263
+ # @return [String]
264
+ #
265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CalculationStatistics AWS API Documentation
266
+ #
267
+ class CalculationStatistics < Struct.new(
268
+ :dpu_execution_in_millis,
269
+ :progress)
270
+ SENSITIVE = []
271
+ include Aws::Structure
272
+ end
273
+
274
+ # Contains information about the status of a notebook calculation.
275
+ #
276
+ # @!attribute [rw] submission_date_time
277
+ # The date and time the calculation was submitted for processing.
278
+ # @return [Time]
279
+ #
280
+ # @!attribute [rw] completion_date_time
281
+ # The date and time the calculation completed processing.
282
+ # @return [Time]
283
+ #
284
+ # @!attribute [rw] state
285
+ # The state of the calculation execution. A description of each state
286
+ # follows.
287
+ #
288
+ # `CREATING` - The calculation is in the process of being created.
289
+ #
290
+ # `CREATED` - The calculation has been created and is ready to run.
291
+ #
292
+ # `QUEUED` - The calculation has been queued for processing.
293
+ #
294
+ # `RUNNING` - The calculation is running.
295
+ #
296
+ # `CANCELING` - A request to cancel the calculation has been received
297
+ # and the system is working to stop it.
298
+ #
299
+ # `CANCELED` - The calculation is no longer running as the result of a
300
+ # cancel request.
301
+ #
302
+ # `COMPLETED` - The calculation has completed without error.
303
+ #
304
+ # `FAILED` - The calculation failed and is no longer running.
305
+ # @return [String]
306
+ #
307
+ # @!attribute [rw] state_change_reason
308
+ # The reason for the calculation state change (for example, the
309
+ # calculation was canceled because the session was terminated).
310
+ # @return [String]
311
+ #
312
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CalculationStatus AWS API Documentation
313
+ #
314
+ class CalculationStatus < Struct.new(
315
+ :submission_date_time,
316
+ :completion_date_time,
317
+ :state,
318
+ :state_change_reason)
319
+ SENSITIVE = []
320
+ include Aws::Structure
321
+ end
322
+
323
+ # Summary information for a notebook calculation.
324
+ #
325
+ # @!attribute [rw] calculation_execution_id
326
+ # The calculation execution UUID.
327
+ # @return [String]
328
+ #
329
+ # @!attribute [rw] description
330
+ # A description of the calculation.
331
+ # @return [String]
332
+ #
333
+ # @!attribute [rw] status
334
+ # Contains information about the status of the calculation.
335
+ # @return [Types::CalculationStatus]
336
+ #
337
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CalculationSummary AWS API Documentation
338
+ #
339
+ class CalculationSummary < Struct.new(
340
+ :calculation_execution_id,
341
+ :description,
342
+ :status)
343
+ SENSITIVE = []
344
+ include Aws::Structure
345
+ end
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
+
85
483
  # Contains metadata for a column in a table.
86
484
  #
87
485
  # @!attribute [rw] name
@@ -167,28 +565,38 @@ module Aws::Athena
167
565
  include Aws::Structure
168
566
  end
169
567
 
170
- # @note When making an API call, you may pass CreateDataCatalogInput
171
- # data as a hash:
568
+ # @!attribute [rw] target_dpus
569
+ # The number of requested data processing units.
570
+ # @return [Integer]
172
571
  #
173
- # {
174
- # name: "CatalogNameString", # required
175
- # type: "LAMBDA", # required, accepts LAMBDA, GLUE, HIVE
176
- # description: "DescriptionString",
177
- # parameters: {
178
- # "KeyString" => "ParametersMapValue",
179
- # },
180
- # tags: [
181
- # {
182
- # key: "TagKey",
183
- # value: "TagValue",
184
- # },
185
- # ],
186
- # }
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
187
591
  #
592
+ class CreateCapacityReservationOutput < Aws::EmptyStructure; end
593
+
188
594
  # @!attribute [rw] name
189
595
  # The name of the data catalog to create. The catalog name must be
190
596
  # unique for the Amazon Web Services account and can use a maximum of
191
- # 128 alphanumeric, underscore, at sign, or hyphen characters.
597
+ # 127 alphanumeric, underscore, at sign, or hyphen characters. The
598
+ # remainder of the length constraint of 256 is reserved for use by
599
+ # Athena.
192
600
  # @return [String]
193
601
  #
194
602
  # @!attribute [rw] type
@@ -267,18 +675,6 @@ module Aws::Athena
267
675
  #
268
676
  class CreateDataCatalogOutput < Aws::EmptyStructure; end
269
677
 
270
- # @note When making an API call, you may pass CreateNamedQueryInput
271
- # data as a hash:
272
- #
273
- # {
274
- # name: "NameString", # required
275
- # description: "DescriptionString",
276
- # database: "DatabaseString", # required
277
- # query_string: "QueryString", # required
278
- # client_request_token: "IdempotencyToken",
279
- # work_group: "WorkGroupName",
280
- # }
281
- #
282
678
  # @!attribute [rw] name
283
679
  # The query name.
284
680
  # @return [String]
@@ -341,16 +737,49 @@ module Aws::Athena
341
737
  include Aws::Structure
342
738
  end
343
739
 
344
- # @note When making an API call, you may pass CreatePreparedStatementInput
345
- # data as a hash:
740
+ # @!attribute [rw] work_group
741
+ # The name of the Spark enabled workgroup in which the notebook will
742
+ # be created.
743
+ # @return [String]
744
+ #
745
+ # @!attribute [rw] name
746
+ # The name of the `ipynb` file to be created in the Spark workgroup,
747
+ # without the `.ipynb` extension.
748
+ # @return [String]
749
+ #
750
+ # @!attribute [rw] client_request_token
751
+ # A unique case-sensitive string used to ensure the request to create
752
+ # the notebook is idempotent (executes only once).
753
+ #
754
+ # This token is listed as not required because Amazon Web Services
755
+ # SDKs (for example the Amazon Web Services SDK for Java)
756
+ # auto-generate the token for you. If you are not using the Amazon Web
757
+ # Services SDK or the Amazon Web Services CLI, you must provide this
758
+ # token or the action will fail.
759
+ # @return [String]
760
+ #
761
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateNotebookInput AWS API Documentation
762
+ #
763
+ class CreateNotebookInput < Struct.new(
764
+ :work_group,
765
+ :name,
766
+ :client_request_token)
767
+ SENSITIVE = []
768
+ include Aws::Structure
769
+ end
770
+
771
+ # @!attribute [rw] notebook_id
772
+ # A unique identifier for the notebook.
773
+ # @return [String]
346
774
  #
347
- # {
348
- # statement_name: "StatementName", # required
349
- # work_group: "WorkGroupName", # required
350
- # query_statement: "QueryString", # required
351
- # description: "DescriptionString",
352
- # }
775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreateNotebookOutput AWS API Documentation
353
776
  #
777
+ class CreateNotebookOutput < Struct.new(
778
+ :notebook_id)
779
+ SENSITIVE = []
780
+ include Aws::Structure
781
+ end
782
+
354
783
  # @!attribute [rw] statement_name
355
784
  # The name of the prepared statement.
356
785
  # @return [String]
@@ -382,50 +811,56 @@ module Aws::Athena
382
811
  #
383
812
  class CreatePreparedStatementOutput < Aws::EmptyStructure; end
384
813
 
385
- # @note When making an API call, you may pass CreateWorkGroupInput
386
- # data as a hash:
387
- #
388
- # {
389
- # name: "WorkGroupName", # required
390
- # configuration: {
391
- # result_configuration: {
392
- # output_location: "String",
393
- # encryption_configuration: {
394
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
395
- # kms_key: "String",
396
- # },
397
- # },
398
- # enforce_work_group_configuration: false,
399
- # publish_cloud_watch_metrics_enabled: false,
400
- # bytes_scanned_cutoff_per_query: 1,
401
- # requester_pays_enabled: false,
402
- # engine_version: {
403
- # selected_engine_version: "NameString",
404
- # effective_engine_version: "NameString",
405
- # },
406
- # },
407
- # description: "WorkGroupDescriptionString",
408
- # tags: [
409
- # {
410
- # key: "TagKey",
411
- # value: "TagValue",
412
- # },
413
- # ],
414
- # }
415
- #
416
- # @!attribute [rw] name
417
- # The workgroup name.
814
+ # @!attribute [rw] session_id
815
+ # The session ID.
418
816
  # @return [String]
419
817
  #
420
- # @!attribute [rw] configuration
421
- # The configuration for the workgroup, which includes the location in
422
- # Amazon S3 where query results are stored, the encryption
423
- # configuration, if any, used for encrypting query results, whether
424
- # the Amazon CloudWatch Metrics are enabled for the workgroup, the
425
- # limit for the amount of bytes scanned (cutoff) per query, if it is
426
- # specified, and whether workgroup's settings (specified with
427
- # `EnforceWorkGroupConfiguration`) in the `WorkGroupConfiguration`
428
- # override client-side settings. See
818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreatePresignedNotebookUrlRequest AWS API Documentation
819
+ #
820
+ class CreatePresignedNotebookUrlRequest < Struct.new(
821
+ :session_id)
822
+ SENSITIVE = []
823
+ include Aws::Structure
824
+ end
825
+
826
+ # @!attribute [rw] notebook_url
827
+ # The URL of the notebook. The URL includes the authentication token
828
+ # and notebook file name and points directly to the opened notebook.
829
+ # @return [String]
830
+ #
831
+ # @!attribute [rw] auth_token
832
+ # The authentication token for the notebook.
833
+ # @return [String]
834
+ #
835
+ # @!attribute [rw] auth_token_expiration_time
836
+ # The UTC epoch time when the authentication token expires.
837
+ # @return [Integer]
838
+ #
839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CreatePresignedNotebookUrlResponse AWS API Documentation
840
+ #
841
+ class CreatePresignedNotebookUrlResponse < Struct.new(
842
+ :notebook_url,
843
+ :auth_token,
844
+ :auth_token_expiration_time)
845
+ SENSITIVE = []
846
+ include Aws::Structure
847
+ end
848
+
849
+ # @!attribute [rw] name
850
+ # The workgroup name.
851
+ # @return [String]
852
+ #
853
+ # @!attribute [rw] configuration
854
+ # Contains configuration information for creating an Athena SQL
855
+ # workgroup or Spark enabled Athena workgroup. Athena SQL workgroup
856
+ # configuration includes the location in Amazon S3 where query and
857
+ # calculation results are stored, the encryption configuration, if
858
+ # any, used for encrypting query results, whether the Amazon
859
+ # CloudWatch Metrics are enabled for the workgroup, the limit for the
860
+ # amount of bytes scanned (cutoff) per query, if it is specified, and
861
+ # whether workgroup's settings (specified with
862
+ # `EnforceWorkGroupConfiguration`) in the `WorkGroupConfiguration`
863
+ # override client-side settings. See
429
864
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration.
430
865
  # @return [Types::WorkGroupConfiguration]
431
866
  #
@@ -453,13 +888,36 @@ module Aws::Athena
453
888
  #
454
889
  class CreateWorkGroupOutput < Aws::EmptyStructure; end
455
890
 
891
+ # Specifies the KMS key that is used to encrypt the user's data stores
892
+ # in Athena. This setting does not apply to Athena SQL workgroups.
893
+ #
894
+ # @!attribute [rw] kms_key
895
+ # The KMS key that is used to encrypt the user's data stores in
896
+ # Athena.
897
+ # @return [String]
898
+ #
899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/CustomerContentEncryptionConfiguration AWS API Documentation
900
+ #
901
+ class CustomerContentEncryptionConfiguration < Struct.new(
902
+ :kms_key)
903
+ SENSITIVE = []
904
+ include Aws::Structure
905
+ end
906
+
456
907
  # Contains information about a data catalog in an Amazon Web Services
457
908
  # account.
458
909
  #
910
+ # <note markdown="1"> In the Athena console, data catalogs are listed as "data sources" on
911
+ # the **Data sources** page under the **Data source name** column.
912
+ #
913
+ # </note>
914
+ #
459
915
  # @!attribute [rw] name
460
916
  # The name of the data catalog. The catalog name must be unique for
461
- # the Amazon Web Services account and can use a maximum of 128
462
- # alphanumeric, underscore, at sign, or hyphen characters.
917
+ # the Amazon Web Services account and can use a maximum of 127
918
+ # alphanumeric, underscore, at sign, or hyphen characters. The
919
+ # remainder of the length constraint of 256 is reserved for use by
920
+ # Athena.
463
921
  # @return [String]
464
922
  #
465
923
  # @!attribute [rw] description
@@ -527,7 +985,11 @@ module Aws::Athena
527
985
  # and type.
528
986
  #
529
987
  # @!attribute [rw] catalog_name
530
- # The name of the data catalog.
988
+ # The name of the data catalog. The catalog name is unique for the
989
+ # Amazon Web Services account and can use a maximum of 127
990
+ # alphanumeric, underscore, at sign, or hyphen characters. The
991
+ # remainder of the length constraint of 256 is reserved for use by
992
+ # Athena.
531
993
  # @return [String]
532
994
  #
533
995
  # @!attribute [rw] type
@@ -581,13 +1043,22 @@ module Aws::Athena
581
1043
  include Aws::Structure
582
1044
  end
583
1045
 
584
- # @note When making an API call, you may pass DeleteDataCatalogInput
585
- # data as a hash:
1046
+ # @!attribute [rw] name
1047
+ # The name of the capacity reservation to delete.
1048
+ # @return [String]
1049
+ #
1050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteCapacityReservationInput AWS API Documentation
586
1051
  #
587
- # {
588
- # name: "CatalogNameString", # required
589
- # }
1052
+ class DeleteCapacityReservationInput < Struct.new(
1053
+ :name)
1054
+ SENSITIVE = []
1055
+ include Aws::Structure
1056
+ end
1057
+
1058
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteCapacityReservationOutput AWS API Documentation
590
1059
  #
1060
+ class DeleteCapacityReservationOutput < Aws::EmptyStructure; end
1061
+
591
1062
  # @!attribute [rw] name
592
1063
  # The name of the data catalog to delete.
593
1064
  # @return [String]
@@ -604,13 +1075,6 @@ module Aws::Athena
604
1075
  #
605
1076
  class DeleteDataCatalogOutput < Aws::EmptyStructure; end
606
1077
 
607
- # @note When making an API call, you may pass DeleteNamedQueryInput
608
- # data as a hash:
609
- #
610
- # {
611
- # named_query_id: "NamedQueryId", # required
612
- # }
613
- #
614
1078
  # @!attribute [rw] named_query_id
615
1079
  # The unique ID of the query to delete.
616
1080
  #
@@ -630,14 +1094,22 @@ module Aws::Athena
630
1094
  #
631
1095
  class DeleteNamedQueryOutput < Aws::EmptyStructure; end
632
1096
 
633
- # @note When making an API call, you may pass DeletePreparedStatementInput
634
- # data as a hash:
1097
+ # @!attribute [rw] notebook_id
1098
+ # The ID of the notebook to delete.
1099
+ # @return [String]
1100
+ #
1101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteNotebookInput AWS API Documentation
635
1102
  #
636
- # {
637
- # statement_name: "StatementName", # required
638
- # work_group: "WorkGroupName", # required
639
- # }
1103
+ class DeleteNotebookInput < Struct.new(
1104
+ :notebook_id)
1105
+ SENSITIVE = []
1106
+ include Aws::Structure
1107
+ end
1108
+
1109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteNotebookOutput AWS API Documentation
640
1110
  #
1111
+ class DeleteNotebookOutput < Aws::EmptyStructure; end
1112
+
641
1113
  # @!attribute [rw] statement_name
642
1114
  # The name of the prepared statement to delete.
643
1115
  # @return [String]
@@ -659,21 +1131,14 @@ module Aws::Athena
659
1131
  #
660
1132
  class DeletePreparedStatementOutput < Aws::EmptyStructure; end
661
1133
 
662
- # @note When making an API call, you may pass DeleteWorkGroupInput
663
- # data as a hash:
664
- #
665
- # {
666
- # work_group: "WorkGroupName", # required
667
- # recursive_delete_option: false,
668
- # }
669
- #
670
1134
  # @!attribute [rw] work_group
671
1135
  # The unique name of the workgroup to delete.
672
1136
  # @return [String]
673
1137
  #
674
1138
  # @!attribute [rw] recursive_delete_option
675
1139
  # The option to delete the workgroup and its contents even if the
676
- # workgroup contains any named queries or query executions.
1140
+ # workgroup contains any named queries, query executions, or
1141
+ # notebooks.
677
1142
  # @return [Boolean]
678
1143
  #
679
1144
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/DeleteWorkGroupInput AWS API Documentation
@@ -689,22 +1154,15 @@ module Aws::Athena
689
1154
  #
690
1155
  class DeleteWorkGroupOutput < Aws::EmptyStructure; end
691
1156
 
692
- # If query results are encrypted in Amazon S3, indicates the encryption
693
- # option used (for example, `SSE-KMS` or `CSE-KMS`) and key information.
694
- #
695
- # @note When making an API call, you may pass EncryptionConfiguration
696
- # data as a hash:
697
- #
698
- # {
699
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
700
- # kms_key: "String",
701
- # }
1157
+ # If query and calculation results are encrypted in Amazon S3, indicates
1158
+ # the encryption option used (for example, `SSE_KMS` or `CSE_KMS`) and
1159
+ # key information.
702
1160
  #
703
1161
  # @!attribute [rw] encryption_option
704
1162
  # Indicates whether Amazon S3 server-side encryption with Amazon
705
- # S3-managed keys (`SSE-S3`), server-side encryption with KMS-managed
706
- # keys (`SSE-KMS`), or client-side encryption with KMS-managed keys
707
- # (CSE-KMS) is used.
1163
+ # S3-managed keys (`SSE_S3`), server-side encryption with KMS-managed
1164
+ # keys (`SSE_KMS`), or client-side encryption with KMS-managed keys
1165
+ # (`CSE_KMS`) is used.
708
1166
  #
709
1167
  # If a query runs in a workgroup and the workgroup overrides
710
1168
  # client-side settings, then the workgroup's setting for encryption
@@ -713,7 +1171,7 @@ module Aws::Athena
713
1171
  # @return [String]
714
1172
  #
715
1173
  # @!attribute [rw] kms_key
716
- # For `SSE-KMS` and `CSE-KMS`, this is the KMS key ARN or ID.
1174
+ # For `SSE_KMS` and `CSE_KMS`, this is the KMS key ARN or ID.
717
1175
  # @return [String]
718
1176
  #
719
1177
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/EncryptionConfiguration AWS API Documentation
@@ -725,20 +1183,58 @@ module Aws::Athena
725
1183
  include Aws::Structure
726
1184
  end
727
1185
 
728
- # The Athena engine version for running queries.
1186
+ # Contains data processing unit (DPU) configuration settings and
1187
+ # parameter mappings for a notebook engine.
1188
+ #
1189
+ # @!attribute [rw] coordinator_dpu_size
1190
+ # The number of DPUs to use for the coordinator. A coordinator is a
1191
+ # special executor that orchestrates processing work and manages other
1192
+ # executors in a notebook session. The default is 1.
1193
+ # @return [Integer]
1194
+ #
1195
+ # @!attribute [rw] max_concurrent_dpus
1196
+ # The maximum number of DPUs that can run concurrently.
1197
+ # @return [Integer]
1198
+ #
1199
+ # @!attribute [rw] default_executor_dpu_size
1200
+ # The default number of DPUs to use for executors. An executor is the
1201
+ # smallest unit of compute that a notebook session can request from
1202
+ # Athena. The default is 1.
1203
+ # @return [Integer]
1204
+ #
1205
+ # @!attribute [rw] additional_configs
1206
+ # Contains additional notebook engine `MAP<string, string>` parameter
1207
+ # mappings in the form of key-value pairs. To specify an Athena
1208
+ # notebook that the Jupyter server will download and serve, specify a
1209
+ # value for the StartSessionRequest$NotebookVersion field, and then
1210
+ # add a key named `NotebookId` to `AdditionalConfigs` that has the
1211
+ # value of the Athena notebook ID.
1212
+ # @return [Hash<String,String>]
1213
+ #
1214
+ # @!attribute [rw] spark_properties
1215
+ # Specifies custom jar files and Spark properties for use cases like
1216
+ # cluster encryption, table formats, and general Spark tuning.
1217
+ # @return [Hash<String,String>]
729
1218
  #
730
- # @note When making an API call, you may pass EngineVersion
731
- # data as a hash:
1219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/EngineConfiguration AWS API Documentation
732
1220
  #
733
- # {
734
- # selected_engine_version: "NameString",
735
- # effective_engine_version: "NameString",
736
- # }
1221
+ class EngineConfiguration < Struct.new(
1222
+ :coordinator_dpu_size,
1223
+ :max_concurrent_dpus,
1224
+ :default_executor_dpu_size,
1225
+ :additional_configs,
1226
+ :spark_properties)
1227
+ SENSITIVE = []
1228
+ include Aws::Structure
1229
+ end
1230
+
1231
+ # The Athena engine version for running queries, or the PySpark engine
1232
+ # version for running sessions.
737
1233
  #
738
1234
  # @!attribute [rw] selected_engine_version
739
1235
  # The engine version requested by the user. Possible values are
740
- # determined by the output of `ListEngineVersions`, including Auto.
741
- # The default is Auto.
1236
+ # determined by the output of `ListEngineVersions`, including AUTO.
1237
+ # The default is AUTO.
742
1238
  # @return [String]
743
1239
  #
744
1240
  # @!attribute [rw] effective_engine_version
@@ -760,13 +1256,266 @@ module Aws::Athena
760
1256
  include Aws::Structure
761
1257
  end
762
1258
 
763
- # @note When making an API call, you may pass GetDataCatalogInput
764
- # data as a hash:
1259
+ # Contains summary information about an executor.
1260
+ #
1261
+ # @!attribute [rw] executor_id
1262
+ # The UUID of the executor.
1263
+ # @return [String]
1264
+ #
1265
+ # @!attribute [rw] executor_type
1266
+ # The type of executor used for the application (`COORDINATOR`,
1267
+ # `GATEWAY`, or `WORKER`).
1268
+ # @return [String]
1269
+ #
1270
+ # @!attribute [rw] start_date_time
1271
+ # The date and time that the executor started.
1272
+ # @return [Integer]
1273
+ #
1274
+ # @!attribute [rw] termination_date_time
1275
+ # The date and time that the executor was terminated.
1276
+ # @return [Integer]
1277
+ #
1278
+ # @!attribute [rw] executor_state
1279
+ # The processing state of the executor. A description of each state
1280
+ # follows.
1281
+ #
1282
+ # `CREATING` - The executor is being started, including acquiring
1283
+ # resources.
1284
+ #
1285
+ # `CREATED` - The executor has been started.
1286
+ #
1287
+ # `REGISTERED` - The executor has been registered.
1288
+ #
1289
+ # `TERMINATING` - The executor is in the process of shutting down.
1290
+ #
1291
+ # `TERMINATED` - The executor is no longer running.
1292
+ #
1293
+ # `FAILED` - Due to a failure, the executor is no longer running.
1294
+ # @return [String]
1295
+ #
1296
+ # @!attribute [rw] executor_size
1297
+ # The smallest unit of compute that a session can request from Athena.
1298
+ # Size is measured in data processing unit (DPU) values, a relative
1299
+ # measure of processing power.
1300
+ # @return [Integer]
1301
+ #
1302
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ExecutorsSummary AWS API Documentation
1303
+ #
1304
+ class ExecutorsSummary < Struct.new(
1305
+ :executor_id,
1306
+ :executor_type,
1307
+ :start_date_time,
1308
+ :termination_date_time,
1309
+ :executor_state,
1310
+ :executor_size)
1311
+ SENSITIVE = []
1312
+ include Aws::Structure
1313
+ end
1314
+
1315
+ # @!attribute [rw] notebook_id
1316
+ # The ID of the notebook to export.
1317
+ # @return [String]
1318
+ #
1319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ExportNotebookInput AWS API Documentation
1320
+ #
1321
+ class ExportNotebookInput < Struct.new(
1322
+ :notebook_id)
1323
+ SENSITIVE = []
1324
+ include Aws::Structure
1325
+ end
1326
+
1327
+ # @!attribute [rw] notebook_metadata
1328
+ # The notebook metadata, including notebook ID, notebook name, and
1329
+ # workgroup name.
1330
+ # @return [Types::NotebookMetadata]
1331
+ #
1332
+ # @!attribute [rw] payload
1333
+ # The content of the exported notebook.
1334
+ # @return [String]
1335
+ #
1336
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ExportNotebookOutput AWS API Documentation
1337
+ #
1338
+ class ExportNotebookOutput < Struct.new(
1339
+ :notebook_metadata,
1340
+ :payload)
1341
+ SENSITIVE = []
1342
+ include Aws::Structure
1343
+ end
1344
+
1345
+ # A string for searching notebook names.
1346
+ #
1347
+ # @!attribute [rw] name
1348
+ # The name of the notebook to search for.
1349
+ # @return [String]
1350
+ #
1351
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/FilterDefinition AWS API Documentation
1352
+ #
1353
+ class FilterDefinition < Struct.new(
1354
+ :name)
1355
+ SENSITIVE = []
1356
+ include Aws::Structure
1357
+ end
1358
+
1359
+ # @!attribute [rw] calculation_execution_id
1360
+ # The calculation execution UUID.
1361
+ # @return [String]
1362
+ #
1363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionCodeRequest AWS API Documentation
1364
+ #
1365
+ class GetCalculationExecutionCodeRequest < Struct.new(
1366
+ :calculation_execution_id)
1367
+ SENSITIVE = []
1368
+ include Aws::Structure
1369
+ end
1370
+
1371
+ # @!attribute [rw] code_block
1372
+ # The unencrypted code that was executed for the calculation.
1373
+ # @return [String]
1374
+ #
1375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionCodeResponse AWS API Documentation
1376
+ #
1377
+ class GetCalculationExecutionCodeResponse < Struct.new(
1378
+ :code_block)
1379
+ SENSITIVE = []
1380
+ include Aws::Structure
1381
+ end
1382
+
1383
+ # @!attribute [rw] calculation_execution_id
1384
+ # The calculation execution UUID.
1385
+ # @return [String]
1386
+ #
1387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionRequest AWS API Documentation
1388
+ #
1389
+ class GetCalculationExecutionRequest < Struct.new(
1390
+ :calculation_execution_id)
1391
+ SENSITIVE = []
1392
+ include Aws::Structure
1393
+ end
1394
+
1395
+ # @!attribute [rw] calculation_execution_id
1396
+ # The calculation execution UUID.
1397
+ # @return [String]
1398
+ #
1399
+ # @!attribute [rw] session_id
1400
+ # The session ID that the calculation ran in.
1401
+ # @return [String]
1402
+ #
1403
+ # @!attribute [rw] description
1404
+ # The description of the calculation execution.
1405
+ # @return [String]
1406
+ #
1407
+ # @!attribute [rw] working_directory
1408
+ # The Amazon S3 location in which calculation results are stored.
1409
+ # @return [String]
1410
+ #
1411
+ # @!attribute [rw] status
1412
+ # Contains information about the status of the calculation.
1413
+ # @return [Types::CalculationStatus]
1414
+ #
1415
+ # @!attribute [rw] statistics
1416
+ # Contains information about the data processing unit (DPU) execution
1417
+ # time and progress. This field is populated only when statistics are
1418
+ # available.
1419
+ # @return [Types::CalculationStatistics]
1420
+ #
1421
+ # @!attribute [rw] result
1422
+ # Contains result information. This field is populated only if the
1423
+ # calculation is completed.
1424
+ # @return [Types::CalculationResult]
1425
+ #
1426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionResponse AWS API Documentation
1427
+ #
1428
+ class GetCalculationExecutionResponse < Struct.new(
1429
+ :calculation_execution_id,
1430
+ :session_id,
1431
+ :description,
1432
+ :working_directory,
1433
+ :status,
1434
+ :statistics,
1435
+ :result)
1436
+ SENSITIVE = []
1437
+ include Aws::Structure
1438
+ end
1439
+
1440
+ # @!attribute [rw] calculation_execution_id
1441
+ # The calculation execution UUID.
1442
+ # @return [String]
1443
+ #
1444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionStatusRequest AWS API Documentation
1445
+ #
1446
+ class GetCalculationExecutionStatusRequest < Struct.new(
1447
+ :calculation_execution_id)
1448
+ SENSITIVE = []
1449
+ include Aws::Structure
1450
+ end
1451
+
1452
+ # @!attribute [rw] status
1453
+ # Contains information about the calculation execution status.
1454
+ # @return [Types::CalculationStatus]
1455
+ #
1456
+ # @!attribute [rw] statistics
1457
+ # Contains information about the DPU execution time and progress.
1458
+ # @return [Types::CalculationStatistics]
1459
+ #
1460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCalculationExecutionStatusResponse AWS API Documentation
1461
+ #
1462
+ class GetCalculationExecutionStatusResponse < Struct.new(
1463
+ :status,
1464
+ :statistics)
1465
+ SENSITIVE = []
1466
+ include Aws::Structure
1467
+ end
1468
+
1469
+ # @!attribute [rw] capacity_reservation_name
1470
+ # The name of the capacity reservation to retrieve the capacity
1471
+ # assignment configuration for.
1472
+ # @return [String]
1473
+ #
1474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityAssignmentConfigurationInput AWS API Documentation
1475
+ #
1476
+ class GetCapacityAssignmentConfigurationInput < Struct.new(
1477
+ :capacity_reservation_name)
1478
+ SENSITIVE = []
1479
+ include Aws::Structure
1480
+ end
1481
+
1482
+ # @!attribute [rw] capacity_assignment_configuration
1483
+ # The requested capacity assignment configuration for the specified
1484
+ # capacity reservation.
1485
+ # @return [Types::CapacityAssignmentConfiguration]
1486
+ #
1487
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityAssignmentConfigurationOutput AWS API Documentation
1488
+ #
1489
+ class GetCapacityAssignmentConfigurationOutput < Struct.new(
1490
+ :capacity_assignment_configuration)
1491
+ SENSITIVE = []
1492
+ include Aws::Structure
1493
+ end
1494
+
1495
+ # @!attribute [rw] name
1496
+ # The name of the capacity reservation.
1497
+ # @return [String]
1498
+ #
1499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityReservationInput AWS API Documentation
1500
+ #
1501
+ class GetCapacityReservationInput < Struct.new(
1502
+ :name)
1503
+ SENSITIVE = []
1504
+ include Aws::Structure
1505
+ end
1506
+
1507
+ # @!attribute [rw] capacity_reservation
1508
+ # The requested capacity reservation structure.
1509
+ # @return [Types::CapacityReservation]
765
1510
  #
766
- # {
767
- # name: "CatalogNameString", # required
768
- # }
1511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetCapacityReservationOutput AWS API Documentation
769
1512
  #
1513
+ class GetCapacityReservationOutput < Struct.new(
1514
+ :capacity_reservation)
1515
+ SENSITIVE = []
1516
+ include Aws::Structure
1517
+ end
1518
+
770
1519
  # @!attribute [rw] name
771
1520
  # The name of the data catalog to return.
772
1521
  # @return [String]
@@ -791,14 +1540,6 @@ module Aws::Athena
791
1540
  include Aws::Structure
792
1541
  end
793
1542
 
794
- # @note When making an API call, you may pass GetDatabaseInput
795
- # data as a hash:
796
- #
797
- # {
798
- # catalog_name: "CatalogNameString", # required
799
- # database_name: "NameString", # required
800
- # }
801
- #
802
1543
  # @!attribute [rw] catalog_name
803
1544
  # The name of the data catalog that contains the database to return.
804
1545
  # @return [String]
@@ -828,13 +1569,6 @@ module Aws::Athena
828
1569
  include Aws::Structure
829
1570
  end
830
1571
 
831
- # @note When making an API call, you may pass GetNamedQueryInput
832
- # data as a hash:
833
- #
834
- # {
835
- # named_query_id: "NamedQueryId", # required
836
- # }
837
- #
838
1572
  # @!attribute [rw] named_query_id
839
1573
  # The unique ID of the query. Use ListNamedQueries to get query IDs.
840
1574
  # @return [String]
@@ -859,14 +1593,30 @@ module Aws::Athena
859
1593
  include Aws::Structure
860
1594
  end
861
1595
 
862
- # @note When making an API call, you may pass GetPreparedStatementInput
863
- # data as a hash:
1596
+ # @!attribute [rw] notebook_id
1597
+ # The ID of the notebook whose metadata is to be retrieved.
1598
+ # @return [String]
1599
+ #
1600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetNotebookMetadataInput AWS API Documentation
1601
+ #
1602
+ class GetNotebookMetadataInput < Struct.new(
1603
+ :notebook_id)
1604
+ SENSITIVE = []
1605
+ include Aws::Structure
1606
+ end
1607
+
1608
+ # @!attribute [rw] notebook_metadata
1609
+ # The metadata that is returned for the specified notebook ID.
1610
+ # @return [Types::NotebookMetadata]
864
1611
  #
865
- # {
866
- # statement_name: "StatementName", # required
867
- # work_group: "WorkGroupName", # required
868
- # }
1612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetNotebookMetadataOutput AWS API Documentation
869
1613
  #
1614
+ class GetNotebookMetadataOutput < Struct.new(
1615
+ :notebook_metadata)
1616
+ SENSITIVE = []
1617
+ include Aws::Structure
1618
+ end
1619
+
870
1620
  # @!attribute [rw] statement_name
871
1621
  # The name of the prepared statement to retrieve.
872
1622
  # @return [String]
@@ -896,13 +1646,6 @@ module Aws::Athena
896
1646
  include Aws::Structure
897
1647
  end
898
1648
 
899
- # @note When making an API call, you may pass GetQueryExecutionInput
900
- # data as a hash:
901
- #
902
- # {
903
- # query_execution_id: "QueryExecutionId", # required
904
- # }
905
- #
906
1649
  # @!attribute [rw] query_execution_id
907
1650
  # The unique ID of the query execution.
908
1651
  # @return [String]
@@ -927,15 +1670,6 @@ module Aws::Athena
927
1670
  include Aws::Structure
928
1671
  end
929
1672
 
930
- # @note When making an API call, you may pass GetQueryResultsInput
931
- # data as a hash:
932
- #
933
- # {
934
- # query_execution_id: "QueryExecutionId", # required
935
- # next_token: "Token",
936
- # max_results: 1,
937
- # }
938
- #
939
1673
  # @!attribute [rw] query_execution_id
940
1674
  # The unique ID of the query execution.
941
1675
  # @return [String]
@@ -987,57 +1721,161 @@ module Aws::Athena
987
1721
  include Aws::Structure
988
1722
  end
989
1723
 
990
- # @note When making an API call, you may pass GetTableMetadataInput
991
- # data as a hash:
992
- #
993
- # {
994
- # catalog_name: "CatalogNameString", # required
995
- # database_name: "NameString", # required
996
- # table_name: "NameString", # required
997
- # }
998
- #
999
- # @!attribute [rw] catalog_name
1000
- # The name of the data catalog that contains the database and table
1001
- # metadata to return.
1724
+ # @!attribute [rw] query_execution_id
1725
+ # The unique ID of the query execution.
1002
1726
  # @return [String]
1003
1727
  #
1004
- # @!attribute [rw] database_name
1005
- # The name of the database that contains the table metadata to return.
1006
- # @return [String]
1728
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryRuntimeStatisticsInput AWS API Documentation
1007
1729
  #
1008
- # @!attribute [rw] table_name
1009
- # The name of the table for which metadata is returned.
1010
- # @return [String]
1730
+ class GetQueryRuntimeStatisticsInput < Struct.new(
1731
+ :query_execution_id)
1732
+ SENSITIVE = []
1733
+ include Aws::Structure
1734
+ end
1735
+
1736
+ # @!attribute [rw] query_runtime_statistics
1737
+ # Runtime statistics about the query execution.
1738
+ # @return [Types::QueryRuntimeStatistics]
1011
1739
  #
1012
- # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetTableMetadataInput AWS API Documentation
1740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetQueryRuntimeStatisticsOutput AWS API Documentation
1013
1741
  #
1014
- class GetTableMetadataInput < Struct.new(
1015
- :catalog_name,
1016
- :database_name,
1017
- :table_name)
1742
+ class GetQueryRuntimeStatisticsOutput < Struct.new(
1743
+ :query_runtime_statistics)
1018
1744
  SENSITIVE = []
1019
1745
  include Aws::Structure
1020
1746
  end
1021
1747
 
1022
- # @!attribute [rw] table_metadata
1023
- # An object that contains table metadata.
1024
- # @return [Types::TableMetadata]
1748
+ # @!attribute [rw] session_id
1749
+ # The session ID.
1750
+ # @return [String]
1025
1751
  #
1026
- # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetTableMetadataOutput AWS API Documentation
1752
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetSessionRequest AWS API Documentation
1027
1753
  #
1028
- class GetTableMetadataOutput < Struct.new(
1029
- :table_metadata)
1754
+ class GetSessionRequest < Struct.new(
1755
+ :session_id)
1030
1756
  SENSITIVE = []
1031
1757
  include Aws::Structure
1032
1758
  end
1033
1759
 
1034
- # @note When making an API call, you may pass GetWorkGroupInput
1035
- # data as a hash:
1760
+ # @!attribute [rw] session_id
1761
+ # The session ID.
1762
+ # @return [String]
1036
1763
  #
1037
- # {
1038
- # work_group: "WorkGroupName", # required
1039
- # }
1764
+ # @!attribute [rw] description
1765
+ # The session description.
1766
+ # @return [String]
1767
+ #
1768
+ # @!attribute [rw] work_group
1769
+ # The workgroup to which the session belongs.
1770
+ # @return [String]
1771
+ #
1772
+ # @!attribute [rw] engine_version
1773
+ # The engine version used by the session (for example, `PySpark engine
1774
+ # version 3`). You can get a list of engine versions by calling
1775
+ # ListEngineVersions.
1776
+ # @return [String]
1777
+ #
1778
+ # @!attribute [rw] engine_configuration
1779
+ # Contains engine configuration information like DPU usage.
1780
+ # @return [Types::EngineConfiguration]
1781
+ #
1782
+ # @!attribute [rw] notebook_version
1783
+ # The notebook version.
1784
+ # @return [String]
1785
+ #
1786
+ # @!attribute [rw] session_configuration
1787
+ # Contains the workgroup configuration information used by the
1788
+ # session.
1789
+ # @return [Types::SessionConfiguration]
1790
+ #
1791
+ # @!attribute [rw] status
1792
+ # Contains information about the status of the session.
1793
+ # @return [Types::SessionStatus]
1794
+ #
1795
+ # @!attribute [rw] statistics
1796
+ # Contains the DPU execution time.
1797
+ # @return [Types::SessionStatistics]
1798
+ #
1799
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetSessionResponse AWS API Documentation
1800
+ #
1801
+ class GetSessionResponse < Struct.new(
1802
+ :session_id,
1803
+ :description,
1804
+ :work_group,
1805
+ :engine_version,
1806
+ :engine_configuration,
1807
+ :notebook_version,
1808
+ :session_configuration,
1809
+ :status,
1810
+ :statistics)
1811
+ SENSITIVE = []
1812
+ include Aws::Structure
1813
+ end
1814
+
1815
+ # @!attribute [rw] session_id
1816
+ # The session ID.
1817
+ # @return [String]
1818
+ #
1819
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetSessionStatusRequest AWS API Documentation
1820
+ #
1821
+ class GetSessionStatusRequest < Struct.new(
1822
+ :session_id)
1823
+ SENSITIVE = []
1824
+ include Aws::Structure
1825
+ end
1826
+
1827
+ # @!attribute [rw] session_id
1828
+ # The session ID.
1829
+ # @return [String]
1830
+ #
1831
+ # @!attribute [rw] status
1832
+ # Contains information about the status of the session.
1833
+ # @return [Types::SessionStatus]
1834
+ #
1835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetSessionStatusResponse AWS API Documentation
1836
+ #
1837
+ class GetSessionStatusResponse < Struct.new(
1838
+ :session_id,
1839
+ :status)
1840
+ SENSITIVE = []
1841
+ include Aws::Structure
1842
+ end
1843
+
1844
+ # @!attribute [rw] catalog_name
1845
+ # The name of the data catalog that contains the database and table
1846
+ # metadata to return.
1847
+ # @return [String]
1848
+ #
1849
+ # @!attribute [rw] database_name
1850
+ # The name of the database that contains the table metadata to return.
1851
+ # @return [String]
1852
+ #
1853
+ # @!attribute [rw] table_name
1854
+ # The name of the table for which metadata is returned.
1855
+ # @return [String]
1856
+ #
1857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetTableMetadataInput AWS API Documentation
1858
+ #
1859
+ class GetTableMetadataInput < Struct.new(
1860
+ :catalog_name,
1861
+ :database_name,
1862
+ :table_name)
1863
+ SENSITIVE = []
1864
+ include Aws::Structure
1865
+ end
1866
+
1867
+ # @!attribute [rw] table_metadata
1868
+ # An object that contains table metadata.
1869
+ # @return [Types::TableMetadata]
1870
+ #
1871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/GetTableMetadataOutput AWS API Documentation
1040
1872
  #
1873
+ class GetTableMetadataOutput < Struct.new(
1874
+ :table_metadata)
1875
+ SENSITIVE = []
1876
+ include Aws::Structure
1877
+ end
1878
+
1041
1879
  # @!attribute [rw] work_group
1042
1880
  # The name of the workgroup.
1043
1881
  # @return [String]
@@ -1062,6 +1900,58 @@ module Aws::Athena
1062
1900
  include Aws::Structure
1063
1901
  end
1064
1902
 
1903
+ # @!attribute [rw] work_group
1904
+ # The name of the Spark enabled workgroup to import the notebook to.
1905
+ # @return [String]
1906
+ #
1907
+ # @!attribute [rw] name
1908
+ # The name of the notebook to import.
1909
+ # @return [String]
1910
+ #
1911
+ # @!attribute [rw] payload
1912
+ # The notebook content to be imported.
1913
+ # @return [String]
1914
+ #
1915
+ # @!attribute [rw] type
1916
+ # The notebook content type. Currently, the only valid type is
1917
+ # `IPYNB`.
1918
+ # @return [String]
1919
+ #
1920
+ # @!attribute [rw] client_request_token
1921
+ # A unique case-sensitive string used to ensure the request to import
1922
+ # the notebook is idempotent (executes only once).
1923
+ #
1924
+ # This token is listed as not required because Amazon Web Services
1925
+ # SDKs (for example the Amazon Web Services SDK for Java)
1926
+ # auto-generate the token for you. If you are not using the Amazon Web
1927
+ # Services SDK or the Amazon Web Services CLI, you must provide this
1928
+ # token or the action will fail.
1929
+ # @return [String]
1930
+ #
1931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ImportNotebookInput AWS API Documentation
1932
+ #
1933
+ class ImportNotebookInput < Struct.new(
1934
+ :work_group,
1935
+ :name,
1936
+ :payload,
1937
+ :type,
1938
+ :client_request_token)
1939
+ SENSITIVE = []
1940
+ include Aws::Structure
1941
+ end
1942
+
1943
+ # @!attribute [rw] notebook_id
1944
+ # The ID assigned to the imported notebook.
1945
+ # @return [String]
1946
+ #
1947
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ImportNotebookOutput AWS API Documentation
1948
+ #
1949
+ class ImportNotebookOutput < Struct.new(
1950
+ :notebook_id)
1951
+ SENSITIVE = []
1952
+ include Aws::Structure
1953
+ end
1954
+
1065
1955
  # Indicates a platform issue, which may be due to a transient condition
1066
1956
  # or outage.
1067
1957
  #
@@ -1096,14 +1986,152 @@ module Aws::Athena
1096
1986
  include Aws::Structure
1097
1987
  end
1098
1988
 
1099
- # @note When making an API call, you may pass ListDataCatalogsInput
1100
- # data as a hash:
1989
+ # @!attribute [rw] max_results
1990
+ # Specifies the maximum number of results to return.
1991
+ # @return [Integer]
1992
+ #
1993
+ # @!attribute [rw] next_token
1994
+ # A token generated by the Athena service that specifies where to
1995
+ # continue pagination if a previous request was truncated.
1996
+ # @return [String]
1997
+ #
1998
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListApplicationDPUSizesInput AWS API Documentation
1999
+ #
2000
+ class ListApplicationDPUSizesInput < Struct.new(
2001
+ :max_results,
2002
+ :next_token)
2003
+ SENSITIVE = []
2004
+ include Aws::Structure
2005
+ end
2006
+
2007
+ # @!attribute [rw] application_dpu_sizes
2008
+ # A list of the supported DPU sizes that the application runtime
2009
+ # supports.
2010
+ # @return [Array<Types::ApplicationDPUSizes>]
2011
+ #
2012
+ # @!attribute [rw] next_token
2013
+ # A token generated by the Athena service that specifies where to
2014
+ # continue pagination if a previous request was truncated. To obtain
2015
+ # the next set of pages, pass in the `NextToken` from the response
2016
+ # object of the previous page call.
2017
+ # @return [String]
2018
+ #
2019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListApplicationDPUSizesOutput AWS API Documentation
2020
+ #
2021
+ class ListApplicationDPUSizesOutput < Struct.new(
2022
+ :application_dpu_sizes,
2023
+ :next_token)
2024
+ SENSITIVE = []
2025
+ include Aws::Structure
2026
+ end
2027
+
2028
+ # @!attribute [rw] session_id
2029
+ # The session ID.
2030
+ # @return [String]
2031
+ #
2032
+ # @!attribute [rw] state_filter
2033
+ # A filter for a specific calculation execution state. A description
2034
+ # of each state follows.
2035
+ #
2036
+ # `CREATING` - The calculation is in the process of being created.
2037
+ #
2038
+ # `CREATED` - The calculation has been created and is ready to run.
2039
+ #
2040
+ # `QUEUED` - The calculation has been queued for processing.
2041
+ #
2042
+ # `RUNNING` - The calculation is running.
2043
+ #
2044
+ # `CANCELING` - A request to cancel the calculation has been received
2045
+ # and the system is working to stop it.
2046
+ #
2047
+ # `CANCELED` - The calculation is no longer running as the result of a
2048
+ # cancel request.
2049
+ #
2050
+ # `COMPLETED` - The calculation has completed without error.
2051
+ #
2052
+ # `FAILED` - The calculation failed and is no longer running.
2053
+ # @return [String]
2054
+ #
2055
+ # @!attribute [rw] max_results
2056
+ # The maximum number of calculation executions to return.
2057
+ # @return [Integer]
2058
+ #
2059
+ # @!attribute [rw] next_token
2060
+ # A token generated by the Athena service that specifies where to
2061
+ # continue pagination if a previous request was truncated. To obtain
2062
+ # the next set of pages, pass in the `NextToken` from the response
2063
+ # object of the previous page call.
2064
+ # @return [String]
2065
+ #
2066
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCalculationExecutionsRequest AWS API Documentation
2067
+ #
2068
+ class ListCalculationExecutionsRequest < Struct.new(
2069
+ :session_id,
2070
+ :state_filter,
2071
+ :max_results,
2072
+ :next_token)
2073
+ SENSITIVE = []
2074
+ include Aws::Structure
2075
+ end
2076
+
2077
+ # @!attribute [rw] next_token
2078
+ # A token generated by the Athena service that specifies where to
2079
+ # continue pagination if a previous request was truncated. To obtain
2080
+ # the next set of pages, pass in the `NextToken` from the response
2081
+ # object of the previous page call.
2082
+ # @return [String]
2083
+ #
2084
+ # @!attribute [rw] calculations
2085
+ # A list of CalculationSummary objects.
2086
+ # @return [Array<Types::CalculationSummary>]
2087
+ #
2088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCalculationExecutionsResponse AWS API Documentation
2089
+ #
2090
+ class ListCalculationExecutionsResponse < Struct.new(
2091
+ :next_token,
2092
+ :calculations)
2093
+ SENSITIVE = []
2094
+ include Aws::Structure
2095
+ end
2096
+
2097
+ # @!attribute [rw] next_token
2098
+ # A token generated by the Athena service that specifies where to
2099
+ # continue pagination if a previous request was truncated.
2100
+ # @return [String]
2101
+ #
2102
+ # @!attribute [rw] max_results
2103
+ # Specifies the maximum number of results to return.
2104
+ # @return [Integer]
2105
+ #
2106
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCapacityReservationsInput AWS API Documentation
2107
+ #
2108
+ class ListCapacityReservationsInput < Struct.new(
2109
+ :next_token,
2110
+ :max_results)
2111
+ SENSITIVE = []
2112
+ include Aws::Structure
2113
+ end
2114
+
2115
+ # @!attribute [rw] next_token
2116
+ # A token generated by the Athena service that specifies where to
2117
+ # continue pagination if a previous request was truncated. To obtain
2118
+ # the next set of pages, pass in the NextToken from the response
2119
+ # object of the previous page call.
2120
+ # @return [String]
1101
2121
  #
1102
- # {
1103
- # next_token: "Token",
1104
- # max_results: 1,
1105
- # }
2122
+ # @!attribute [rw] capacity_reservations
2123
+ # The capacity reservations for the current account.
2124
+ # @return [Array<Types::CapacityReservation>]
1106
2125
  #
2126
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListCapacityReservationsOutput AWS API Documentation
2127
+ #
2128
+ class ListCapacityReservationsOutput < Struct.new(
2129
+ :next_token,
2130
+ :capacity_reservations)
2131
+ SENSITIVE = []
2132
+ include Aws::Structure
2133
+ end
2134
+
1107
2135
  # @!attribute [rw] next_token
1108
2136
  # A token generated by the Athena service that specifies where to
1109
2137
  # continue pagination if a previous request was truncated. To obtain
@@ -1144,15 +2172,6 @@ module Aws::Athena
1144
2172
  include Aws::Structure
1145
2173
  end
1146
2174
 
1147
- # @note When making an API call, you may pass ListDatabasesInput
1148
- # data as a hash:
1149
- #
1150
- # {
1151
- # catalog_name: "CatalogNameString", # required
1152
- # next_token: "Token",
1153
- # max_results: 1,
1154
- # }
1155
- #
1156
2175
  # @!attribute [rw] catalog_name
1157
2176
  # The name of the data catalog that contains the databases to return.
1158
2177
  # @return [String]
@@ -1198,14 +2217,6 @@ module Aws::Athena
1198
2217
  include Aws::Structure
1199
2218
  end
1200
2219
 
1201
- # @note When making an API call, you may pass ListEngineVersionsInput
1202
- # data as a hash:
1203
- #
1204
- # {
1205
- # next_token: "Token",
1206
- # max_results: 1,
1207
- # }
1208
- #
1209
2220
  # @!attribute [rw] next_token
1210
2221
  # A token generated by the Athena service that specifies where to
1211
2222
  # continue pagination if a previous request was truncated. To obtain
@@ -1246,15 +2257,75 @@ module Aws::Athena
1246
2257
  include Aws::Structure
1247
2258
  end
1248
2259
 
1249
- # @note When making an API call, you may pass ListNamedQueriesInput
1250
- # data as a hash:
2260
+ # @!attribute [rw] session_id
2261
+ # The session ID.
2262
+ # @return [String]
2263
+ #
2264
+ # @!attribute [rw] executor_state_filter
2265
+ # A filter for a specific executor state. A description of each state
2266
+ # follows.
2267
+ #
2268
+ # `CREATING` - The executor is being started, including acquiring
2269
+ # resources.
2270
+ #
2271
+ # `CREATED` - The executor has been started.
2272
+ #
2273
+ # `REGISTERED` - The executor has been registered.
2274
+ #
2275
+ # `TERMINATING` - The executor is in the process of shutting down.
2276
+ #
2277
+ # `TERMINATED` - The executor is no longer running.
2278
+ #
2279
+ # `FAILED` - Due to a failure, the executor is no longer running.
2280
+ # @return [String]
2281
+ #
2282
+ # @!attribute [rw] max_results
2283
+ # The maximum number of executors to return.
2284
+ # @return [Integer]
2285
+ #
2286
+ # @!attribute [rw] next_token
2287
+ # A token generated by the Athena service that specifies where to
2288
+ # continue pagination if a previous request was truncated. To obtain
2289
+ # the next set of pages, pass in the `NextToken` from the response
2290
+ # object of the previous page call.
2291
+ # @return [String]
2292
+ #
2293
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListExecutorsRequest AWS API Documentation
2294
+ #
2295
+ class ListExecutorsRequest < Struct.new(
2296
+ :session_id,
2297
+ :executor_state_filter,
2298
+ :max_results,
2299
+ :next_token)
2300
+ SENSITIVE = []
2301
+ include Aws::Structure
2302
+ end
2303
+
2304
+ # @!attribute [rw] session_id
2305
+ # The session ID.
2306
+ # @return [String]
2307
+ #
2308
+ # @!attribute [rw] next_token
2309
+ # A token generated by the Athena service that specifies where to
2310
+ # continue pagination if a previous request was truncated. To obtain
2311
+ # the next set of pages, pass in the `NextToken` from the response
2312
+ # object of the previous page call.
2313
+ # @return [String]
2314
+ #
2315
+ # @!attribute [rw] executors_summary
2316
+ # Contains summary information about the executor.
2317
+ # @return [Array<Types::ExecutorsSummary>]
1251
2318
  #
1252
- # {
1253
- # next_token: "Token",
1254
- # max_results: 1,
1255
- # work_group: "WorkGroupName",
1256
- # }
2319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListExecutorsResponse AWS API Documentation
1257
2320
  #
2321
+ class ListExecutorsResponse < Struct.new(
2322
+ :session_id,
2323
+ :next_token,
2324
+ :executors_summary)
2325
+ SENSITIVE = []
2326
+ include Aws::Structure
2327
+ end
2328
+
1258
2329
  # @!attribute [rw] next_token
1259
2330
  # A token generated by the Athena service that specifies where to
1260
2331
  # continue pagination if a previous request was truncated. To obtain
@@ -1302,18 +2373,103 @@ module Aws::Athena
1302
2373
  include Aws::Structure
1303
2374
  end
1304
2375
 
1305
- # @note When making an API call, you may pass ListPreparedStatementsInput
1306
- # data as a hash:
1307
- #
1308
- # {
1309
- # work_group: "WorkGroupName", # required
1310
- # next_token: "Token",
1311
- # max_results: 1,
1312
- # }
1313
- #
1314
- # @!attribute [rw] work_group
1315
- # The workgroup to list the prepared statements for.
1316
- # @return [String]
2376
+ # @!attribute [rw] filters
2377
+ # Search filter string.
2378
+ # @return [Types::FilterDefinition]
2379
+ #
2380
+ # @!attribute [rw] next_token
2381
+ # A token generated by the Athena service that specifies where to
2382
+ # continue pagination if a previous request was truncated.
2383
+ # @return [String]
2384
+ #
2385
+ # @!attribute [rw] max_results
2386
+ # Specifies the maximum number of results to return.
2387
+ # @return [Integer]
2388
+ #
2389
+ # @!attribute [rw] work_group
2390
+ # The name of the Spark enabled workgroup to retrieve notebook
2391
+ # metadata for.
2392
+ # @return [String]
2393
+ #
2394
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNotebookMetadataInput AWS API Documentation
2395
+ #
2396
+ class ListNotebookMetadataInput < Struct.new(
2397
+ :filters,
2398
+ :next_token,
2399
+ :max_results,
2400
+ :work_group)
2401
+ SENSITIVE = []
2402
+ include Aws::Structure
2403
+ end
2404
+
2405
+ # @!attribute [rw] next_token
2406
+ # A token generated by the Athena service that specifies where to
2407
+ # continue pagination if a previous request was truncated. To obtain
2408
+ # the next set of pages, pass in the `NextToken` from the response
2409
+ # object of the previous page call.
2410
+ # @return [String]
2411
+ #
2412
+ # @!attribute [rw] notebook_metadata_list
2413
+ # The list of notebook metadata for the specified workgroup.
2414
+ # @return [Array<Types::NotebookMetadata>]
2415
+ #
2416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNotebookMetadataOutput AWS API Documentation
2417
+ #
2418
+ class ListNotebookMetadataOutput < Struct.new(
2419
+ :next_token,
2420
+ :notebook_metadata_list)
2421
+ SENSITIVE = []
2422
+ include Aws::Structure
2423
+ end
2424
+
2425
+ # @!attribute [rw] notebook_id
2426
+ # The ID of the notebook to list sessions for.
2427
+ # @return [String]
2428
+ #
2429
+ # @!attribute [rw] max_results
2430
+ # The maximum number of notebook sessions to return.
2431
+ # @return [Integer]
2432
+ #
2433
+ # @!attribute [rw] next_token
2434
+ # A token generated by the Athena service that specifies where to
2435
+ # continue pagination if a previous request was truncated. To obtain
2436
+ # the next set of pages, pass in the `NextToken` from the response
2437
+ # object of the previous page call.
2438
+ # @return [String]
2439
+ #
2440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNotebookSessionsRequest AWS API Documentation
2441
+ #
2442
+ class ListNotebookSessionsRequest < Struct.new(
2443
+ :notebook_id,
2444
+ :max_results,
2445
+ :next_token)
2446
+ SENSITIVE = []
2447
+ include Aws::Structure
2448
+ end
2449
+
2450
+ # @!attribute [rw] notebook_sessions_list
2451
+ # A list of the sessions belonging to the notebook.
2452
+ # @return [Array<Types::NotebookSessionSummary>]
2453
+ #
2454
+ # @!attribute [rw] next_token
2455
+ # A token generated by the Athena service that specifies where to
2456
+ # continue pagination if a previous request was truncated. To obtain
2457
+ # the next set of pages, pass in the `NextToken` from the response
2458
+ # object of the previous page call.
2459
+ # @return [String]
2460
+ #
2461
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListNotebookSessionsResponse AWS API Documentation
2462
+ #
2463
+ class ListNotebookSessionsResponse < Struct.new(
2464
+ :notebook_sessions_list,
2465
+ :next_token)
2466
+ SENSITIVE = []
2467
+ include Aws::Structure
2468
+ end
2469
+
2470
+ # @!attribute [rw] work_group
2471
+ # The workgroup to list the prepared statements for.
2472
+ # @return [String]
1317
2473
  #
1318
2474
  # @!attribute [rw] next_token
1319
2475
  # A token generated by the Athena service that specifies where to
@@ -1356,15 +2512,6 @@ module Aws::Athena
1356
2512
  include Aws::Structure
1357
2513
  end
1358
2514
 
1359
- # @note When making an API call, you may pass ListQueryExecutionsInput
1360
- # data as a hash:
1361
- #
1362
- # {
1363
- # next_token: "Token",
1364
- # max_results: 1,
1365
- # work_group: "WorkGroupName",
1366
- # }
1367
- #
1368
2515
  # @!attribute [rw] next_token
1369
2516
  # A token generated by the Athena service that specifies where to
1370
2517
  # continue pagination if a previous request was truncated. To obtain
@@ -1409,17 +2556,76 @@ module Aws::Athena
1409
2556
  include Aws::Structure
1410
2557
  end
1411
2558
 
1412
- # @note When making an API call, you may pass ListTableMetadataInput
1413
- # data as a hash:
2559
+ # @!attribute [rw] work_group
2560
+ # The workgroup to which the session belongs.
2561
+ # @return [String]
2562
+ #
2563
+ # @!attribute [rw] state_filter
2564
+ # A filter for a specific session state. A description of each state
2565
+ # follows.
2566
+ #
2567
+ # `CREATING` - The session is being started, including acquiring
2568
+ # resources.
2569
+ #
2570
+ # `CREATED` - The session has been started.
2571
+ #
2572
+ # `IDLE` - The session is able to accept a calculation.
2573
+ #
2574
+ # `BUSY` - The session is processing another task and is unable to
2575
+ # accept a calculation.
2576
+ #
2577
+ # `TERMINATING` - The session is in the process of shutting down.
2578
+ #
2579
+ # `TERMINATED` - The session and its resources are no longer running.
2580
+ #
2581
+ # `DEGRADED` - The session has no healthy coordinators.
2582
+ #
2583
+ # `FAILED` - Due to a failure, the session and its resources are no
2584
+ # longer running.
2585
+ # @return [String]
2586
+ #
2587
+ # @!attribute [rw] max_results
2588
+ # The maximum number of sessions to return.
2589
+ # @return [Integer]
2590
+ #
2591
+ # @!attribute [rw] next_token
2592
+ # A token generated by the Athena service that specifies where to
2593
+ # continue pagination if a previous request was truncated. To obtain
2594
+ # the next set of pages, pass in the `NextToken` from the response
2595
+ # object of the previous page call.
2596
+ # @return [String]
2597
+ #
2598
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListSessionsRequest AWS API Documentation
2599
+ #
2600
+ class ListSessionsRequest < Struct.new(
2601
+ :work_group,
2602
+ :state_filter,
2603
+ :max_results,
2604
+ :next_token)
2605
+ SENSITIVE = []
2606
+ include Aws::Structure
2607
+ end
2608
+
2609
+ # @!attribute [rw] next_token
2610
+ # A token generated by the Athena service that specifies where to
2611
+ # continue pagination if a previous request was truncated. To obtain
2612
+ # the next set of pages, pass in the `NextToken` from the response
2613
+ # object of the previous page call.
2614
+ # @return [String]
2615
+ #
2616
+ # @!attribute [rw] sessions
2617
+ # A list of sessions.
2618
+ # @return [Array<Types::SessionSummary>]
1414
2619
  #
1415
- # {
1416
- # catalog_name: "CatalogNameString", # required
1417
- # database_name: "NameString", # required
1418
- # expression: "ExpressionString",
1419
- # next_token: "Token",
1420
- # max_results: 1,
1421
- # }
2620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ListSessionsResponse AWS API Documentation
1422
2621
  #
2622
+ class ListSessionsResponse < Struct.new(
2623
+ :next_token,
2624
+ :sessions)
2625
+ SENSITIVE = []
2626
+ include Aws::Structure
2627
+ end
2628
+
1423
2629
  # @!attribute [rw] catalog_name
1424
2630
  # The name of the data catalog for which table metadata should be
1425
2631
  # returned.
@@ -1478,15 +2684,6 @@ module Aws::Athena
1478
2684
  include Aws::Structure
1479
2685
  end
1480
2686
 
1481
- # @note When making an API call, you may pass ListTagsForResourceInput
1482
- # data as a hash:
1483
- #
1484
- # {
1485
- # resource_arn: "AmazonResourceName", # required
1486
- # next_token: "Token",
1487
- # max_results: 1,
1488
- # }
1489
- #
1490
2687
  # @!attribute [rw] resource_arn
1491
2688
  # Lists the tags for the resource with the specified ARN.
1492
2689
  # @return [String]
@@ -1529,14 +2726,6 @@ module Aws::Athena
1529
2726
  include Aws::Structure
1530
2727
  end
1531
2728
 
1532
- # @note When making an API call, you may pass ListWorkGroupsInput
1533
- # data as a hash:
1534
- #
1535
- # {
1536
- # next_token: "Token",
1537
- # max_results: 1,
1538
- # }
1539
- #
1540
2729
  # @!attribute [rw] next_token
1541
2730
  # A token generated by the Athena service that specifies where to
1542
2731
  # continue pagination if a previous request was truncated. To obtain
@@ -1596,8 +2785,8 @@ module Aws::Athena
1596
2785
  include Aws::Structure
1597
2786
  end
1598
2787
 
1599
- # A query, where `QueryString` is the list of SQL query statements that
1600
- # comprise the query.
2788
+ # A query, where `QueryString` contains the SQL statements that make up
2789
+ # the query.
1601
2790
  #
1602
2791
  # @!attribute [rw] name
1603
2792
  # The query name.
@@ -1612,7 +2801,7 @@ module Aws::Athena
1612
2801
  # @return [String]
1613
2802
  #
1614
2803
  # @!attribute [rw] query_string
1615
- # The SQL query statements that comprise the query.
2804
+ # The SQL statements that make up the query.
1616
2805
  # @return [String]
1617
2806
  #
1618
2807
  # @!attribute [rw] named_query_id
@@ -1636,6 +2825,66 @@ module Aws::Athena
1636
2825
  include Aws::Structure
1637
2826
  end
1638
2827
 
2828
+ # Contains metadata for notebook, including the notebook name, ID,
2829
+ # workgroup, and time created.
2830
+ #
2831
+ # @!attribute [rw] notebook_id
2832
+ # The notebook ID.
2833
+ # @return [String]
2834
+ #
2835
+ # @!attribute [rw] name
2836
+ # The name of the notebook.
2837
+ # @return [String]
2838
+ #
2839
+ # @!attribute [rw] work_group
2840
+ # The name of the Spark enabled workgroup to which the notebook
2841
+ # belongs.
2842
+ # @return [String]
2843
+ #
2844
+ # @!attribute [rw] creation_time
2845
+ # The time when the notebook was created.
2846
+ # @return [Time]
2847
+ #
2848
+ # @!attribute [rw] type
2849
+ # The type of notebook. Currently, the only valid type is `IPYNB`.
2850
+ # @return [String]
2851
+ #
2852
+ # @!attribute [rw] last_modified_time
2853
+ # The time when the notebook was last modified.
2854
+ # @return [Time]
2855
+ #
2856
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/NotebookMetadata AWS API Documentation
2857
+ #
2858
+ class NotebookMetadata < Struct.new(
2859
+ :notebook_id,
2860
+ :name,
2861
+ :work_group,
2862
+ :creation_time,
2863
+ :type,
2864
+ :last_modified_time)
2865
+ SENSITIVE = []
2866
+ include Aws::Structure
2867
+ end
2868
+
2869
+ # Contains the notebook session ID and notebook session creation time.
2870
+ #
2871
+ # @!attribute [rw] session_id
2872
+ # The notebook session ID.
2873
+ # @return [String]
2874
+ #
2875
+ # @!attribute [rw] creation_time
2876
+ # The time when the notebook session was created.
2877
+ # @return [Time]
2878
+ #
2879
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/NotebookSessionSummary AWS API Documentation
2880
+ #
2881
+ class NotebookSessionSummary < Struct.new(
2882
+ :session_id,
2883
+ :creation_time)
2884
+ SENSITIVE = []
2885
+ include Aws::Structure
2886
+ end
2887
+
1639
2888
  # A prepared SQL statement for use with Athena.
1640
2889
  #
1641
2890
  # @!attribute [rw] statement_name
@@ -1689,6 +2938,28 @@ module Aws::Athena
1689
2938
  include Aws::Structure
1690
2939
  end
1691
2940
 
2941
+ # @!attribute [rw] capacity_reservation_name
2942
+ # The name of the capacity reservation to put a capacity assignment
2943
+ # configuration for.
2944
+ # @return [String]
2945
+ #
2946
+ # @!attribute [rw] capacity_assignments
2947
+ # The list of assignments for the capacity assignment configuration.
2948
+ # @return [Array<Types::CapacityAssignment>]
2949
+ #
2950
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/PutCapacityAssignmentConfigurationInput AWS API Documentation
2951
+ #
2952
+ class PutCapacityAssignmentConfigurationInput < Struct.new(
2953
+ :capacity_reservation_name,
2954
+ :capacity_assignments)
2955
+ SENSITIVE = []
2956
+ include Aws::Structure
2957
+ end
2958
+
2959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/PutCapacityAssignmentConfigurationOutput AWS API Documentation
2960
+ #
2961
+ class PutCapacityAssignmentConfigurationOutput < Aws::EmptyStructure; end
2962
+
1692
2963
  # Information about a single instance of a query execution.
1693
2964
  #
1694
2965
  # @!attribute [rw] query_execution_id
@@ -1708,14 +2979,19 @@ module Aws::Athena
1708
2979
  # @return [String]
1709
2980
  #
1710
2981
  # @!attribute [rw] result_configuration
1711
- # The location in Amazon S3 where query results were stored and the
1712
- # encryption option, if any, used for query results. These are known
1713
- # as "client-side settings". If workgroup settings override
1714
- # client-side settings, then the query uses the location for the query
1715
- # results and the encryption configuration that are specified for the
1716
- # workgroup.
2982
+ # The location in Amazon S3 where query and calculation results are
2983
+ # stored and the encryption option, if any, used for query results.
2984
+ # These are known as "client-side settings". If workgroup settings
2985
+ # override client-side settings, then the query uses the location for
2986
+ # the query results and the encryption configuration that are
2987
+ # specified for the workgroup.
1717
2988
  # @return [Types::ResultConfiguration]
1718
2989
  #
2990
+ # @!attribute [rw] result_reuse_configuration
2991
+ # Specifies the query result reuse behavior that was used for the
2992
+ # query.
2993
+ # @return [Types::ResultReuseConfiguration]
2994
+ #
1719
2995
  # @!attribute [rw] query_execution_context
1720
2996
  # The database in which the query execution occurred.
1721
2997
  # @return [Types::QueryExecutionContext]
@@ -1739,6 +3015,17 @@ module Aws::Athena
1739
3015
  # The engine version that executed the query.
1740
3016
  # @return [Types::EngineVersion]
1741
3017
  #
3018
+ # @!attribute [rw] execution_parameters
3019
+ # A list of values for the parameters in a query. The values are
3020
+ # applied sequentially to the parameters in the query in the order in
3021
+ # which the parameters occur. The list of parameters is not returned
3022
+ # in the response.
3023
+ # @return [Array<String>]
3024
+ #
3025
+ # @!attribute [rw] substatement_type
3026
+ # The kind of query statement that was run.
3027
+ # @return [String]
3028
+ #
1742
3029
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryExecution AWS API Documentation
1743
3030
  #
1744
3031
  class QueryExecution < Struct.new(
@@ -1746,11 +3033,14 @@ module Aws::Athena
1746
3033
  :query,
1747
3034
  :statement_type,
1748
3035
  :result_configuration,
3036
+ :result_reuse_configuration,
1749
3037
  :query_execution_context,
1750
3038
  :status,
1751
3039
  :statistics,
1752
3040
  :work_group,
1753
- :engine_version)
3041
+ :engine_version,
3042
+ :execution_parameters,
3043
+ :substatement_type)
1754
3044
  SENSITIVE = []
1755
3045
  include Aws::Structure
1756
3046
  end
@@ -1758,14 +3048,6 @@ module Aws::Athena
1758
3048
  # The database and data catalog context in which the query execution
1759
3049
  # occurs.
1760
3050
  #
1761
- # @note When making an API call, you may pass QueryExecutionContext
1762
- # data as a hash:
1763
- #
1764
- # {
1765
- # database: "DatabaseString",
1766
- # catalog: "CatalogNameString",
1767
- # }
1768
- #
1769
3051
  # @!attribute [rw] database
1770
3052
  # The name of the database used in the query execution. The database
1771
3053
  # must exist in the catalog.
@@ -1834,6 +3116,11 @@ module Aws::Athena
1834
3116
  # the query results after the query engine finished running the query.
1835
3117
  # @return [Integer]
1836
3118
  #
3119
+ # @!attribute [rw] result_reuse_information
3120
+ # Contains information about whether previous query results were
3121
+ # reused for the query.
3122
+ # @return [Types::ResultReuseInformation]
3123
+ #
1837
3124
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryExecutionStatistics AWS API Documentation
1838
3125
  #
1839
3126
  class QueryExecutionStatistics < Struct.new(
@@ -1843,7 +3130,8 @@ module Aws::Athena
1843
3130
  :total_execution_time_in_millis,
1844
3131
  :query_queue_time_in_millis,
1845
3132
  :query_planning_time_in_millis,
1846
- :service_processing_time_in_millis)
3133
+ :service_processing_time_in_millis,
3134
+ :result_reuse_information)
1847
3135
  SENSITIVE = []
1848
3136
  include Aws::Structure
1849
3137
  end
@@ -1879,13 +3167,212 @@ module Aws::Athena
1879
3167
  # The date and time that the query completed.
1880
3168
  # @return [Time]
1881
3169
  #
3170
+ # @!attribute [rw] athena_error
3171
+ # Provides information about an Athena query error.
3172
+ # @return [Types::AthenaError]
3173
+ #
1882
3174
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryExecutionStatus AWS API Documentation
1883
3175
  #
1884
3176
  class QueryExecutionStatus < Struct.new(
1885
3177
  :state,
1886
3178
  :state_change_reason,
1887
3179
  :submission_date_time,
1888
- :completion_date_time)
3180
+ :completion_date_time,
3181
+ :athena_error)
3182
+ SENSITIVE = []
3183
+ include Aws::Structure
3184
+ end
3185
+
3186
+ # The query execution timeline, statistics on input and output rows and
3187
+ # bytes, and the different query stages that form the query execution
3188
+ # plan.
3189
+ #
3190
+ # @!attribute [rw] timeline
3191
+ # Timeline statistics such as query queue time, planning time,
3192
+ # execution time, service processing time, and total execution time.
3193
+ # @return [Types::QueryRuntimeStatisticsTimeline]
3194
+ #
3195
+ # @!attribute [rw] rows
3196
+ # Statistics such as input rows and bytes read by the query, rows and
3197
+ # bytes output by the query, and the number of rows written by the
3198
+ # query.
3199
+ # @return [Types::QueryRuntimeStatisticsRows]
3200
+ #
3201
+ # @!attribute [rw] output_stage
3202
+ # Stage statistics such as input and output rows and bytes, execution
3203
+ # time, and stage state. This information also includes substages and
3204
+ # the query stage plan.
3205
+ # @return [Types::QueryStage]
3206
+ #
3207
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryRuntimeStatistics AWS API Documentation
3208
+ #
3209
+ class QueryRuntimeStatistics < Struct.new(
3210
+ :timeline,
3211
+ :rows,
3212
+ :output_stage)
3213
+ SENSITIVE = []
3214
+ include Aws::Structure
3215
+ end
3216
+
3217
+ # Statistics such as input rows and bytes read by the query, rows and
3218
+ # bytes output by the query, and the number of rows written by the
3219
+ # query.
3220
+ #
3221
+ # @!attribute [rw] input_rows
3222
+ # The number of rows read to execute the query.
3223
+ # @return [Integer]
3224
+ #
3225
+ # @!attribute [rw] input_bytes
3226
+ # The number of bytes read to execute the query.
3227
+ # @return [Integer]
3228
+ #
3229
+ # @!attribute [rw] output_bytes
3230
+ # The number of bytes returned by the query.
3231
+ # @return [Integer]
3232
+ #
3233
+ # @!attribute [rw] output_rows
3234
+ # The number of rows returned by the query.
3235
+ # @return [Integer]
3236
+ #
3237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryRuntimeStatisticsRows AWS API Documentation
3238
+ #
3239
+ class QueryRuntimeStatisticsRows < Struct.new(
3240
+ :input_rows,
3241
+ :input_bytes,
3242
+ :output_bytes,
3243
+ :output_rows)
3244
+ SENSITIVE = []
3245
+ include Aws::Structure
3246
+ end
3247
+
3248
+ # Timeline statistics such as query queue time, planning time, execution
3249
+ # time, service processing time, and total execution time.
3250
+ #
3251
+ # @!attribute [rw] query_queue_time_in_millis
3252
+ # The number of milliseconds that the query was in your query queue
3253
+ # waiting for resources. Note that if transient errors occur, Athena
3254
+ # might automatically add the query back to the queue.
3255
+ # @return [Integer]
3256
+ #
3257
+ # @!attribute [rw] query_planning_time_in_millis
3258
+ # The number of milliseconds that Athena took to plan the query
3259
+ # processing flow. This includes the time spent retrieving table
3260
+ # partitions from the data source. Note that because the query engine
3261
+ # performs the query planning, query planning time is a subset of
3262
+ # engine processing time.
3263
+ # @return [Integer]
3264
+ #
3265
+ # @!attribute [rw] engine_execution_time_in_millis
3266
+ # The number of milliseconds that the query took to execute.
3267
+ # @return [Integer]
3268
+ #
3269
+ # @!attribute [rw] service_processing_time_in_millis
3270
+ # The number of milliseconds that Athena took to finalize and publish
3271
+ # the query results after the query engine finished running the query.
3272
+ # @return [Integer]
3273
+ #
3274
+ # @!attribute [rw] total_execution_time_in_millis
3275
+ # The number of milliseconds that Athena took to run the query.
3276
+ # @return [Integer]
3277
+ #
3278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryRuntimeStatisticsTimeline AWS API Documentation
3279
+ #
3280
+ class QueryRuntimeStatisticsTimeline < Struct.new(
3281
+ :query_queue_time_in_millis,
3282
+ :query_planning_time_in_millis,
3283
+ :engine_execution_time_in_millis,
3284
+ :service_processing_time_in_millis,
3285
+ :total_execution_time_in_millis)
3286
+ SENSITIVE = []
3287
+ include Aws::Structure
3288
+ end
3289
+
3290
+ # Stage statistics such as input and output rows and bytes, execution
3291
+ # time and stage state. This information also includes substages and the
3292
+ # query stage plan.
3293
+ #
3294
+ # @!attribute [rw] stage_id
3295
+ # The identifier for a stage.
3296
+ # @return [Integer]
3297
+ #
3298
+ # @!attribute [rw] state
3299
+ # State of the stage after query execution.
3300
+ # @return [String]
3301
+ #
3302
+ # @!attribute [rw] output_bytes
3303
+ # The number of bytes output from the stage after execution.
3304
+ # @return [Integer]
3305
+ #
3306
+ # @!attribute [rw] output_rows
3307
+ # The number of rows output from the stage after execution.
3308
+ # @return [Integer]
3309
+ #
3310
+ # @!attribute [rw] input_bytes
3311
+ # The number of bytes input into the stage for execution.
3312
+ # @return [Integer]
3313
+ #
3314
+ # @!attribute [rw] input_rows
3315
+ # The number of rows input into the stage for execution.
3316
+ # @return [Integer]
3317
+ #
3318
+ # @!attribute [rw] execution_time
3319
+ # Time taken to execute this stage.
3320
+ # @return [Integer]
3321
+ #
3322
+ # @!attribute [rw] query_stage_plan
3323
+ # Stage plan information such as name, identifier, sub plans, and
3324
+ # source stages.
3325
+ # @return [Types::QueryStagePlanNode]
3326
+ #
3327
+ # @!attribute [rw] sub_stages
3328
+ # List of sub query stages that form this stage execution plan.
3329
+ # @return [Array<Types::QueryStage>]
3330
+ #
3331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryStage AWS API Documentation
3332
+ #
3333
+ class QueryStage < Struct.new(
3334
+ :stage_id,
3335
+ :state,
3336
+ :output_bytes,
3337
+ :output_rows,
3338
+ :input_bytes,
3339
+ :input_rows,
3340
+ :execution_time,
3341
+ :query_stage_plan,
3342
+ :sub_stages)
3343
+ SENSITIVE = []
3344
+ include Aws::Structure
3345
+ end
3346
+
3347
+ # Stage plan information such as name, identifier, sub plans, and remote
3348
+ # sources.
3349
+ #
3350
+ # @!attribute [rw] name
3351
+ # Name of the query stage plan that describes the operation this stage
3352
+ # is performing as part of query execution.
3353
+ # @return [String]
3354
+ #
3355
+ # @!attribute [rw] identifier
3356
+ # Information about the operation this query stage plan node is
3357
+ # performing.
3358
+ # @return [String]
3359
+ #
3360
+ # @!attribute [rw] children
3361
+ # Stage plan information such as name, identifier, sub plans, and
3362
+ # remote sources of child plan nodes/
3363
+ # @return [Array<Types::QueryStagePlanNode>]
3364
+ #
3365
+ # @!attribute [rw] remote_sources
3366
+ # Source plan node IDs.
3367
+ # @return [Array<String>]
3368
+ #
3369
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/QueryStagePlanNode AWS API Documentation
3370
+ #
3371
+ class QueryStagePlanNode < Struct.new(
3372
+ :name,
3373
+ :identifier,
3374
+ :children,
3375
+ :remote_sources)
1889
3376
  SENSITIVE = []
1890
3377
  include Aws::Structure
1891
3378
  end
@@ -1896,6 +3383,7 @@ module Aws::Athena
1896
3383
  # @return [String]
1897
3384
  #
1898
3385
  # @!attribute [rw] resource_name
3386
+ # The name of the Amazon resource.
1899
3387
  # @return [String]
1900
3388
  #
1901
3389
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResourceNotFoundException AWS API Documentation
@@ -1907,30 +3395,21 @@ module Aws::Athena
1907
3395
  include Aws::Structure
1908
3396
  end
1909
3397
 
1910
- # The location in Amazon S3 where query results are stored and the
1911
- # encryption option, if any, used for query results. These are known as
1912
- # "client-side settings". If workgroup settings override client-side
1913
- # settings, then the query uses the workgroup settings.
1914
- #
1915
- # @note When making an API call, you may pass ResultConfiguration
1916
- # data as a hash:
1917
- #
1918
- # {
1919
- # output_location: "String",
1920
- # encryption_configuration: {
1921
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
1922
- # kms_key: "String",
1923
- # },
1924
- # }
3398
+ # The location in Amazon S3 where query and calculation results are
3399
+ # stored and the encryption option, if any, used for query and
3400
+ # calculation results. These are known as "client-side settings". If
3401
+ # workgroup settings override client-side settings, then the query uses
3402
+ # the workgroup settings.
1925
3403
  #
1926
3404
  # @!attribute [rw] output_location
1927
- # The location in Amazon S3 where your query results are stored, such
1928
- # as `s3://path/to/query/bucket/`. To run the query, you must specify
1929
- # the query results location using one of the ways: either for
1930
- # individual queries using either this setting (client-side), or in
1931
- # the workgroup, using WorkGroupConfiguration. If none of them is set,
1932
- # Athena issues an error that no output location is provided. For more
1933
- # information, see [Query Results][1]. If workgroup settings override
3405
+ # The location in Amazon S3 where your query and calculation results
3406
+ # are stored, such as `s3://path/to/query/bucket/`. To run the query,
3407
+ # you must specify the query results location using one of the ways:
3408
+ # either for individual queries using either this setting
3409
+ # (client-side), or in the workgroup, using WorkGroupConfiguration. If
3410
+ # none of them is set, Athena issues an error that no output location
3411
+ # is provided. For more information, see [Working with query results,
3412
+ # recent queries, and output files][1]. If workgroup settings override
1934
3413
  # client-side settings, then the query uses the settings specified for
1935
3414
  # the workgroup. See
1936
3415
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration.
@@ -1941,12 +3420,13 @@ module Aws::Athena
1941
3420
  # @return [String]
1942
3421
  #
1943
3422
  # @!attribute [rw] encryption_configuration
1944
- # If query results are encrypted in Amazon S3, indicates the
1945
- # encryption option used (for example, `SSE-KMS` or `CSE-KMS`) and key
1946
- # information. This is a client-side setting. If workgroup settings
1947
- # override client-side settings, then the query uses the encryption
1948
- # configuration that is specified for the workgroup, and also uses the
1949
- # location for storing query results specified in the workgroup. See
3423
+ # If query and calculation results are encrypted in Amazon S3,
3424
+ # indicates the encryption option used (for example, `SSE_KMS` or
3425
+ # `CSE_KMS`) and key information. This is a client-side setting. If
3426
+ # workgroup settings override client-side settings, then the query
3427
+ # uses the encryption configuration that is specified for the
3428
+ # workgroup, and also uses the location for storing query results
3429
+ # specified in the workgroup. See
1950
3430
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration and [Workgroup
1951
3431
  # Settings Override Client-Side Settings][1].
1952
3432
  #
@@ -1955,11 +3435,50 @@ module Aws::Athena
1955
3435
  # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
1956
3436
  # @return [Types::EncryptionConfiguration]
1957
3437
  #
3438
+ # @!attribute [rw] expected_bucket_owner
3439
+ # The Amazon Web Services account ID that you expect to be the owner
3440
+ # of the Amazon S3 bucket specified by
3441
+ # ResultConfiguration$OutputLocation. If set, Athena uses the value
3442
+ # for `ExpectedBucketOwner` when it makes Amazon S3 calls to your
3443
+ # specified output location. If the `ExpectedBucketOwner` Amazon Web
3444
+ # Services account ID does not match the actual owner of the Amazon S3
3445
+ # bucket, the call fails with a permissions error.
3446
+ #
3447
+ # This is a client-side setting. If workgroup settings override
3448
+ # client-side settings, then the query uses the `ExpectedBucketOwner`
3449
+ # setting that is specified for the workgroup, and also uses the
3450
+ # location for storing query results specified in the workgroup. See
3451
+ # WorkGroupConfiguration$EnforceWorkGroupConfiguration and [Workgroup
3452
+ # Settings Override Client-Side Settings][1].
3453
+ #
3454
+ #
3455
+ #
3456
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
3457
+ # @return [String]
3458
+ #
3459
+ # @!attribute [rw] acl_configuration
3460
+ # Indicates that an Amazon S3 canned ACL should be set to control
3461
+ # ownership of stored query results. Currently the only supported
3462
+ # canned ACL is `BUCKET_OWNER_FULL_CONTROL`. This is a client-side
3463
+ # setting. If workgroup settings override client-side settings, then
3464
+ # the query uses the ACL configuration that is specified for the
3465
+ # workgroup, and also uses the location for storing query results
3466
+ # specified in the workgroup. For more information, see
3467
+ # WorkGroupConfiguration$EnforceWorkGroupConfiguration and [Workgroup
3468
+ # Settings Override Client-Side Settings][1].
3469
+ #
3470
+ #
3471
+ #
3472
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
3473
+ # @return [Types::AclConfiguration]
3474
+ #
1958
3475
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultConfiguration AWS API Documentation
1959
3476
  #
1960
3477
  class ResultConfiguration < Struct.new(
1961
3478
  :output_location,
1962
- :encryption_configuration)
3479
+ :encryption_configuration,
3480
+ :expected_bucket_owner,
3481
+ :acl_configuration)
1963
3482
  SENSITIVE = []
1964
3483
  include Aws::Structure
1965
3484
  end
@@ -1967,26 +3486,14 @@ module Aws::Athena
1967
3486
  # The information about the updates in the query results, such as output
1968
3487
  # location and encryption configuration for the query results.
1969
3488
  #
1970
- # @note When making an API call, you may pass ResultConfigurationUpdates
1971
- # data as a hash:
1972
- #
1973
- # {
1974
- # output_location: "String",
1975
- # remove_output_location: false,
1976
- # encryption_configuration: {
1977
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
1978
- # kms_key: "String",
1979
- # },
1980
- # remove_encryption_configuration: false,
1981
- # }
1982
- #
1983
3489
  # @!attribute [rw] output_location
1984
- # The location in Amazon S3 where your query results are stored, such
1985
- # as `s3://path/to/query/bucket/`. For more information, see [Query
1986
- # Results][1] If workgroup settings override client-side settings,
1987
- # then the query uses the location for the query results and the
1988
- # encryption configuration that are specified for the workgroup. The
1989
- # "workgroup settings override" is specified in
3490
+ # The location in Amazon S3 where your query and calculation results
3491
+ # are stored, such as `s3://path/to/query/bucket/`. For more
3492
+ # information, see [Working with query results, recent queries, and
3493
+ # output files][1]. If workgroup settings override client-side
3494
+ # settings, then the query uses the location for the query results and
3495
+ # the encryption configuration that are specified for the workgroup.
3496
+ # The "workgroup settings override" is specified in
1990
3497
  # `EnforceWorkGroupConfiguration` (true/false) in the
1991
3498
  # `WorkGroupConfiguration`. See
1992
3499
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration.
@@ -2012,7 +3519,7 @@ module Aws::Athena
2012
3519
  # @return [Boolean]
2013
3520
  #
2014
3521
  # @!attribute [rw] encryption_configuration
2015
- # The encryption configuration for the query results.
3522
+ # The encryption configuration for query and calculation results.
2016
3523
  # @return [Types::EncryptionConfiguration]
2017
3524
  #
2018
3525
  # @!attribute [rw] remove_encryption_configuration
@@ -2031,18 +3538,129 @@ module Aws::Athena
2031
3538
  # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
2032
3539
  # @return [Boolean]
2033
3540
  #
3541
+ # @!attribute [rw] expected_bucket_owner
3542
+ # The Amazon Web Services account ID that you expect to be the owner
3543
+ # of the Amazon S3 bucket specified by
3544
+ # ResultConfiguration$OutputLocation. If set, Athena uses the value
3545
+ # for `ExpectedBucketOwner` when it makes Amazon S3 calls to your
3546
+ # specified output location. If the `ExpectedBucketOwner` Amazon Web
3547
+ # Services account ID does not match the actual owner of the Amazon S3
3548
+ # bucket, the call fails with a permissions error.
3549
+ #
3550
+ # If workgroup settings override client-side settings, then the query
3551
+ # uses the `ExpectedBucketOwner` setting that is specified for the
3552
+ # workgroup, and also uses the location for storing query results
3553
+ # specified in the workgroup. See
3554
+ # WorkGroupConfiguration$EnforceWorkGroupConfiguration and [Workgroup
3555
+ # Settings Override Client-Side Settings][1].
3556
+ #
3557
+ #
3558
+ #
3559
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
3560
+ # @return [String]
3561
+ #
3562
+ # @!attribute [rw] remove_expected_bucket_owner
3563
+ # If set to "true", removes the Amazon Web Services account ID
3564
+ # previously specified for ResultConfiguration$ExpectedBucketOwner. If
3565
+ # set to "false" or not set, and a value is present in the
3566
+ # `ExpectedBucketOwner` in `ResultConfigurationUpdates` (the
3567
+ # client-side setting), the `ExpectedBucketOwner` in the workgroup's
3568
+ # `ResultConfiguration` is updated with the new value. For more
3569
+ # information, see [Workgroup Settings Override Client-Side
3570
+ # Settings][1].
3571
+ #
3572
+ #
3573
+ #
3574
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
3575
+ # @return [Boolean]
3576
+ #
3577
+ # @!attribute [rw] acl_configuration
3578
+ # The ACL configuration for the query results.
3579
+ # @return [Types::AclConfiguration]
3580
+ #
3581
+ # @!attribute [rw] remove_acl_configuration
3582
+ # If set to `true`, indicates that the previously-specified ACL
3583
+ # configuration for queries in this workgroup should be ignored and
3584
+ # set to null. If set to `false` or not set, and a value is present in
3585
+ # the `AclConfiguration` of `ResultConfigurationUpdates`, the
3586
+ # `AclConfiguration` in the workgroup's `ResultConfiguration` is
3587
+ # updated with the new value. For more information, see [Workgroup
3588
+ # Settings Override Client-Side Settings][1].
3589
+ #
3590
+ #
3591
+ #
3592
+ # [1]: https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html
3593
+ # @return [Boolean]
3594
+ #
2034
3595
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultConfigurationUpdates AWS API Documentation
2035
3596
  #
2036
3597
  class ResultConfigurationUpdates < Struct.new(
2037
3598
  :output_location,
2038
3599
  :remove_output_location,
2039
3600
  :encryption_configuration,
2040
- :remove_encryption_configuration)
3601
+ :remove_encryption_configuration,
3602
+ :expected_bucket_owner,
3603
+ :remove_expected_bucket_owner,
3604
+ :acl_configuration,
3605
+ :remove_acl_configuration)
3606
+ SENSITIVE = []
3607
+ include Aws::Structure
3608
+ end
3609
+
3610
+ # Specifies whether previous query results are reused, and if so, their
3611
+ # maximum age.
3612
+ #
3613
+ # @!attribute [rw] enabled
3614
+ # True if previous query results can be reused when the query is run;
3615
+ # otherwise, false. The default is false.
3616
+ # @return [Boolean]
3617
+ #
3618
+ # @!attribute [rw] max_age_in_minutes
3619
+ # Specifies, in minutes, the maximum age of a previous query result
3620
+ # that Athena should consider for reuse. The default is 60.
3621
+ # @return [Integer]
3622
+ #
3623
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultReuseByAgeConfiguration AWS API Documentation
3624
+ #
3625
+ class ResultReuseByAgeConfiguration < Struct.new(
3626
+ :enabled,
3627
+ :max_age_in_minutes)
3628
+ SENSITIVE = []
3629
+ include Aws::Structure
3630
+ end
3631
+
3632
+ # Specifies the query result reuse behavior for the query.
3633
+ #
3634
+ # @!attribute [rw] result_reuse_by_age_configuration
3635
+ # Specifies whether previous query results are reused, and if so,
3636
+ # their maximum age.
3637
+ # @return [Types::ResultReuseByAgeConfiguration]
3638
+ #
3639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultReuseConfiguration AWS API Documentation
3640
+ #
3641
+ class ResultReuseConfiguration < Struct.new(
3642
+ :result_reuse_by_age_configuration)
3643
+ SENSITIVE = []
3644
+ include Aws::Structure
3645
+ end
3646
+
3647
+ # Contains information about whether the result of a previous query was
3648
+ # reused.
3649
+ #
3650
+ # @!attribute [rw] reused_previous_result
3651
+ # True if a previous query result was reused; false if the result was
3652
+ # generated from a new run of the query.
3653
+ # @return [Boolean]
3654
+ #
3655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultReuseInformation AWS API Documentation
3656
+ #
3657
+ class ResultReuseInformation < Struct.new(
3658
+ :reused_previous_result)
2041
3659
  SENSITIVE = []
2042
3660
  include Aws::Structure
2043
3661
  end
2044
3662
 
2045
- # The metadata and rows that comprise a query result set. The metadata
3663
+ # The metadata and rows that make up a query result set. The metadata
2046
3664
  # describes the column structure and data types. To return a `ResultSet`
2047
3665
  # object, use GetQueryResults.
2048
3666
  #
@@ -2072,48 +3690,257 @@ module Aws::Athena
2072
3690
  # Information about the columns returned in a query result metadata.
2073
3691
  # @return [Array<Types::ColumnInfo>]
2074
3692
  #
2075
- # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultSetMetadata AWS API Documentation
3693
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/ResultSetMetadata AWS API Documentation
3694
+ #
3695
+ class ResultSetMetadata < Struct.new(
3696
+ :column_info)
3697
+ SENSITIVE = []
3698
+ include Aws::Structure
3699
+ end
3700
+
3701
+ # The rows that make up a query result table.
3702
+ #
3703
+ # @!attribute [rw] data
3704
+ # The data that populates a row in a query result table.
3705
+ # @return [Array<Types::Datum>]
3706
+ #
3707
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/Row AWS API Documentation
3708
+ #
3709
+ class Row < Struct.new(
3710
+ :data)
3711
+ SENSITIVE = []
3712
+ include Aws::Structure
3713
+ end
3714
+
3715
+ # The specified session already exists.
3716
+ #
3717
+ # @!attribute [rw] message
3718
+ # @return [String]
3719
+ #
3720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/SessionAlreadyExistsException AWS API Documentation
3721
+ #
3722
+ class SessionAlreadyExistsException < Struct.new(
3723
+ :message)
3724
+ SENSITIVE = []
3725
+ include Aws::Structure
3726
+ end
3727
+
3728
+ # Contains session configuration information.
3729
+ #
3730
+ # @!attribute [rw] execution_role
3731
+ # The ARN of the execution role used for the session.
3732
+ # @return [String]
3733
+ #
3734
+ # @!attribute [rw] working_directory
3735
+ # The Amazon S3 location that stores information for the notebook.
3736
+ # @return [String]
3737
+ #
3738
+ # @!attribute [rw] idle_timeout_seconds
3739
+ # The idle timeout in seconds for the session.
3740
+ # @return [Integer]
3741
+ #
3742
+ # @!attribute [rw] encryption_configuration
3743
+ # If query and calculation results are encrypted in Amazon S3,
3744
+ # indicates the encryption option used (for example, `SSE_KMS` or
3745
+ # `CSE_KMS`) and key information.
3746
+ # @return [Types::EncryptionConfiguration]
3747
+ #
3748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/SessionConfiguration AWS API Documentation
3749
+ #
3750
+ class SessionConfiguration < Struct.new(
3751
+ :execution_role,
3752
+ :working_directory,
3753
+ :idle_timeout_seconds,
3754
+ :encryption_configuration)
3755
+ SENSITIVE = []
3756
+ include Aws::Structure
3757
+ end
3758
+
3759
+ # Contains statistics for a session.
3760
+ #
3761
+ # @!attribute [rw] dpu_execution_in_millis
3762
+ # The data processing unit execution time for a session in
3763
+ # milliseconds.
3764
+ # @return [Integer]
3765
+ #
3766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/SessionStatistics AWS API Documentation
3767
+ #
3768
+ class SessionStatistics < Struct.new(
3769
+ :dpu_execution_in_millis)
3770
+ SENSITIVE = []
3771
+ include Aws::Structure
3772
+ end
3773
+
3774
+ # Contains information about the status of a session.
3775
+ #
3776
+ # @!attribute [rw] start_date_time
3777
+ # The date and time that the session started.
3778
+ # @return [Time]
3779
+ #
3780
+ # @!attribute [rw] last_modified_date_time
3781
+ # The most recent date and time that the session was modified.
3782
+ # @return [Time]
3783
+ #
3784
+ # @!attribute [rw] end_date_time
3785
+ # The date and time that the session ended.
3786
+ # @return [Time]
3787
+ #
3788
+ # @!attribute [rw] idle_since_date_time
3789
+ # The date and time starting at which the session became idle. Can be
3790
+ # empty if the session is not currently idle.
3791
+ # @return [Time]
3792
+ #
3793
+ # @!attribute [rw] state
3794
+ # The state of the session. A description of each state follows.
3795
+ #
3796
+ # `CREATING` - The session is being started, including acquiring
3797
+ # resources.
3798
+ #
3799
+ # `CREATED` - The session has been started.
3800
+ #
3801
+ # `IDLE` - The session is able to accept a calculation.
3802
+ #
3803
+ # `BUSY` - The session is processing another task and is unable to
3804
+ # accept a calculation.
3805
+ #
3806
+ # `TERMINATING` - The session is in the process of shutting down.
3807
+ #
3808
+ # `TERMINATED` - The session and its resources are no longer running.
3809
+ #
3810
+ # `DEGRADED` - The session has no healthy coordinators.
3811
+ #
3812
+ # `FAILED` - Due to a failure, the session and its resources are no
3813
+ # longer running.
3814
+ # @return [String]
3815
+ #
3816
+ # @!attribute [rw] state_change_reason
3817
+ # The reason for the session state change (for example, canceled
3818
+ # because the session was terminated).
3819
+ # @return [String]
3820
+ #
3821
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/SessionStatus AWS API Documentation
3822
+ #
3823
+ class SessionStatus < Struct.new(
3824
+ :start_date_time,
3825
+ :last_modified_date_time,
3826
+ :end_date_time,
3827
+ :idle_since_date_time,
3828
+ :state,
3829
+ :state_change_reason)
3830
+ SENSITIVE = []
3831
+ include Aws::Structure
3832
+ end
3833
+
3834
+ # Contains summary information about a session.
3835
+ #
3836
+ # @!attribute [rw] session_id
3837
+ # The session ID.
3838
+ # @return [String]
3839
+ #
3840
+ # @!attribute [rw] description
3841
+ # The session description.
3842
+ # @return [String]
3843
+ #
3844
+ # @!attribute [rw] engine_version
3845
+ # The engine version used by the session (for example, `PySpark engine
3846
+ # version 3`).
3847
+ # @return [Types::EngineVersion]
3848
+ #
3849
+ # @!attribute [rw] notebook_version
3850
+ # The notebook version.
3851
+ # @return [String]
3852
+ #
3853
+ # @!attribute [rw] status
3854
+ # Contains information about the session status.
3855
+ # @return [Types::SessionStatus]
3856
+ #
3857
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/SessionSummary AWS API Documentation
3858
+ #
3859
+ class SessionSummary < Struct.new(
3860
+ :session_id,
3861
+ :description,
3862
+ :engine_version,
3863
+ :notebook_version,
3864
+ :status)
3865
+ SENSITIVE = []
3866
+ include Aws::Structure
3867
+ end
3868
+
3869
+ # @!attribute [rw] session_id
3870
+ # The session ID.
3871
+ # @return [String]
3872
+ #
3873
+ # @!attribute [rw] description
3874
+ # A description of the calculation.
3875
+ # @return [String]
3876
+ #
3877
+ # @!attribute [rw] calculation_configuration
3878
+ # Contains configuration information for the calculation.
3879
+ # @return [Types::CalculationConfiguration]
3880
+ #
3881
+ # @!attribute [rw] code_block
3882
+ # A string that contains the code of the calculation.
3883
+ # @return [String]
3884
+ #
3885
+ # @!attribute [rw] client_request_token
3886
+ # A unique case-sensitive string used to ensure the request to create
3887
+ # the calculation is idempotent (executes only once). If another
3888
+ # `StartCalculationExecutionRequest` is received, the same response is
3889
+ # returned and another calculation is not created. If a parameter has
3890
+ # changed, an error is returned.
3891
+ #
3892
+ # This token is listed as not required because Amazon Web Services
3893
+ # SDKs (for example the Amazon Web Services SDK for Java)
3894
+ # auto-generate the token for users. If you are not using the Amazon
3895
+ # Web Services SDK or the Amazon Web Services CLI, you must provide
3896
+ # this token or the action will fail.
3897
+ # @return [String]
3898
+ #
3899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartCalculationExecutionRequest AWS API Documentation
2076
3900
  #
2077
- class ResultSetMetadata < Struct.new(
2078
- :column_info)
3901
+ class StartCalculationExecutionRequest < Struct.new(
3902
+ :session_id,
3903
+ :description,
3904
+ :calculation_configuration,
3905
+ :code_block,
3906
+ :client_request_token)
2079
3907
  SENSITIVE = []
2080
3908
  include Aws::Structure
2081
3909
  end
2082
3910
 
2083
- # The rows that comprise a query result table.
3911
+ # @!attribute [rw] calculation_execution_id
3912
+ # The calculation execution UUID.
3913
+ # @return [String]
2084
3914
  #
2085
- # @!attribute [rw] data
2086
- # The data that populates a row in a query result table.
2087
- # @return [Array<Types::Datum>]
3915
+ # @!attribute [rw] state
3916
+ # `CREATING` - The calculation is in the process of being created.
2088
3917
  #
2089
- # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/Row AWS API Documentation
3918
+ # `CREATED` - The calculation has been created and is ready to run.
2090
3919
  #
2091
- class Row < Struct.new(
2092
- :data)
3920
+ # `QUEUED` - The calculation has been queued for processing.
3921
+ #
3922
+ # `RUNNING` - The calculation is running.
3923
+ #
3924
+ # `CANCELING` - A request to cancel the calculation has been received
3925
+ # and the system is working to stop it.
3926
+ #
3927
+ # `CANCELED` - The calculation is no longer running as the result of a
3928
+ # cancel request.
3929
+ #
3930
+ # `COMPLETED` - The calculation has completed without error.
3931
+ #
3932
+ # `FAILED` - The calculation failed and is no longer running.
3933
+ # @return [String]
3934
+ #
3935
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartCalculationExecutionResponse AWS API Documentation
3936
+ #
3937
+ class StartCalculationExecutionResponse < Struct.new(
3938
+ :calculation_execution_id,
3939
+ :state)
2093
3940
  SENSITIVE = []
2094
3941
  include Aws::Structure
2095
3942
  end
2096
3943
 
2097
- # @note When making an API call, you may pass StartQueryExecutionInput
2098
- # data as a hash:
2099
- #
2100
- # {
2101
- # query_string: "QueryString", # required
2102
- # client_request_token: "IdempotencyToken",
2103
- # query_execution_context: {
2104
- # database: "DatabaseString",
2105
- # catalog: "CatalogNameString",
2106
- # },
2107
- # result_configuration: {
2108
- # output_location: "String",
2109
- # encryption_configuration: {
2110
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
2111
- # kms_key: "String",
2112
- # },
2113
- # },
2114
- # work_group: "WorkGroupName",
2115
- # }
2116
- #
2117
3944
  # @!attribute [rw] query_string
2118
3945
  # The SQL query statements to be executed.
2119
3946
  # @return [String]
@@ -2153,6 +3980,16 @@ module Aws::Athena
2153
3980
  # The name of the workgroup in which the query is being started.
2154
3981
  # @return [String]
2155
3982
  #
3983
+ # @!attribute [rw] execution_parameters
3984
+ # A list of values for the parameters in a query. The values are
3985
+ # applied sequentially to the parameters in the query in the order in
3986
+ # which the parameters occur.
3987
+ # @return [Array<String>]
3988
+ #
3989
+ # @!attribute [rw] result_reuse_configuration
3990
+ # Specifies the query result reuse behavior for the query.
3991
+ # @return [Types::ResultReuseConfiguration]
3992
+ #
2156
3993
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartQueryExecutionInput AWS API Documentation
2157
3994
  #
2158
3995
  class StartQueryExecutionInput < Struct.new(
@@ -2160,7 +3997,9 @@ module Aws::Athena
2160
3997
  :client_request_token,
2161
3998
  :query_execution_context,
2162
3999
  :result_configuration,
2163
- :work_group)
4000
+ :work_group,
4001
+ :execution_parameters,
4002
+ :result_reuse_configuration)
2164
4003
  SENSITIVE = []
2165
4004
  include Aws::Structure
2166
4005
  end
@@ -2177,13 +4016,135 @@ module Aws::Athena
2177
4016
  include Aws::Structure
2178
4017
  end
2179
4018
 
2180
- # @note When making an API call, you may pass StopQueryExecutionInput
2181
- # data as a hash:
4019
+ # @!attribute [rw] description
4020
+ # The session description.
4021
+ # @return [String]
4022
+ #
4023
+ # @!attribute [rw] work_group
4024
+ # The workgroup to which the session belongs.
4025
+ # @return [String]
4026
+ #
4027
+ # @!attribute [rw] engine_configuration
4028
+ # Contains engine data processing unit (DPU) configuration settings
4029
+ # and parameter mappings.
4030
+ # @return [Types::EngineConfiguration]
4031
+ #
4032
+ # @!attribute [rw] notebook_version
4033
+ # The notebook version. This value is supplied automatically for
4034
+ # notebook sessions in the Athena console and is not required for
4035
+ # programmatic session access. The only valid notebook version is
4036
+ # `Athena notebook version 1`. If you specify a value for
4037
+ # `NotebookVersion`, you must also specify a value for `NotebookId`.
4038
+ # See EngineConfiguration$AdditionalConfigs.
4039
+ # @return [String]
4040
+ #
4041
+ # @!attribute [rw] session_idle_timeout_in_minutes
4042
+ # The idle timeout in minutes for the session.
4043
+ # @return [Integer]
4044
+ #
4045
+ # @!attribute [rw] client_request_token
4046
+ # A unique case-sensitive string used to ensure the request to create
4047
+ # the session is idempotent (executes only once). If another
4048
+ # `StartSessionRequest` is received, the same response is returned and
4049
+ # another session is not created. If a parameter has changed, an error
4050
+ # is returned.
4051
+ #
4052
+ # This token is listed as not required because Amazon Web Services
4053
+ # SDKs (for example the Amazon Web Services SDK for Java)
4054
+ # auto-generate the token for users. If you are not using the Amazon
4055
+ # Web Services SDK or the Amazon Web Services CLI, you must provide
4056
+ # this token or the action will fail.
4057
+ # @return [String]
4058
+ #
4059
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartSessionRequest AWS API Documentation
4060
+ #
4061
+ class StartSessionRequest < Struct.new(
4062
+ :description,
4063
+ :work_group,
4064
+ :engine_configuration,
4065
+ :notebook_version,
4066
+ :session_idle_timeout_in_minutes,
4067
+ :client_request_token)
4068
+ SENSITIVE = []
4069
+ include Aws::Structure
4070
+ end
4071
+
4072
+ # @!attribute [rw] session_id
4073
+ # The session ID.
4074
+ # @return [String]
4075
+ #
4076
+ # @!attribute [rw] state
4077
+ # The state of the session. A description of each state follows.
4078
+ #
4079
+ # `CREATING` - The session is being started, including acquiring
4080
+ # resources.
4081
+ #
4082
+ # `CREATED` - The session has been started.
4083
+ #
4084
+ # `IDLE` - The session is able to accept a calculation.
4085
+ #
4086
+ # `BUSY` - The session is processing another task and is unable to
4087
+ # accept a calculation.
4088
+ #
4089
+ # `TERMINATING` - The session is in the process of shutting down.
4090
+ #
4091
+ # `TERMINATED` - The session and its resources are no longer running.
4092
+ #
4093
+ # `DEGRADED` - The session has no healthy coordinators.
4094
+ #
4095
+ # `FAILED` - Due to a failure, the session and its resources are no
4096
+ # longer running.
4097
+ # @return [String]
4098
+ #
4099
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StartSessionResponse AWS API Documentation
4100
+ #
4101
+ class StartSessionResponse < Struct.new(
4102
+ :session_id,
4103
+ :state)
4104
+ SENSITIVE = []
4105
+ include Aws::Structure
4106
+ end
4107
+
4108
+ # @!attribute [rw] calculation_execution_id
4109
+ # The calculation execution UUID.
4110
+ # @return [String]
4111
+ #
4112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StopCalculationExecutionRequest AWS API Documentation
4113
+ #
4114
+ class StopCalculationExecutionRequest < Struct.new(
4115
+ :calculation_execution_id)
4116
+ SENSITIVE = []
4117
+ include Aws::Structure
4118
+ end
4119
+
4120
+ # @!attribute [rw] state
4121
+ # `CREATING` - The calculation is in the process of being created.
4122
+ #
4123
+ # `CREATED` - The calculation has been created and is ready to run.
4124
+ #
4125
+ # `QUEUED` - The calculation has been queued for processing.
4126
+ #
4127
+ # `RUNNING` - The calculation is running.
4128
+ #
4129
+ # `CANCELING` - A request to cancel the calculation has been received
4130
+ # and the system is working to stop it.
4131
+ #
4132
+ # `CANCELED` - The calculation is no longer running as the result of a
4133
+ # cancel request.
4134
+ #
4135
+ # `COMPLETED` - The calculation has completed without error.
4136
+ #
4137
+ # `FAILED` - The calculation failed and is no longer running.
4138
+ # @return [String]
2182
4139
  #
2183
- # {
2184
- # query_execution_id: "QueryExecutionId", # required
2185
- # }
4140
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/StopCalculationExecutionResponse AWS API Documentation
2186
4141
  #
4142
+ class StopCalculationExecutionResponse < Struct.new(
4143
+ :state)
4144
+ SENSITIVE = []
4145
+ include Aws::Structure
4146
+ end
4147
+
2187
4148
  # @!attribute [rw] query_execution_id
2188
4149
  # The unique ID of the query execution to stop.
2189
4150
  #
@@ -2247,14 +4208,14 @@ module Aws::Athena
2247
4208
  include Aws::Structure
2248
4209
  end
2249
4210
 
2250
- # A label that you assign to a resource. In Athena, a resource can be a
2251
- # workgroup or data catalog. Each tag consists of a key and an optional
2252
- # value, both of which you define. For example, you can use tags to
2253
- # categorize Athena workgroups or data catalogs by purpose, owner, or
2254
- # environment. Use a consistent set of tag keys to make it easier to
2255
- # search and filter workgroups or data catalogs in your account. For
2256
- # best practices, see [Tagging Best Practices][1]. Tag keys can be from
2257
- # 1 to 128 UTF-8 Unicode characters, and tag values can be from 0 to 256
4211
+ # A label that you assign to a resource. Athena resources include
4212
+ # workgroups, data catalogs, and capacity reservations. Each tag
4213
+ # consists of a key and an optional value, both of which you define. For
4214
+ # example, you can use tags to categorize Athena resources by purpose,
4215
+ # owner, or environment. Use a consistent set of tag keys to make it
4216
+ # easier to search and filter the resources in your account. For best
4217
+ # practices, see [Tagging Best Practices][1]. Tag keys can be from 1 to
4218
+ # 128 UTF-8 Unicode characters, and tag values can be from 0 to 256
2258
4219
  # UTF-8 Unicode characters. Tags can use letters and numbers
2259
4220
  # representable in UTF-8, and the following characters: + - = . \_ : /
2260
4221
  # @. Tag keys and values are case-sensitive. Tag keys must be unique per
@@ -2262,15 +4223,7 @@ module Aws::Athena
2262
4223
  #
2263
4224
  #
2264
4225
  #
2265
- # [1]: https://aws.amazon.com/answers/account-management/aws-tagging-strategies/
2266
- #
2267
- # @note When making an API call, you may pass Tag
2268
- # data as a hash:
2269
- #
2270
- # {
2271
- # key: "TagKey",
2272
- # value: "TagValue",
2273
- # }
4226
+ # [1]: https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html
2274
4227
  #
2275
4228
  # @!attribute [rw] key
2276
4229
  # A tag key. The tag key length is from 1 to 128 Unicode characters in
@@ -2295,27 +4248,14 @@ module Aws::Athena
2295
4248
  include Aws::Structure
2296
4249
  end
2297
4250
 
2298
- # @note When making an API call, you may pass TagResourceInput
2299
- # data as a hash:
2300
- #
2301
- # {
2302
- # resource_arn: "AmazonResourceName", # required
2303
- # tags: [ # required
2304
- # {
2305
- # key: "TagKey",
2306
- # value: "TagValue",
2307
- # },
2308
- # ],
2309
- # }
2310
- #
2311
4251
  # @!attribute [rw] resource_arn
2312
- # Specifies the ARN of the Athena resource (workgroup or data catalog)
2313
- # to which tags are to be added.
4252
+ # Specifies the ARN of the Athena resource to which tags are to be
4253
+ # added.
2314
4254
  # @return [String]
2315
4255
  #
2316
4256
  # @!attribute [rw] tags
2317
4257
  # A collection of one or more tags, separated by commas, to be added
2318
- # to an Athena workgroup or data catalog resource.
4258
+ # to an Athena resource.
2319
4259
  # @return [Array<Types::Tag>]
2320
4260
  #
2321
4261
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/TagResourceInput AWS API Documentation
@@ -2331,6 +4271,49 @@ module Aws::Athena
2331
4271
  #
2332
4272
  class TagResourceOutput < Aws::EmptyStructure; end
2333
4273
 
4274
+ # @!attribute [rw] session_id
4275
+ # The session ID.
4276
+ # @return [String]
4277
+ #
4278
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/TerminateSessionRequest AWS API Documentation
4279
+ #
4280
+ class TerminateSessionRequest < Struct.new(
4281
+ :session_id)
4282
+ SENSITIVE = []
4283
+ include Aws::Structure
4284
+ end
4285
+
4286
+ # @!attribute [rw] state
4287
+ # The state of the session. A description of each state follows.
4288
+ #
4289
+ # `CREATING` - The session is being started, including acquiring
4290
+ # resources.
4291
+ #
4292
+ # `CREATED` - The session has been started.
4293
+ #
4294
+ # `IDLE` - The session is able to accept a calculation.
4295
+ #
4296
+ # `BUSY` - The session is processing another task and is unable to
4297
+ # accept a calculation.
4298
+ #
4299
+ # `TERMINATING` - The session is in the process of shutting down.
4300
+ #
4301
+ # `TERMINATED` - The session and its resources are no longer running.
4302
+ #
4303
+ # `DEGRADED` - The session has no healthy coordinators.
4304
+ #
4305
+ # `FAILED` - Due to a failure, the session and its resources are no
4306
+ # longer running.
4307
+ # @return [String]
4308
+ #
4309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/TerminateSessionResponse AWS API Documentation
4310
+ #
4311
+ class TerminateSessionResponse < Struct.new(
4312
+ :state)
4313
+ SENSITIVE = []
4314
+ include Aws::Structure
4315
+ end
4316
+
2334
4317
  # Indicates that the request was throttled.
2335
4318
  #
2336
4319
  # @!attribute [rw] message
@@ -2376,6 +4359,42 @@ module Aws::Athena
2376
4359
  include Aws::Structure
2377
4360
  end
2378
4361
 
4362
+ # The name of a prepared statement that could not be returned.
4363
+ #
4364
+ # @!attribute [rw] statement_name
4365
+ # The name of a prepared statement that could not be returned due to
4366
+ # an error.
4367
+ # @return [String]
4368
+ #
4369
+ # @!attribute [rw] error_code
4370
+ # The error code returned when the request for the prepared statement
4371
+ # failed.
4372
+ # @return [String]
4373
+ #
4374
+ # @!attribute [rw] error_message
4375
+ # The error message containing the reason why the prepared statement
4376
+ # could not be returned. The following error messages are possible:
4377
+ #
4378
+ # * `INVALID_INPUT` - The name of the prepared statement that was
4379
+ # provided is not valid (for example, the name is too long).
4380
+ #
4381
+ # * `STATEMENT_NOT_FOUND` - A prepared statement with the name
4382
+ # provided could not be found.
4383
+ #
4384
+ # * `UNAUTHORIZED` - The requester does not have permission to access
4385
+ # the workgroup that contains the prepared statement.
4386
+ # @return [String]
4387
+ #
4388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UnprocessedPreparedStatementName AWS API Documentation
4389
+ #
4390
+ class UnprocessedPreparedStatementName < Struct.new(
4391
+ :statement_name,
4392
+ :error_code,
4393
+ :error_message)
4394
+ SENSITIVE = []
4395
+ include Aws::Structure
4396
+ end
4397
+
2379
4398
  # Describes a query execution that failed to process.
2380
4399
  #
2381
4400
  # @!attribute [rw] query_execution_id
@@ -2402,14 +4421,6 @@ module Aws::Athena
2402
4421
  include Aws::Structure
2403
4422
  end
2404
4423
 
2405
- # @note When making an API call, you may pass UntagResourceInput
2406
- # data as a hash:
2407
- #
2408
- # {
2409
- # resource_arn: "AmazonResourceName", # required
2410
- # tag_keys: ["TagKey"], # required
2411
- # }
2412
- #
2413
4424
  # @!attribute [rw] resource_arn
2414
4425
  # Specifies the ARN of the resource from which tags are to be removed.
2415
4426
  # @return [String]
@@ -2432,22 +4443,33 @@ module Aws::Athena
2432
4443
  #
2433
4444
  class UntagResourceOutput < Aws::EmptyStructure; end
2434
4445
 
2435
- # @note When making an API call, you may pass UpdateDataCatalogInput
2436
- # data as a hash:
4446
+ # @!attribute [rw] target_dpus
4447
+ # The new number of requested data processing units.
4448
+ # @return [Integer]
4449
+ #
4450
+ # @!attribute [rw] name
4451
+ # The name of the capacity reservation.
4452
+ # @return [String]
2437
4453
  #
2438
- # {
2439
- # name: "CatalogNameString", # required
2440
- # type: "LAMBDA", # required, accepts LAMBDA, GLUE, HIVE
2441
- # description: "DescriptionString",
2442
- # parameters: {
2443
- # "KeyString" => "ParametersMapValue",
2444
- # },
2445
- # }
4454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateCapacityReservationInput AWS API Documentation
4455
+ #
4456
+ class UpdateCapacityReservationInput < Struct.new(
4457
+ :target_dpus,
4458
+ :name)
4459
+ SENSITIVE = []
4460
+ include Aws::Structure
4461
+ end
4462
+
4463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateCapacityReservationOutput AWS API Documentation
2446
4464
  #
4465
+ class UpdateCapacityReservationOutput < Aws::EmptyStructure; end
4466
+
2447
4467
  # @!attribute [rw] name
2448
4468
  # The name of the data catalog to update. The catalog name must be
2449
4469
  # unique for the Amazon Web Services account and can use a maximum of
2450
- # 128 alphanumeric, underscore, at sign, or hyphen characters.
4470
+ # 127 alphanumeric, underscore, at sign, or hyphen characters. The
4471
+ # remainder of the length constraint of 256 is reserved for use by
4472
+ # Athena.
2451
4473
  # @return [String]
2452
4474
  #
2453
4475
  # @!attribute [rw] type
@@ -2503,16 +4525,115 @@ module Aws::Athena
2503
4525
  #
2504
4526
  class UpdateDataCatalogOutput < Aws::EmptyStructure; end
2505
4527
 
2506
- # @note When making an API call, you may pass UpdatePreparedStatementInput
2507
- # data as a hash:
4528
+ # @!attribute [rw] named_query_id
4529
+ # The unique identifier (UUID) of the query.
4530
+ # @return [String]
4531
+ #
4532
+ # @!attribute [rw] name
4533
+ # The name of the query.
4534
+ # @return [String]
4535
+ #
4536
+ # @!attribute [rw] description
4537
+ # The query description.
4538
+ # @return [String]
4539
+ #
4540
+ # @!attribute [rw] query_string
4541
+ # The contents of the query with all query statements.
4542
+ # @return [String]
4543
+ #
4544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNamedQueryInput AWS API Documentation
4545
+ #
4546
+ class UpdateNamedQueryInput < Struct.new(
4547
+ :named_query_id,
4548
+ :name,
4549
+ :description,
4550
+ :query_string)
4551
+ SENSITIVE = []
4552
+ include Aws::Structure
4553
+ end
4554
+
4555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNamedQueryOutput AWS API Documentation
4556
+ #
4557
+ class UpdateNamedQueryOutput < Aws::EmptyStructure; end
4558
+
4559
+ # @!attribute [rw] notebook_id
4560
+ # The ID of the notebook to update.
4561
+ # @return [String]
4562
+ #
4563
+ # @!attribute [rw] payload
4564
+ # The updated content for the notebook.
4565
+ # @return [String]
4566
+ #
4567
+ # @!attribute [rw] type
4568
+ # The notebook content type. Currently, the only valid type is
4569
+ # `IPYNB`.
4570
+ # @return [String]
4571
+ #
4572
+ # @!attribute [rw] session_id
4573
+ # The active notebook session ID. Required if the notebook has an
4574
+ # active session.
4575
+ # @return [String]
4576
+ #
4577
+ # @!attribute [rw] client_request_token
4578
+ # A unique case-sensitive string used to ensure the request to create
4579
+ # the notebook is idempotent (executes only once).
4580
+ #
4581
+ # This token is listed as not required because Amazon Web Services
4582
+ # SDKs (for example the Amazon Web Services SDK for Java)
4583
+ # auto-generate the token for you. If you are not using the Amazon Web
4584
+ # Services SDK or the Amazon Web Services CLI, you must provide this
4585
+ # token or the action will fail.
4586
+ # @return [String]
4587
+ #
4588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNotebookInput AWS API Documentation
4589
+ #
4590
+ class UpdateNotebookInput < Struct.new(
4591
+ :notebook_id,
4592
+ :payload,
4593
+ :type,
4594
+ :session_id,
4595
+ :client_request_token)
4596
+ SENSITIVE = []
4597
+ include Aws::Structure
4598
+ end
4599
+
4600
+ # @!attribute [rw] notebook_id
4601
+ # The ID of the notebook to update the metadata for.
4602
+ # @return [String]
4603
+ #
4604
+ # @!attribute [rw] client_request_token
4605
+ # A unique case-sensitive string used to ensure the request to create
4606
+ # the notebook is idempotent (executes only once).
4607
+ #
4608
+ # This token is listed as not required because Amazon Web Services
4609
+ # SDKs (for example the Amazon Web Services SDK for Java)
4610
+ # auto-generate the token for you. If you are not using the Amazon Web
4611
+ # Services SDK or the Amazon Web Services CLI, you must provide this
4612
+ # token or the action will fail.
4613
+ # @return [String]
4614
+ #
4615
+ # @!attribute [rw] name
4616
+ # The name to update the notebook to.
4617
+ # @return [String]
4618
+ #
4619
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNotebookMetadataInput AWS API Documentation
4620
+ #
4621
+ class UpdateNotebookMetadataInput < Struct.new(
4622
+ :notebook_id,
4623
+ :client_request_token,
4624
+ :name)
4625
+ SENSITIVE = []
4626
+ include Aws::Structure
4627
+ end
4628
+
4629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNotebookMetadataOutput AWS API Documentation
2508
4630
  #
2509
- # {
2510
- # statement_name: "StatementName", # required
2511
- # work_group: "WorkGroupName", # required
2512
- # query_statement: "QueryString", # required
2513
- # description: "DescriptionString",
2514
- # }
4631
+ class UpdateNotebookMetadataOutput < Aws::EmptyStructure; end
4632
+
4633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/UpdateNotebookOutput AWS API Documentation
2515
4634
  #
4635
+ class UpdateNotebookOutput < Aws::EmptyStructure; end
4636
+
2516
4637
  # @!attribute [rw] statement_name
2517
4638
  # The name of the prepared statement.
2518
4639
  # @return [String]
@@ -2544,35 +4665,6 @@ module Aws::Athena
2544
4665
  #
2545
4666
  class UpdatePreparedStatementOutput < Aws::EmptyStructure; end
2546
4667
 
2547
- # @note When making an API call, you may pass UpdateWorkGroupInput
2548
- # data as a hash:
2549
- #
2550
- # {
2551
- # work_group: "WorkGroupName", # required
2552
- # description: "WorkGroupDescriptionString",
2553
- # configuration_updates: {
2554
- # enforce_work_group_configuration: false,
2555
- # result_configuration_updates: {
2556
- # output_location: "String",
2557
- # remove_output_location: false,
2558
- # encryption_configuration: {
2559
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
2560
- # kms_key: "String",
2561
- # },
2562
- # remove_encryption_configuration: false,
2563
- # },
2564
- # publish_cloud_watch_metrics_enabled: false,
2565
- # bytes_scanned_cutoff_per_query: 1,
2566
- # remove_bytes_scanned_cutoff_per_query: false,
2567
- # requester_pays_enabled: false,
2568
- # engine_version: {
2569
- # selected_engine_version: "NameString",
2570
- # effective_engine_version: "NameString",
2571
- # },
2572
- # },
2573
- # state: "ENABLED", # accepts ENABLED, DISABLED
2574
- # }
2575
- #
2576
4668
  # @!attribute [rw] work_group
2577
4669
  # The specified workgroup that will be updated.
2578
4670
  # @return [String]
@@ -2582,8 +4674,7 @@ module Aws::Athena
2582
4674
  # @return [String]
2583
4675
  #
2584
4676
  # @!attribute [rw] configuration_updates
2585
- # The workgroup configuration that will be updated for the given
2586
- # workgroup.
4677
+ # Contains configuration updates for an Athena SQL workgroup.
2587
4678
  # @return [Types::WorkGroupConfigurationUpdates]
2588
4679
  #
2589
4680
  # @!attribute [rw] state
@@ -2627,12 +4718,12 @@ module Aws::Athena
2627
4718
  #
2628
4719
  # @!attribute [rw] configuration
2629
4720
  # The configuration of the workgroup, which includes the location in
2630
- # Amazon S3 where query results are stored, the encryption
2631
- # configuration, if any, used for query results; whether the Amazon
2632
- # CloudWatch Metrics are enabled for the workgroup; whether workgroup
2633
- # settings override client-side settings; and the data usage limits
2634
- # for the amount of data scanned per query or per workgroup. The
2635
- # workgroup settings override is specified in
4721
+ # Amazon S3 where query and calculation results are stored, the
4722
+ # encryption configuration, if any, used for query and calculation
4723
+ # results; whether the Amazon CloudWatch Metrics are enabled for the
4724
+ # workgroup; whether workgroup settings override client-side settings;
4725
+ # and the data usage limits for the amount of data scanned per query
4726
+ # or per workgroup. The workgroup settings override is specified in
2636
4727
  # `EnforceWorkGroupConfiguration` (true/false) in the
2637
4728
  # `WorkGroupConfiguration`. See
2638
4729
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration.
@@ -2659,45 +4750,27 @@ module Aws::Athena
2659
4750
  end
2660
4751
 
2661
4752
  # The configuration of the workgroup, which includes the location in
2662
- # Amazon S3 where query results are stored, the encryption option, if
2663
- # any, used for query results, whether the Amazon CloudWatch Metrics are
2664
- # enabled for the workgroup and whether workgroup settings override
2665
- # query settings, and the data usage limits for the amount of data
2666
- # scanned per query or per workgroup. The workgroup settings override is
2667
- # specified in `EnforceWorkGroupConfiguration` (true/false) in the
4753
+ # Amazon S3 where query and calculation results are stored, the
4754
+ # encryption option, if any, used for query and calculation results,
4755
+ # whether the Amazon CloudWatch Metrics are enabled for the workgroup
4756
+ # and whether workgroup settings override query settings, and the data
4757
+ # usage limits for the amount of data scanned per query or per
4758
+ # workgroup. The workgroup settings override is specified in
4759
+ # `EnforceWorkGroupConfiguration` (true/false) in the
2668
4760
  # `WorkGroupConfiguration`. See
2669
4761
  # WorkGroupConfiguration$EnforceWorkGroupConfiguration.
2670
4762
  #
2671
- # @note When making an API call, you may pass WorkGroupConfiguration
2672
- # data as a hash:
2673
- #
2674
- # {
2675
- # result_configuration: {
2676
- # output_location: "String",
2677
- # encryption_configuration: {
2678
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
2679
- # kms_key: "String",
2680
- # },
2681
- # },
2682
- # enforce_work_group_configuration: false,
2683
- # publish_cloud_watch_metrics_enabled: false,
2684
- # bytes_scanned_cutoff_per_query: 1,
2685
- # requester_pays_enabled: false,
2686
- # engine_version: {
2687
- # selected_engine_version: "NameString",
2688
- # effective_engine_version: "NameString",
2689
- # },
2690
- # }
2691
- #
2692
4763
  # @!attribute [rw] result_configuration
2693
4764
  # The configuration for the workgroup, which includes the location in
2694
- # Amazon S3 where query results are stored and the encryption option,
2695
- # if any, used for query results. To run the query, you must specify
2696
- # the query results location using one of the ways: either in the
2697
- # workgroup using this setting, or for individual queries
2698
- # (client-side), using ResultConfiguration$OutputLocation. If none of
2699
- # them is set, Athena issues an error that no output location is
2700
- # provided. For more information, see [Query Results][1].
4765
+ # Amazon S3 where query and calculation results are stored and the
4766
+ # encryption option, if any, used for query and calculation results.
4767
+ # To run the query, you must specify the query results location using
4768
+ # one of the ways: either in the workgroup using this setting, or for
4769
+ # individual queries (client-side), using
4770
+ # ResultConfiguration$OutputLocation. If none of them is set, Athena
4771
+ # issues an error that no output location is provided. For more
4772
+ # information, see [Working with query results, recent queries, and
4773
+ # output files][1].
2701
4774
  #
2702
4775
  #
2703
4776
  #
@@ -2745,6 +4818,34 @@ module Aws::Athena
2745
4818
  # the preview engine regardless of this setting.
2746
4819
  # @return [Types::EngineVersion]
2747
4820
  #
4821
+ # @!attribute [rw] additional_configuration
4822
+ # Specifies a user defined JSON string that is passed to the notebook
4823
+ # engine.
4824
+ # @return [String]
4825
+ #
4826
+ # @!attribute [rw] execution_role
4827
+ # Role used in a session for accessing the user's resources.
4828
+ # @return [String]
4829
+ #
4830
+ # @!attribute [rw] customer_content_encryption_configuration
4831
+ # Specifies the KMS key that is used to encrypt the user's data
4832
+ # stores in Athena. This setting does not apply to Athena SQL
4833
+ # workgroups.
4834
+ # @return [Types::CustomerContentEncryptionConfiguration]
4835
+ #
4836
+ # @!attribute [rw] enable_minimum_encryption_configuration
4837
+ # Enforces a minimal level of encryption for the workgroup for query
4838
+ # and calculation results that are written to Amazon S3. When enabled,
4839
+ # workgroup users can set encryption only to the minimum level set by
4840
+ # the administrator or higher when they submit queries.
4841
+ #
4842
+ # The `EnforceWorkGroupConfiguration` setting takes precedence over
4843
+ # the `EnableMinimumEncryptionConfiguration` flag. This means that if
4844
+ # `EnforceWorkGroupConfiguration` is true, the
4845
+ # `EnableMinimumEncryptionConfiguration` flag is ignored, and the
4846
+ # workgroup configuration for encryption is used.
4847
+ # @return [Boolean]
4848
+ #
2748
4849
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/WorkGroupConfiguration AWS API Documentation
2749
4850
  #
2750
4851
  class WorkGroupConfiguration < Struct.new(
@@ -2753,42 +4854,22 @@ module Aws::Athena
2753
4854
  :publish_cloud_watch_metrics_enabled,
2754
4855
  :bytes_scanned_cutoff_per_query,
2755
4856
  :requester_pays_enabled,
2756
- :engine_version)
4857
+ :engine_version,
4858
+ :additional_configuration,
4859
+ :execution_role,
4860
+ :customer_content_encryption_configuration,
4861
+ :enable_minimum_encryption_configuration)
2757
4862
  SENSITIVE = []
2758
4863
  include Aws::Structure
2759
4864
  end
2760
4865
 
2761
4866
  # The configuration information that will be updated for this workgroup,
2762
- # which includes the location in Amazon S3 where query results are
2763
- # stored, the encryption option, if any, used for query results, whether
2764
- # the Amazon CloudWatch Metrics are enabled for the workgroup, whether
2765
- # the workgroup settings override the client-side settings, and the data
2766
- # usage limit for the amount of bytes scanned per query, if it is
2767
- # specified.
2768
- #
2769
- # @note When making an API call, you may pass WorkGroupConfigurationUpdates
2770
- # data as a hash:
2771
- #
2772
- # {
2773
- # enforce_work_group_configuration: false,
2774
- # result_configuration_updates: {
2775
- # output_location: "String",
2776
- # remove_output_location: false,
2777
- # encryption_configuration: {
2778
- # encryption_option: "SSE_S3", # required, accepts SSE_S3, SSE_KMS, CSE_KMS
2779
- # kms_key: "String",
2780
- # },
2781
- # remove_encryption_configuration: false,
2782
- # },
2783
- # publish_cloud_watch_metrics_enabled: false,
2784
- # bytes_scanned_cutoff_per_query: 1,
2785
- # remove_bytes_scanned_cutoff_per_query: false,
2786
- # requester_pays_enabled: false,
2787
- # engine_version: {
2788
- # selected_engine_version: "NameString",
2789
- # effective_engine_version: "NameString",
2790
- # },
2791
- # }
4867
+ # which includes the location in Amazon S3 where query and calculation
4868
+ # results are stored, the encryption option, if any, used for query
4869
+ # results, whether the Amazon CloudWatch Metrics are enabled for the
4870
+ # workgroup, whether the workgroup settings override the client-side
4871
+ # settings, and the data usage limit for the amount of bytes scanned per
4872
+ # query, if it is specified.
2792
4873
  #
2793
4874
  # @!attribute [rw] enforce_work_group_configuration
2794
4875
  # If set to "true", the settings for the workgroup override
@@ -2844,6 +4925,40 @@ module Aws::Athena
2844
4925
  # the preview engine regardless of this setting.
2845
4926
  # @return [Types::EngineVersion]
2846
4927
  #
4928
+ # @!attribute [rw] remove_customer_content_encryption_configuration
4929
+ # Removes content encryption configuration from an Apache
4930
+ # Spark-enabled Athena workgroup.
4931
+ # @return [Boolean]
4932
+ #
4933
+ # @!attribute [rw] additional_configuration
4934
+ # Contains a user defined string in JSON format for a Spark-enabled
4935
+ # workgroup.
4936
+ # @return [String]
4937
+ #
4938
+ # @!attribute [rw] execution_role
4939
+ # Contains the ARN of the execution role for the workgroup
4940
+ # @return [String]
4941
+ #
4942
+ # @!attribute [rw] customer_content_encryption_configuration
4943
+ # Specifies the KMS key that is used to encrypt the user's data
4944
+ # stores in Athena. This setting does not apply to Athena SQL
4945
+ # workgroups.
4946
+ # @return [Types::CustomerContentEncryptionConfiguration]
4947
+ #
4948
+ # @!attribute [rw] enable_minimum_encryption_configuration
4949
+ # Enforces a minimal level of encryption for the workgroup for query
4950
+ # and calculation results that are written to Amazon S3. When enabled,
4951
+ # workgroup users can set encryption only to the minimum level set by
4952
+ # the administrator or higher when they submit queries. This setting
4953
+ # does not apply to Spark-enabled workgroups.
4954
+ #
4955
+ # The `EnforceWorkGroupConfiguration` setting takes precedence over
4956
+ # the `EnableMinimumEncryptionConfiguration` flag. This means that if
4957
+ # `EnforceWorkGroupConfiguration` is true, the
4958
+ # `EnableMinimumEncryptionConfiguration` flag is ignored, and the
4959
+ # workgroup configuration for encryption is used.
4960
+ # @return [Boolean]
4961
+ #
2847
4962
  # @see http://docs.aws.amazon.com/goto/WebAPI/athena-2017-05-18/WorkGroupConfigurationUpdates AWS API Documentation
2848
4963
  #
2849
4964
  class WorkGroupConfigurationUpdates < Struct.new(
@@ -2853,7 +4968,12 @@ module Aws::Athena
2853
4968
  :bytes_scanned_cutoff_per_query,
2854
4969
  :remove_bytes_scanned_cutoff_per_query,
2855
4970
  :requester_pays_enabled,
2856
- :engine_version)
4971
+ :engine_version,
4972
+ :remove_customer_content_encryption_configuration,
4973
+ :additional_configuration,
4974
+ :execution_role,
4975
+ :customer_content_encryption_configuration,
4976
+ :enable_minimum_encryption_configuration)
2857
4977
  SENSITIVE = []
2858
4978
  include Aws::Structure
2859
4979
  end