aws-sdk-glue 1.193.0 → 1.194.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6f1f3d5020787f13bb1ead562f0413e90bf87836593aed54852fdf29f6517d48
4
- data.tar.gz: c312129ee67608144b5af7319d2b5aca0106fa6a153df12fb2ddeffc3ad126cd
3
+ metadata.gz: c80f85a708425c975e698d3e52f8d0d15353c37572cf9d3b74dbb5330d039c29
4
+ data.tar.gz: c201de9b8e428cfab3737a0d5c3b27ec23021182a92c4f28c86c9a258609d77d
5
5
  SHA512:
6
- metadata.gz: e99154994555d33c549992e8e58831cb84e2e862997d778271cc6d46e97206ef15b4599d3402cfffdb2ab2093bb3c3c2c9a70af239a5545d354b8c82f3fa46c2
7
- data.tar.gz: d57f7a04b7a8f2a1f262042adb95f850fa86f4d00efd87595861499a9d49f01421516e8d5595dbc5d296edab6593aee23d56087b15ee102c3613002e487a082c
6
+ metadata.gz: 93b283426784ee424c9e758eb93d36897fbb6c01b2b8eec1460a3a2a0ff98b2e7145d5bc48696ca92a46095f5233cce73e125d9f3b192a5b8993944d3d090544
7
+ data.tar.gz: c048130e762d8b8fb1c73316ed845b5c58c4c6353d709e940893d01f7e49ee62d29e24f86c2ed67e261f527d0793811e35d2234843f4422a1ceaf20d93b10380
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.194.0 (2024-09-12)
5
+ ------------------
6
+
7
+ * Feature - AWS Glue is introducing two new optimizers for Apache Iceberg tables: snapshot retention and orphan file deletion. Customers can enable these optimizers and customize their configurations to perform daily maintenance tasks on their Iceberg tables based on their specific requirements.
8
+
4
9
  1.193.0 (2024-09-11)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.193.0
1
+ 1.194.0
@@ -2141,7 +2141,7 @@ module Aws::Glue
2141
2141
  # catalog_id: "CatalogIdString",
2142
2142
  # database_name: "databaseNameString",
2143
2143
  # table_name: "tableNameString",
2144
- # type: "compaction", # accepts compaction
2144
+ # type: "compaction", # accepts compaction, retention, orphan_file_deletion
2145
2145
  # },
2146
2146
  # ],
2147
2147
  # })
@@ -2152,9 +2152,14 @@ module Aws::Glue
2152
2152
  # resp.table_optimizers[0].catalog_id #=> String
2153
2153
  # resp.table_optimizers[0].database_name #=> String
2154
2154
  # resp.table_optimizers[0].table_name #=> String
2155
- # resp.table_optimizers[0].table_optimizer.type #=> String, one of "compaction"
2155
+ # resp.table_optimizers[0].table_optimizer.type #=> String, one of "compaction", "retention", "orphan_file_deletion"
2156
2156
  # resp.table_optimizers[0].table_optimizer.configuration.role_arn #=> String
2157
2157
  # resp.table_optimizers[0].table_optimizer.configuration.enabled #=> Boolean
2158
+ # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.snapshot_retention_period_in_days #=> Integer
2159
+ # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.number_of_snapshots_to_retain #=> Integer
2160
+ # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.clean_expired_files #=> Boolean
2161
+ # resp.table_optimizers[0].table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.orphan_file_retention_period_in_days #=> Integer
2162
+ # resp.table_optimizers[0].table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.location #=> String
2158
2163
  # resp.table_optimizers[0].table_optimizer.last_run.event_type #=> String, one of "starting", "completed", "failed", "in_progress"
2159
2164
  # resp.table_optimizers[0].table_optimizer.last_run.start_timestamp #=> Time
2160
2165
  # resp.table_optimizers[0].table_optimizer.last_run.end_timestamp #=> Time
@@ -2163,13 +2168,25 @@ module Aws::Glue
2163
2168
  # resp.table_optimizers[0].table_optimizer.last_run.metrics.number_of_dpus #=> String
2164
2169
  # resp.table_optimizers[0].table_optimizer.last_run.metrics.job_duration_in_hour #=> String
2165
2170
  # resp.table_optimizers[0].table_optimizer.last_run.error #=> String
2171
+ # resp.table_optimizers[0].table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_bytes_compacted #=> Integer
2172
+ # resp.table_optimizers[0].table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_files_compacted #=> Integer
2173
+ # resp.table_optimizers[0].table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_dpus #=> Integer
2174
+ # resp.table_optimizers[0].table_optimizer.last_run.compaction_metrics.iceberg_metrics.job_duration_in_hour #=> Float
2175
+ # resp.table_optimizers[0].table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_data_files_deleted #=> Integer
2176
+ # resp.table_optimizers[0].table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_manifest_files_deleted #=> Integer
2177
+ # resp.table_optimizers[0].table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_manifest_lists_deleted #=> Integer
2178
+ # resp.table_optimizers[0].table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_dpus #=> Integer
2179
+ # resp.table_optimizers[0].table_optimizer.last_run.retention_metrics.iceberg_metrics.job_duration_in_hour #=> Float
2180
+ # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_orphan_files_deleted #=> Integer
2181
+ # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_dpus #=> Integer
2182
+ # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.job_duration_in_hour #=> Float
2166
2183
  # resp.failures #=> Array
2167
2184
  # resp.failures[0].error.error_code #=> String
2168
2185
  # resp.failures[0].error.error_message #=> String
2169
2186
  # resp.failures[0].catalog_id #=> String
2170
2187
  # resp.failures[0].database_name #=> String
2171
2188
  # resp.failures[0].table_name #=> String
2172
- # resp.failures[0].type #=> String, one of "compaction"
2189
+ # resp.failures[0].type #=> String, one of "compaction", "retention", "orphan_file_deletion"
2173
2190
  #
2174
2191
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/BatchGetTableOptimizer AWS API Documentation
2175
2192
  #
@@ -4812,10 +4829,23 @@ module Aws::Glue
4812
4829
  # catalog_id: "CatalogIdString", # required
4813
4830
  # database_name: "NameString", # required
4814
4831
  # table_name: "NameString", # required
4815
- # type: "compaction", # required, accepts compaction
4832
+ # type: "compaction", # required, accepts compaction, retention, orphan_file_deletion
4816
4833
  # table_optimizer_configuration: { # required
4817
4834
  # role_arn: "ArnString",
4818
4835
  # enabled: false,
4836
+ # retention_configuration: {
4837
+ # iceberg_configuration: {
4838
+ # snapshot_retention_period_in_days: 1,
4839
+ # number_of_snapshots_to_retain: 1,
4840
+ # clean_expired_files: false,
4841
+ # },
4842
+ # },
4843
+ # orphan_file_deletion_configuration: {
4844
+ # iceberg_configuration: {
4845
+ # orphan_file_retention_period_in_days: 1,
4846
+ # location: "MessageString",
4847
+ # },
4848
+ # },
4819
4849
  # },
4820
4850
  # })
4821
4851
  #
@@ -5826,7 +5856,7 @@ module Aws::Glue
5826
5856
  # catalog_id: "CatalogIdString", # required
5827
5857
  # database_name: "NameString", # required
5828
5858
  # table_name: "NameString", # required
5829
- # type: "compaction", # required, accepts compaction
5859
+ # type: "compaction", # required, accepts compaction, retention, orphan_file_deletion
5830
5860
  # })
5831
5861
  #
5832
5862
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteTableOptimizer AWS API Documentation
@@ -11346,7 +11376,7 @@ module Aws::Glue
11346
11376
  # catalog_id: "CatalogIdString", # required
11347
11377
  # database_name: "NameString", # required
11348
11378
  # table_name: "NameString", # required
11349
- # type: "compaction", # required, accepts compaction
11379
+ # type: "compaction", # required, accepts compaction, retention, orphan_file_deletion
11350
11380
  # })
11351
11381
  #
11352
11382
  # @example Response structure
@@ -11354,9 +11384,14 @@ module Aws::Glue
11354
11384
  # resp.catalog_id #=> String
11355
11385
  # resp.database_name #=> String
11356
11386
  # resp.table_name #=> String
11357
- # resp.table_optimizer.type #=> String, one of "compaction"
11387
+ # resp.table_optimizer.type #=> String, one of "compaction", "retention", "orphan_file_deletion"
11358
11388
  # resp.table_optimizer.configuration.role_arn #=> String
11359
11389
  # resp.table_optimizer.configuration.enabled #=> Boolean
11390
+ # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.snapshot_retention_period_in_days #=> Integer
11391
+ # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.number_of_snapshots_to_retain #=> Integer
11392
+ # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.clean_expired_files #=> Boolean
11393
+ # resp.table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.orphan_file_retention_period_in_days #=> Integer
11394
+ # resp.table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.location #=> String
11360
11395
  # resp.table_optimizer.last_run.event_type #=> String, one of "starting", "completed", "failed", "in_progress"
11361
11396
  # resp.table_optimizer.last_run.start_timestamp #=> Time
11362
11397
  # resp.table_optimizer.last_run.end_timestamp #=> Time
@@ -11365,6 +11400,18 @@ module Aws::Glue
11365
11400
  # resp.table_optimizer.last_run.metrics.number_of_dpus #=> String
11366
11401
  # resp.table_optimizer.last_run.metrics.job_duration_in_hour #=> String
11367
11402
  # resp.table_optimizer.last_run.error #=> String
11403
+ # resp.table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_bytes_compacted #=> Integer
11404
+ # resp.table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_files_compacted #=> Integer
11405
+ # resp.table_optimizer.last_run.compaction_metrics.iceberg_metrics.number_of_dpus #=> Integer
11406
+ # resp.table_optimizer.last_run.compaction_metrics.iceberg_metrics.job_duration_in_hour #=> Float
11407
+ # resp.table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_data_files_deleted #=> Integer
11408
+ # resp.table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_manifest_files_deleted #=> Integer
11409
+ # resp.table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_manifest_lists_deleted #=> Integer
11410
+ # resp.table_optimizer.last_run.retention_metrics.iceberg_metrics.number_of_dpus #=> Integer
11411
+ # resp.table_optimizer.last_run.retention_metrics.iceberg_metrics.job_duration_in_hour #=> Float
11412
+ # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_orphan_files_deleted #=> Integer
11413
+ # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_dpus #=> Integer
11414
+ # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.job_duration_in_hour #=> Float
11368
11415
  #
11369
11416
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetTableOptimizer AWS API Documentation
11370
11417
  #
@@ -14398,7 +14445,7 @@ module Aws::Glue
14398
14445
  # catalog_id: "CatalogIdString", # required
14399
14446
  # database_name: "NameString", # required
14400
14447
  # table_name: "NameString", # required
14401
- # type: "compaction", # required, accepts compaction
14448
+ # type: "compaction", # required, accepts compaction, retention, orphan_file_deletion
14402
14449
  # max_results: 1,
14403
14450
  # next_token: "ListTableOptimizerRunsToken",
14404
14451
  # })
@@ -14418,6 +14465,18 @@ module Aws::Glue
14418
14465
  # resp.table_optimizer_runs[0].metrics.number_of_dpus #=> String
14419
14466
  # resp.table_optimizer_runs[0].metrics.job_duration_in_hour #=> String
14420
14467
  # resp.table_optimizer_runs[0].error #=> String
14468
+ # resp.table_optimizer_runs[0].compaction_metrics.iceberg_metrics.number_of_bytes_compacted #=> Integer
14469
+ # resp.table_optimizer_runs[0].compaction_metrics.iceberg_metrics.number_of_files_compacted #=> Integer
14470
+ # resp.table_optimizer_runs[0].compaction_metrics.iceberg_metrics.number_of_dpus #=> Integer
14471
+ # resp.table_optimizer_runs[0].compaction_metrics.iceberg_metrics.job_duration_in_hour #=> Float
14472
+ # resp.table_optimizer_runs[0].retention_metrics.iceberg_metrics.number_of_data_files_deleted #=> Integer
14473
+ # resp.table_optimizer_runs[0].retention_metrics.iceberg_metrics.number_of_manifest_files_deleted #=> Integer
14474
+ # resp.table_optimizer_runs[0].retention_metrics.iceberg_metrics.number_of_manifest_lists_deleted #=> Integer
14475
+ # resp.table_optimizer_runs[0].retention_metrics.iceberg_metrics.number_of_dpus #=> Integer
14476
+ # resp.table_optimizer_runs[0].retention_metrics.iceberg_metrics.job_duration_in_hour #=> Float
14477
+ # resp.table_optimizer_runs[0].orphan_file_deletion_metrics.iceberg_metrics.number_of_orphan_files_deleted #=> Integer
14478
+ # resp.table_optimizer_runs[0].orphan_file_deletion_metrics.iceberg_metrics.number_of_dpus #=> Integer
14479
+ # resp.table_optimizer_runs[0].orphan_file_deletion_metrics.iceberg_metrics.job_duration_in_hour #=> Float
14421
14480
  #
14422
14481
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListTableOptimizerRuns AWS API Documentation
14423
14482
  #
@@ -17804,10 +17863,23 @@ module Aws::Glue
17804
17863
  # catalog_id: "CatalogIdString", # required
17805
17864
  # database_name: "NameString", # required
17806
17865
  # table_name: "NameString", # required
17807
- # type: "compaction", # required, accepts compaction
17866
+ # type: "compaction", # required, accepts compaction, retention, orphan_file_deletion
17808
17867
  # table_optimizer_configuration: { # required
17809
17868
  # role_arn: "ArnString",
17810
17869
  # enabled: false,
17870
+ # retention_configuration: {
17871
+ # iceberg_configuration: {
17872
+ # snapshot_retention_period_in_days: 1,
17873
+ # number_of_snapshots_to_retain: 1,
17874
+ # clean_expired_files: false,
17875
+ # },
17876
+ # },
17877
+ # orphan_file_deletion_configuration: {
17878
+ # iceberg_configuration: {
17879
+ # orphan_file_retention_period_in_days: 1,
17880
+ # location: "MessageString",
17881
+ # },
17882
+ # },
17811
17883
  # },
17812
17884
  # })
17813
17885
  #
@@ -18077,7 +18149,7 @@ module Aws::Glue
18077
18149
  tracer: tracer
18078
18150
  )
18079
18151
  context[:gem_name] = 'aws-sdk-glue'
18080
- context[:gem_version] = '1.193.0'
18152
+ context[:gem_version] = '1.194.0'
18081
18153
  Seahorse::Client::Request.new(handlers, context)
18082
18154
  end
18083
18155
 
@@ -204,6 +204,7 @@ module Aws::Glue
204
204
  ColumnValuesString = Shapes::StringShape.new(name: 'ColumnValuesString')
205
205
  CommentString = Shapes::StringShape.new(name: 'CommentString')
206
206
  CommitIdString = Shapes::StringShape.new(name: 'CommitIdString')
207
+ CompactionMetrics = Shapes::StructureShape.new(name: 'CompactionMetrics')
207
208
  Comparator = Shapes::StringShape.new(name: 'Comparator')
208
209
  Compatibility = Shapes::StringShape.new(name: 'Compatibility')
209
210
  CompressionType = Shapes::StringShape.new(name: 'CompressionType')
@@ -689,7 +690,12 @@ module Aws::Glue
689
690
  HudiTargetCompressionType = Shapes::StringShape.new(name: 'HudiTargetCompressionType')
690
691
  HudiTargetList = Shapes::ListShape.new(name: 'HudiTargetList')
691
692
  IAMRoleArn = Shapes::StringShape.new(name: 'IAMRoleArn')
693
+ IcebergCompactionMetrics = Shapes::StructureShape.new(name: 'IcebergCompactionMetrics')
692
694
  IcebergInput = Shapes::StructureShape.new(name: 'IcebergInput')
695
+ IcebergOrphanFileDeletionConfiguration = Shapes::StructureShape.new(name: 'IcebergOrphanFileDeletionConfiguration')
696
+ IcebergOrphanFileDeletionMetrics = Shapes::StructureShape.new(name: 'IcebergOrphanFileDeletionMetrics')
697
+ IcebergRetentionConfiguration = Shapes::StructureShape.new(name: 'IcebergRetentionConfiguration')
698
+ IcebergRetentionMetrics = Shapes::StructureShape.new(name: 'IcebergRetentionMetrics')
693
699
  IcebergTarget = Shapes::StructureShape.new(name: 'IcebergTarget')
694
700
  IcebergTargetList = Shapes::ListShape.new(name: 'IcebergTargetList')
695
701
  IdString = Shapes::StringShape.new(name: 'IdString')
@@ -903,6 +909,8 @@ module Aws::Glue
903
909
  OrchestrationToken = Shapes::StringShape.new(name: 'OrchestrationToken')
904
910
  Order = Shapes::StructureShape.new(name: 'Order')
905
911
  OrderList = Shapes::ListShape.new(name: 'OrderList')
912
+ OrphanFileDeletionConfiguration = Shapes::StructureShape.new(name: 'OrphanFileDeletionConfiguration')
913
+ OrphanFileDeletionMetrics = Shapes::StructureShape.new(name: 'OrphanFileDeletionMetrics')
906
914
  OtherMetadataValueList = Shapes::ListShape.new(name: 'OtherMetadataValueList')
907
915
  OtherMetadataValueListItem = Shapes::StructureShape.new(name: 'OtherMetadataValueListItem')
908
916
  PIIDetection = Shapes::StructureShape.new(name: 'PIIDetection')
@@ -1006,6 +1014,8 @@ module Aws::Glue
1006
1014
  ResourceUriList = Shapes::ListShape.new(name: 'ResourceUriList')
1007
1015
  ResumeWorkflowRunRequest = Shapes::StructureShape.new(name: 'ResumeWorkflowRunRequest')
1008
1016
  ResumeWorkflowRunResponse = Shapes::StructureShape.new(name: 'ResumeWorkflowRunResponse')
1017
+ RetentionConfiguration = Shapes::StructureShape.new(name: 'RetentionConfiguration')
1018
+ RetentionMetrics = Shapes::StructureShape.new(name: 'RetentionMetrics')
1009
1019
  Role = Shapes::StringShape.new(name: 'Role')
1010
1020
  RoleArn = Shapes::StringShape.new(name: 'RoleArn')
1011
1021
  RoleString = Shapes::StringShape.new(name: 'RoleString')
@@ -1202,6 +1212,7 @@ module Aws::Glue
1202
1212
  TaskRunSortCriteria = Shapes::StructureShape.new(name: 'TaskRunSortCriteria')
1203
1213
  TaskStatusType = Shapes::StringShape.new(name: 'TaskStatusType')
1204
1214
  TaskType = Shapes::StringShape.new(name: 'TaskType')
1215
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
1205
1216
  Timeout = Shapes::IntegerShape.new(name: 'Timeout')
1206
1217
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
1207
1218
  TimestampFilter = Shapes::StructureShape.new(name: 'TimestampFilter')
@@ -1339,6 +1350,9 @@ module Aws::Glue
1339
1350
  XMLClassifier = Shapes::StructureShape.new(name: 'XMLClassifier')
1340
1351
  databaseNameString = Shapes::StringShape.new(name: 'databaseNameString')
1341
1352
  double = Shapes::FloatShape.new(name: 'double')
1353
+ dpuCounts = Shapes::IntegerShape.new(name: 'dpuCounts')
1354
+ dpuDurationInHour = Shapes::FloatShape.new(name: 'dpuDurationInHour')
1355
+ metricCounts = Shapes::IntegerShape.new(name: 'metricCounts')
1342
1356
  tableNameString = Shapes::StringShape.new(name: 'tableNameString')
1343
1357
 
1344
1358
  AccessDeniedException.add_member(:message, Shapes::ShapeRef.new(shape: MessageString, location_name: "Message"))
@@ -2026,6 +2040,9 @@ module Aws::Glue
2026
2040
 
2027
2041
  ColumnValueStringList.member = Shapes::ShapeRef.new(shape: ColumnValuesString)
2028
2042
 
2043
+ CompactionMetrics.add_member(:iceberg_metrics, Shapes::ShapeRef.new(shape: IcebergCompactionMetrics, location_name: "IcebergMetrics"))
2044
+ CompactionMetrics.struct_class = Types::CompactionMetrics
2045
+
2029
2046
  ConcurrentModificationException.add_member(:message, Shapes::ShapeRef.new(shape: MessageString, location_name: "Message"))
2030
2047
  ConcurrentModificationException.struct_class = Types::ConcurrentModificationException
2031
2048
 
@@ -4029,10 +4046,37 @@ module Aws::Glue
4029
4046
 
4030
4047
  HudiTargetList.member = Shapes::ShapeRef.new(shape: HudiTarget)
4031
4048
 
4049
+ IcebergCompactionMetrics.add_member(:number_of_bytes_compacted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfBytesCompacted"))
4050
+ IcebergCompactionMetrics.add_member(:number_of_files_compacted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfFilesCompacted"))
4051
+ IcebergCompactionMetrics.add_member(:number_of_dpus, Shapes::ShapeRef.new(shape: dpuCounts, location_name: "NumberOfDpus"))
4052
+ IcebergCompactionMetrics.add_member(:job_duration_in_hour, Shapes::ShapeRef.new(shape: dpuDurationInHour, location_name: "JobDurationInHour"))
4053
+ IcebergCompactionMetrics.struct_class = Types::IcebergCompactionMetrics
4054
+
4032
4055
  IcebergInput.add_member(:metadata_operation, Shapes::ShapeRef.new(shape: MetadataOperation, required: true, location_name: "MetadataOperation"))
4033
4056
  IcebergInput.add_member(:version, Shapes::ShapeRef.new(shape: VersionString, location_name: "Version"))
4034
4057
  IcebergInput.struct_class = Types::IcebergInput
4035
4058
 
4059
+ IcebergOrphanFileDeletionConfiguration.add_member(:orphan_file_retention_period_in_days, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "orphanFileRetentionPeriodInDays"))
4060
+ IcebergOrphanFileDeletionConfiguration.add_member(:location, Shapes::ShapeRef.new(shape: MessageString, location_name: "location"))
4061
+ IcebergOrphanFileDeletionConfiguration.struct_class = Types::IcebergOrphanFileDeletionConfiguration
4062
+
4063
+ IcebergOrphanFileDeletionMetrics.add_member(:number_of_orphan_files_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfOrphanFilesDeleted"))
4064
+ IcebergOrphanFileDeletionMetrics.add_member(:number_of_dpus, Shapes::ShapeRef.new(shape: dpuCounts, location_name: "NumberOfDpus"))
4065
+ IcebergOrphanFileDeletionMetrics.add_member(:job_duration_in_hour, Shapes::ShapeRef.new(shape: dpuDurationInHour, location_name: "JobDurationInHour"))
4066
+ IcebergOrphanFileDeletionMetrics.struct_class = Types::IcebergOrphanFileDeletionMetrics
4067
+
4068
+ IcebergRetentionConfiguration.add_member(:snapshot_retention_period_in_days, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "snapshotRetentionPeriodInDays"))
4069
+ IcebergRetentionConfiguration.add_member(:number_of_snapshots_to_retain, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "numberOfSnapshotsToRetain"))
4070
+ IcebergRetentionConfiguration.add_member(:clean_expired_files, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "cleanExpiredFiles"))
4071
+ IcebergRetentionConfiguration.struct_class = Types::IcebergRetentionConfiguration
4072
+
4073
+ IcebergRetentionMetrics.add_member(:number_of_data_files_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfDataFilesDeleted"))
4074
+ IcebergRetentionMetrics.add_member(:number_of_manifest_files_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfManifestFilesDeleted"))
4075
+ IcebergRetentionMetrics.add_member(:number_of_manifest_lists_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfManifestListsDeleted"))
4076
+ IcebergRetentionMetrics.add_member(:number_of_dpus, Shapes::ShapeRef.new(shape: dpuCounts, location_name: "NumberOfDpus"))
4077
+ IcebergRetentionMetrics.add_member(:job_duration_in_hour, Shapes::ShapeRef.new(shape: dpuDurationInHour, location_name: "JobDurationInHour"))
4078
+ IcebergRetentionMetrics.struct_class = Types::IcebergRetentionMetrics
4079
+
4036
4080
  IcebergTarget.add_member(:paths, Shapes::ShapeRef.new(shape: PathList, location_name: "Paths"))
4037
4081
  IcebergTarget.add_member(:connection_name, Shapes::ShapeRef.new(shape: ConnectionName, location_name: "ConnectionName"))
4038
4082
  IcebergTarget.add_member(:exclusions, Shapes::ShapeRef.new(shape: PathList, location_name: "Exclusions"))
@@ -4764,6 +4808,12 @@ module Aws::Glue
4764
4808
 
4765
4809
  OrderList.member = Shapes::ShapeRef.new(shape: Order)
4766
4810
 
4811
+ OrphanFileDeletionConfiguration.add_member(:iceberg_configuration, Shapes::ShapeRef.new(shape: IcebergOrphanFileDeletionConfiguration, location_name: "icebergConfiguration"))
4812
+ OrphanFileDeletionConfiguration.struct_class = Types::OrphanFileDeletionConfiguration
4813
+
4814
+ OrphanFileDeletionMetrics.add_member(:iceberg_metrics, Shapes::ShapeRef.new(shape: IcebergOrphanFileDeletionMetrics, location_name: "IcebergMetrics"))
4815
+ OrphanFileDeletionMetrics.struct_class = Types::OrphanFileDeletionMetrics
4816
+
4767
4817
  OtherMetadataValueList.member = Shapes::ShapeRef.new(shape: OtherMetadataValueListItem)
4768
4818
 
4769
4819
  OtherMetadataValueListItem.add_member(:metadata_value, Shapes::ShapeRef.new(shape: MetadataValueString, location_name: "MetadataValue"))
@@ -5067,6 +5117,12 @@ module Aws::Glue
5067
5117
  ResumeWorkflowRunResponse.add_member(:node_ids, Shapes::ShapeRef.new(shape: NodeIdList, location_name: "NodeIds"))
5068
5118
  ResumeWorkflowRunResponse.struct_class = Types::ResumeWorkflowRunResponse
5069
5119
 
5120
+ RetentionConfiguration.add_member(:iceberg_configuration, Shapes::ShapeRef.new(shape: IcebergRetentionConfiguration, location_name: "icebergConfiguration"))
5121
+ RetentionConfiguration.struct_class = Types::RetentionConfiguration
5122
+
5123
+ RetentionMetrics.add_member(:iceberg_metrics, Shapes::ShapeRef.new(shape: IcebergRetentionMetrics, location_name: "IcebergMetrics"))
5124
+ RetentionMetrics.struct_class = Types::RetentionMetrics
5125
+
5070
5126
  RulesetNames.member = Shapes::ShapeRef.new(shape: NameString)
5071
5127
 
5072
5128
  RunIdentifier.add_member(:run_id, Shapes::ShapeRef.new(shape: HashString, location_name: "RunId"))
@@ -5800,13 +5856,18 @@ module Aws::Glue
5800
5856
 
5801
5857
  TableOptimizerConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: ArnString, location_name: "roleArn"))
5802
5858
  TableOptimizerConfiguration.add_member(:enabled, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "enabled"))
5859
+ TableOptimizerConfiguration.add_member(:retention_configuration, Shapes::ShapeRef.new(shape: RetentionConfiguration, location_name: "retentionConfiguration"))
5860
+ TableOptimizerConfiguration.add_member(:orphan_file_deletion_configuration, Shapes::ShapeRef.new(shape: OrphanFileDeletionConfiguration, location_name: "orphanFileDeletionConfiguration"))
5803
5861
  TableOptimizerConfiguration.struct_class = Types::TableOptimizerConfiguration
5804
5862
 
5805
5863
  TableOptimizerRun.add_member(:event_type, Shapes::ShapeRef.new(shape: TableOptimizerEventType, location_name: "eventType"))
5806
5864
  TableOptimizerRun.add_member(:start_timestamp, Shapes::ShapeRef.new(shape: TableOptimizerRunTimestamp, location_name: "startTimestamp"))
5807
5865
  TableOptimizerRun.add_member(:end_timestamp, Shapes::ShapeRef.new(shape: TableOptimizerRunTimestamp, location_name: "endTimestamp"))
5808
- TableOptimizerRun.add_member(:metrics, Shapes::ShapeRef.new(shape: RunMetrics, location_name: "metrics"))
5866
+ TableOptimizerRun.add_member(:metrics, Shapes::ShapeRef.new(shape: RunMetrics, deprecated: true, location_name: "metrics", metadata: {"deprecatedMessage"=>"Metrics has been replaced by optimizer type specific metrics such as IcebergCompactionMetrics"}))
5809
5867
  TableOptimizerRun.add_member(:error, Shapes::ShapeRef.new(shape: MessageString, location_name: "error"))
5868
+ TableOptimizerRun.add_member(:compaction_metrics, Shapes::ShapeRef.new(shape: CompactionMetrics, location_name: "compactionMetrics"))
5869
+ TableOptimizerRun.add_member(:retention_metrics, Shapes::ShapeRef.new(shape: RetentionMetrics, location_name: "retentionMetrics"))
5870
+ TableOptimizerRun.add_member(:orphan_file_deletion_metrics, Shapes::ShapeRef.new(shape: OrphanFileDeletionMetrics, location_name: "orphanFileDeletionMetrics"))
5810
5871
  TableOptimizerRun.struct_class = Types::TableOptimizerRun
5811
5872
 
5812
5873
  TableOptimizerRuns.member = Shapes::ShapeRef.new(shape: TableOptimizerRun)
@@ -5874,6 +5935,9 @@ module Aws::Glue
5874
5935
  TaskRunSortCriteria.add_member(:sort_direction, Shapes::ShapeRef.new(shape: SortDirectionType, required: true, location_name: "SortDirection"))
5875
5936
  TaskRunSortCriteria.struct_class = Types::TaskRunSortCriteria
5876
5937
 
5938
+ ThrottlingException.add_member(:message, Shapes::ShapeRef.new(shape: MessageString, location_name: "Message"))
5939
+ ThrottlingException.struct_class = Types::ThrottlingException
5940
+
5877
5941
  TimestampFilter.add_member(:recorded_before, Shapes::ShapeRef.new(shape: Timestamp, location_name: "RecordedBefore"))
5878
5942
  TimestampFilter.add_member(:recorded_after, Shapes::ShapeRef.new(shape: Timestamp, location_name: "RecordedAfter"))
5879
5943
  TimestampFilter.struct_class = Types::TimestampFilter
@@ -6537,7 +6601,11 @@ module Aws::Glue
6537
6601
  o.http_request_uri = "/"
6538
6602
  o.input = Shapes::ShapeRef.new(shape: BatchGetTableOptimizerRequest)
6539
6603
  o.output = Shapes::ShapeRef.new(shape: BatchGetTableOptimizerResponse)
6604
+ o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
6605
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
6606
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
6540
6607
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
6608
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6541
6609
  end)
6542
6610
 
6543
6611
  api.add_operation(:batch_get_triggers, Seahorse::Model::Operation.new.tap do |o|
@@ -6921,10 +6989,12 @@ module Aws::Glue
6921
6989
  o.input = Shapes::ShapeRef.new(shape: CreateTableOptimizerRequest)
6922
6990
  o.output = Shapes::ShapeRef.new(shape: CreateTableOptimizerResponse)
6923
6991
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
6992
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
6924
6993
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
6925
6994
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
6926
6995
  o.errors << Shapes::ShapeRef.new(shape: AlreadyExistsException)
6927
6996
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
6997
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
6928
6998
  end)
6929
6999
 
6930
7000
  api.add_operation(:create_trigger, Seahorse::Model::Operation.new.tap do |o|
@@ -7253,6 +7323,7 @@ module Aws::Glue
7253
7323
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
7254
7324
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
7255
7325
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
7326
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
7256
7327
  end)
7257
7328
 
7258
7329
  api.add_operation(:delete_table_version, Seahorse::Model::Operation.new.tap do |o|
@@ -8067,6 +8138,7 @@ module Aws::Glue
8067
8138
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
8068
8139
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
8069
8140
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
8141
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
8070
8142
  end)
8071
8143
 
8072
8144
  api.add_operation(:get_table_version, Seahorse::Model::Operation.new.tap do |o|
@@ -8640,7 +8712,9 @@ module Aws::Glue
8640
8712
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
8641
8713
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
8642
8714
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
8715
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
8643
8716
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
8717
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
8644
8718
  o[:pager] = Aws::Pager.new(
8645
8719
  limit_key: "max_results",
8646
8720
  tokens: {
@@ -9384,7 +9458,10 @@ module Aws::Glue
9384
9458
  o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
9385
9459
  o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
9386
9460
  o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
9461
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
9387
9462
  o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
9463
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
9464
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
9388
9465
  end)
9389
9466
 
9390
9467
  api.add_operation(:update_trigger, Seahorse::Model::Operation.new.tap do |o|
@@ -61,6 +61,7 @@ module Aws::Glue
61
61
  # * {SchedulerNotRunningException}
62
62
  # * {SchedulerRunningException}
63
63
  # * {SchedulerTransitioningException}
64
+ # * {ThrottlingException}
64
65
  # * {ValidationException}
65
66
  # * {VersionMismatchException}
66
67
  #
@@ -600,6 +601,21 @@ module Aws::Glue
600
601
  end
601
602
  end
602
603
 
604
+ class ThrottlingException < ServiceError
605
+
606
+ # @param [Seahorse::Client::RequestContext] context
607
+ # @param [String] message
608
+ # @param [Aws::Glue::Types::ThrottlingException] data
609
+ def initialize(context, message, data = Aws::EmptyStructure.new)
610
+ super(context, message, data)
611
+ end
612
+
613
+ # @return [String]
614
+ def message
615
+ @message || @data[:message]
616
+ end
617
+ end
618
+
603
619
  class ValidationException < ServiceError
604
620
 
605
621
  # @param [Seahorse::Client::RequestContext] context
@@ -1383,7 +1383,7 @@ module Aws::Glue
1383
1383
  #
1384
1384
  # @!attribute [rw] table_optimizer
1385
1385
  # A `TableOptimizer` object that contains details on the configuration
1386
- # and last run of a table optimzer.
1386
+ # and last run of a table optimizer.
1387
1387
  # @return [Types::TableOptimizer]
1388
1388
  #
1389
1389
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/BatchTableOptimizer AWS API Documentation
@@ -3000,6 +3000,21 @@ module Aws::Glue
3000
3000
  include Aws::Structure
3001
3001
  end
3002
3002
 
3003
+ # A structure that contains compaction metrics for the optimizer run.
3004
+ #
3005
+ # @!attribute [rw] iceberg_metrics
3006
+ # A structure containing the Iceberg compaction metrics for the
3007
+ # optimizer run.
3008
+ # @return [Types::IcebergCompactionMetrics]
3009
+ #
3010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CompactionMetrics AWS API Documentation
3011
+ #
3012
+ class CompactionMetrics < Struct.new(
3013
+ :iceberg_metrics)
3014
+ SENSITIVE = []
3015
+ include Aws::Structure
3016
+ end
3017
+
3003
3018
  # Two processes are trying to modify a resource simultaneously.
3004
3019
  #
3005
3020
  # @!attribute [rw] message
@@ -13361,6 +13376,35 @@ module Aws::Glue
13361
13376
  include Aws::Structure
13362
13377
  end
13363
13378
 
13379
+ # Compaction metrics for Iceberg for the optimizer run.
13380
+ #
13381
+ # @!attribute [rw] number_of_bytes_compacted
13382
+ # The number of bytes removed by the compaction job run.
13383
+ # @return [Integer]
13384
+ #
13385
+ # @!attribute [rw] number_of_files_compacted
13386
+ # The number of files removed by the compaction job run.
13387
+ # @return [Integer]
13388
+ #
13389
+ # @!attribute [rw] number_of_dpus
13390
+ # The number of DPU hours consumed by the job.
13391
+ # @return [Integer]
13392
+ #
13393
+ # @!attribute [rw] job_duration_in_hour
13394
+ # The duration of the job in hours.
13395
+ # @return [Float]
13396
+ #
13397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergCompactionMetrics AWS API Documentation
13398
+ #
13399
+ class IcebergCompactionMetrics < Struct.new(
13400
+ :number_of_bytes_compacted,
13401
+ :number_of_files_compacted,
13402
+ :number_of_dpus,
13403
+ :job_duration_in_hour)
13404
+ SENSITIVE = []
13405
+ include Aws::Structure
13406
+ end
13407
+
13364
13408
  # A structure that defines an Apache Iceberg metadata table to create in
13365
13409
  # the catalog.
13366
13410
  #
@@ -13381,6 +13425,118 @@ module Aws::Glue
13381
13425
  include Aws::Structure
13382
13426
  end
13383
13427
 
13428
+ # The configuration for an Iceberg orphan file deletion optimizer.
13429
+ #
13430
+ # @!attribute [rw] orphan_file_retention_period_in_days
13431
+ # The number of days that orphan files should be retained before file
13432
+ # deletion. If an input is not provided, the default value 3 will be
13433
+ # used.
13434
+ # @return [Integer]
13435
+ #
13436
+ # @!attribute [rw] location
13437
+ # Specifies a directory in which to look for files (defaults to the
13438
+ # table's location). You may choose a sub-directory rather than the
13439
+ # top-level table location.
13440
+ # @return [String]
13441
+ #
13442
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergOrphanFileDeletionConfiguration AWS API Documentation
13443
+ #
13444
+ class IcebergOrphanFileDeletionConfiguration < Struct.new(
13445
+ :orphan_file_retention_period_in_days,
13446
+ :location)
13447
+ SENSITIVE = []
13448
+ include Aws::Structure
13449
+ end
13450
+
13451
+ # Orphan file deletion metrics for Iceberg for the optimizer run.
13452
+ #
13453
+ # @!attribute [rw] number_of_orphan_files_deleted
13454
+ # The number of orphan files deleted by the orphan file deletion job
13455
+ # run.
13456
+ # @return [Integer]
13457
+ #
13458
+ # @!attribute [rw] number_of_dpus
13459
+ # The number of DPU hours consumed by the job.
13460
+ # @return [Integer]
13461
+ #
13462
+ # @!attribute [rw] job_duration_in_hour
13463
+ # The duration of the job in hours.
13464
+ # @return [Float]
13465
+ #
13466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergOrphanFileDeletionMetrics AWS API Documentation
13467
+ #
13468
+ class IcebergOrphanFileDeletionMetrics < Struct.new(
13469
+ :number_of_orphan_files_deleted,
13470
+ :number_of_dpus,
13471
+ :job_duration_in_hour)
13472
+ SENSITIVE = []
13473
+ include Aws::Structure
13474
+ end
13475
+
13476
+ # The configuration for an Iceberg snapshot retention optimizer.
13477
+ #
13478
+ # @!attribute [rw] snapshot_retention_period_in_days
13479
+ # The number of days to retain the Iceberg snapshots. If an input is
13480
+ # not provided, the corresponding Iceberg table configuration field
13481
+ # will be used or if not present, the default value 5 will be used.
13482
+ # @return [Integer]
13483
+ #
13484
+ # @!attribute [rw] number_of_snapshots_to_retain
13485
+ # The number of Iceberg snapshots to retain within the retention
13486
+ # period. If an input is not provided, the corresponding Iceberg table
13487
+ # configuration field will be used or if not present, the default
13488
+ # value 1 will be used.
13489
+ # @return [Integer]
13490
+ #
13491
+ # @!attribute [rw] clean_expired_files
13492
+ # If set to false, snapshots are only deleted from table metadata, and
13493
+ # the underlying data and metadata files are not deleted.
13494
+ # @return [Boolean]
13495
+ #
13496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergRetentionConfiguration AWS API Documentation
13497
+ #
13498
+ class IcebergRetentionConfiguration < Struct.new(
13499
+ :snapshot_retention_period_in_days,
13500
+ :number_of_snapshots_to_retain,
13501
+ :clean_expired_files)
13502
+ SENSITIVE = []
13503
+ include Aws::Structure
13504
+ end
13505
+
13506
+ # Snapshot retention metrics for Iceberg for the optimizer run.
13507
+ #
13508
+ # @!attribute [rw] number_of_data_files_deleted
13509
+ # The number of data files deleted by the retention job run.
13510
+ # @return [Integer]
13511
+ #
13512
+ # @!attribute [rw] number_of_manifest_files_deleted
13513
+ # The number of manifest files deleted by the retention job run.
13514
+ # @return [Integer]
13515
+ #
13516
+ # @!attribute [rw] number_of_manifest_lists_deleted
13517
+ # The number of manifest lists deleted by the retention job run.
13518
+ # @return [Integer]
13519
+ #
13520
+ # @!attribute [rw] number_of_dpus
13521
+ # The number of DPU hours consumed by the job.
13522
+ # @return [Integer]
13523
+ #
13524
+ # @!attribute [rw] job_duration_in_hour
13525
+ # The duration of the job in hours.
13526
+ # @return [Float]
13527
+ #
13528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergRetentionMetrics AWS API Documentation
13529
+ #
13530
+ class IcebergRetentionMetrics < Struct.new(
13531
+ :number_of_data_files_deleted,
13532
+ :number_of_manifest_files_deleted,
13533
+ :number_of_manifest_lists_deleted,
13534
+ :number_of_dpus,
13535
+ :job_duration_in_hour)
13536
+ SENSITIVE = []
13537
+ include Aws::Structure
13538
+ end
13539
+
13384
13540
  # Specifies an Apache Iceberg data source where Iceberg tables are
13385
13541
  # stored in Amazon S3.
13386
13542
  #
@@ -17414,6 +17570,36 @@ module Aws::Glue
17414
17570
  include Aws::Structure
17415
17571
  end
17416
17572
 
17573
+ # The configuration for an orphan file deletion optimizer.
17574
+ #
17575
+ # @!attribute [rw] iceberg_configuration
17576
+ # The configuration for an Iceberg orphan file deletion optimizer.
17577
+ # @return [Types::IcebergOrphanFileDeletionConfiguration]
17578
+ #
17579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/OrphanFileDeletionConfiguration AWS API Documentation
17580
+ #
17581
+ class OrphanFileDeletionConfiguration < Struct.new(
17582
+ :iceberg_configuration)
17583
+ SENSITIVE = []
17584
+ include Aws::Structure
17585
+ end
17586
+
17587
+ # A structure that contains orphan file deletion metrics for the
17588
+ # optimizer run.
17589
+ #
17590
+ # @!attribute [rw] iceberg_metrics
17591
+ # A structure containing the Iceberg orphan file deletion metrics for
17592
+ # the optimizer run.
17593
+ # @return [Types::IcebergOrphanFileDeletionMetrics]
17594
+ #
17595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/OrphanFileDeletionMetrics AWS API Documentation
17596
+ #
17597
+ class OrphanFileDeletionMetrics < Struct.new(
17598
+ :iceberg_metrics)
17599
+ SENSITIVE = []
17600
+ include Aws::Structure
17601
+ end
17602
+
17417
17603
  # A structure containing other metadata for a schema version belonging
17418
17604
  # to the same metadata key.
17419
17605
  #
@@ -18745,6 +18931,35 @@ module Aws::Glue
18745
18931
  include Aws::Structure
18746
18932
  end
18747
18933
 
18934
+ # The configuration for a snapshot retention optimizer.
18935
+ #
18936
+ # @!attribute [rw] iceberg_configuration
18937
+ # The configuration for an Iceberg snapshot retention optimizer.
18938
+ # @return [Types::IcebergRetentionConfiguration]
18939
+ #
18940
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/RetentionConfiguration AWS API Documentation
18941
+ #
18942
+ class RetentionConfiguration < Struct.new(
18943
+ :iceberg_configuration)
18944
+ SENSITIVE = []
18945
+ include Aws::Structure
18946
+ end
18947
+
18948
+ # A structure that contains retention metrics for the optimizer run.
18949
+ #
18950
+ # @!attribute [rw] iceberg_metrics
18951
+ # A structure containing the Iceberg retention metrics for the
18952
+ # optimizer run.
18953
+ # @return [Types::IcebergRetentionMetrics]
18954
+ #
18955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/RetentionMetrics AWS API Documentation
18956
+ #
18957
+ class RetentionMetrics < Struct.new(
18958
+ :iceberg_metrics)
18959
+ SENSITIVE = []
18960
+ include Aws::Structure
18961
+ end
18962
+
18748
18963
  # A run identifier.
18749
18964
  #
18750
18965
  # @!attribute [rw] run_id
@@ -18766,6 +18981,9 @@ module Aws::Glue
18766
18981
 
18767
18982
  # Metrics for the optimizer run.
18768
18983
  #
18984
+ # This structure is deprecated. See the individual metric members for
18985
+ # compaction, retention, and orphan file deletion.
18986
+ #
18769
18987
  # @!attribute [rw] number_of_bytes_compacted
18770
18988
  # The number of bytes removed by the compaction job run.
18771
18989
  # @return [String]
@@ -22405,8 +22623,15 @@ module Aws::Glue
22405
22623
  # Contains details about an optimizer associated with a table.
22406
22624
  #
22407
22625
  # @!attribute [rw] type
22408
- # The type of table optimizer. Currently, the only valid value is
22409
- # `compaction`.
22626
+ # The type of table optimizer. The valid values are:
22627
+ #
22628
+ # * `compaction`: for managing compaction with a table optimizer.
22629
+ #
22630
+ # * `retention`: for managing the retention of snapshot with a table
22631
+ # optimizer.
22632
+ #
22633
+ # * `orphan_file_deletion`: for managing the deletion of orphan files
22634
+ # with a table optimizer.
22410
22635
  # @return [String]
22411
22636
  #
22412
22637
  # @!attribute [rw] configuration
@@ -22442,11 +22667,21 @@ module Aws::Glue
22442
22667
  # Whether table optimization is enabled.
22443
22668
  # @return [Boolean]
22444
22669
  #
22670
+ # @!attribute [rw] retention_configuration
22671
+ # The configuration for a snapshot retention optimizer.
22672
+ # @return [Types::RetentionConfiguration]
22673
+ #
22674
+ # @!attribute [rw] orphan_file_deletion_configuration
22675
+ # The configuration for an orphan file deletion optimizer.
22676
+ # @return [Types::OrphanFileDeletionConfiguration]
22677
+ #
22445
22678
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/TableOptimizerConfiguration AWS API Documentation
22446
22679
  #
22447
22680
  class TableOptimizerConfiguration < Struct.new(
22448
22681
  :role_arn,
22449
- :enabled)
22682
+ :enabled,
22683
+ :retention_configuration,
22684
+ :orphan_file_deletion_configuration)
22450
22685
  SENSITIVE = []
22451
22686
  include Aws::Structure
22452
22687
  end
@@ -22468,12 +22703,30 @@ module Aws::Glue
22468
22703
  #
22469
22704
  # @!attribute [rw] metrics
22470
22705
  # A `RunMetrics` object containing metrics for the optimizer run.
22706
+ #
22707
+ # This member is deprecated. See the individual metric members for
22708
+ # compaction, retention, and orphan file deletion.
22471
22709
  # @return [Types::RunMetrics]
22472
22710
  #
22473
22711
  # @!attribute [rw] error
22474
22712
  # An error that occured during the optimizer run.
22475
22713
  # @return [String]
22476
22714
  #
22715
+ # @!attribute [rw] compaction_metrics
22716
+ # A `CompactionMetrics` object containing metrics for the optimizer
22717
+ # run.
22718
+ # @return [Types::CompactionMetrics]
22719
+ #
22720
+ # @!attribute [rw] retention_metrics
22721
+ # A `RetentionMetrics` object containing metrics for the optimizer
22722
+ # run.
22723
+ # @return [Types::RetentionMetrics]
22724
+ #
22725
+ # @!attribute [rw] orphan_file_deletion_metrics
22726
+ # An `OrphanFileDeletionMetrics` object containing metrics for the
22727
+ # optimizer run.
22728
+ # @return [Types::OrphanFileDeletionMetrics]
22729
+ #
22477
22730
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/TableOptimizerRun AWS API Documentation
22478
22731
  #
22479
22732
  class TableOptimizerRun < Struct.new(
@@ -22481,7 +22734,10 @@ module Aws::Glue
22481
22734
  :start_timestamp,
22482
22735
  :end_timestamp,
22483
22736
  :metrics,
22484
- :error)
22737
+ :error,
22738
+ :compaction_metrics,
22739
+ :retention_metrics,
22740
+ :orphan_file_deletion_metrics)
22485
22741
  SENSITIVE = []
22486
22742
  include Aws::Structure
22487
22743
  end
@@ -22765,6 +23021,20 @@ module Aws::Glue
22765
23021
  include Aws::Structure
22766
23022
  end
22767
23023
 
23024
+ # The throttling threshhold was exceeded.
23025
+ #
23026
+ # @!attribute [rw] message
23027
+ # A message describing the problem.
23028
+ # @return [String]
23029
+ #
23030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ThrottlingException AWS API Documentation
23031
+ #
23032
+ class ThrottlingException < Struct.new(
23033
+ :message)
23034
+ SENSITIVE = []
23035
+ include Aws::Structure
23036
+ end
23037
+
22768
23038
  # A timestamp filter.
22769
23039
  #
22770
23040
  # @!attribute [rw] recorded_before
data/lib/aws-sdk-glue.rb CHANGED
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-glue/customizations'
52
52
  # @!group service
53
53
  module Aws::Glue
54
54
 
55
- GEM_VERSION = '1.193.0'
55
+ GEM_VERSION = '1.194.0'
56
56
 
57
57
  end
data/sig/client.rbs CHANGED
@@ -292,7 +292,7 @@ module Aws
292
292
  catalog_id: ::String?,
293
293
  database_name: ::String?,
294
294
  table_name: ::String?,
295
- type: ("compaction")?
295
+ type: ("compaction" | "retention" | "orphan_file_deletion")?
296
296
  },
297
297
  ]
298
298
  ) -> _BatchGetTableOptimizerResponseSuccess
@@ -2390,10 +2390,23 @@ module Aws
2390
2390
  catalog_id: ::String,
2391
2391
  database_name: ::String,
2392
2392
  table_name: ::String,
2393
- type: ("compaction"),
2393
+ type: ("compaction" | "retention" | "orphan_file_deletion"),
2394
2394
  table_optimizer_configuration: {
2395
2395
  role_arn: ::String?,
2396
- enabled: bool?
2396
+ enabled: bool?,
2397
+ retention_configuration: {
2398
+ iceberg_configuration: {
2399
+ snapshot_retention_period_in_days: ::Integer?,
2400
+ number_of_snapshots_to_retain: ::Integer?,
2401
+ clean_expired_files: bool?
2402
+ }?
2403
+ }?,
2404
+ orphan_file_deletion_configuration: {
2405
+ iceberg_configuration: {
2406
+ orphan_file_retention_period_in_days: ::Integer?,
2407
+ location: ::String?
2408
+ }?
2409
+ }?
2397
2410
  }
2398
2411
  ) -> _CreateTableOptimizerResponseSuccess
2399
2412
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateTableOptimizerResponseSuccess
@@ -2745,7 +2758,7 @@ module Aws
2745
2758
  catalog_id: ::String,
2746
2759
  database_name: ::String,
2747
2760
  table_name: ::String,
2748
- type: ("compaction")
2761
+ type: ("compaction" | "retention" | "orphan_file_deletion")
2749
2762
  ) -> _DeleteTableOptimizerResponseSuccess
2750
2763
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteTableOptimizerResponseSuccess
2751
2764
 
@@ -3697,7 +3710,7 @@ module Aws
3697
3710
  catalog_id: ::String,
3698
3711
  database_name: ::String,
3699
3712
  table_name: ::String,
3700
- type: ("compaction")
3713
+ type: ("compaction" | "retention" | "orphan_file_deletion")
3701
3714
  ) -> _GetTableOptimizerResponseSuccess
3702
3715
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetTableOptimizerResponseSuccess
3703
3716
 
@@ -4339,7 +4352,7 @@ module Aws
4339
4352
  catalog_id: ::String,
4340
4353
  database_name: ::String,
4341
4354
  table_name: ::String,
4342
- type: ("compaction"),
4355
+ type: ("compaction" | "retention" | "orphan_file_deletion"),
4343
4356
  ?max_results: ::Integer,
4344
4357
  ?next_token: ::String
4345
4358
  ) -> _ListTableOptimizerRunsResponseSuccess
@@ -6806,10 +6819,23 @@ module Aws
6806
6819
  catalog_id: ::String,
6807
6820
  database_name: ::String,
6808
6821
  table_name: ::String,
6809
- type: ("compaction"),
6822
+ type: ("compaction" | "retention" | "orphan_file_deletion"),
6810
6823
  table_optimizer_configuration: {
6811
6824
  role_arn: ::String?,
6812
- enabled: bool?
6825
+ enabled: bool?,
6826
+ retention_configuration: {
6827
+ iceberg_configuration: {
6828
+ snapshot_retention_period_in_days: ::Integer?,
6829
+ number_of_snapshots_to_retain: ::Integer?,
6830
+ clean_expired_files: bool?
6831
+ }?
6832
+ }?,
6833
+ orphan_file_deletion_configuration: {
6834
+ iceberg_configuration: {
6835
+ orphan_file_retention_period_in_days: ::Integer?,
6836
+ location: ::String?
6837
+ }?
6838
+ }?
6813
6839
  }
6814
6840
  ) -> _UpdateTableOptimizerResponseSuccess
6815
6841
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateTableOptimizerResponseSuccess
data/sig/errors.rbs CHANGED
@@ -117,6 +117,9 @@ module Aws
117
117
  class SchedulerTransitioningException < ::Aws::Errors::ServiceError
118
118
  def message: () -> ::String
119
119
  end
120
+ class ThrottlingException < ::Aws::Errors::ServiceError
121
+ def message: () -> ::String
122
+ end
120
123
  class ValidationException < ::Aws::Errors::ServiceError
121
124
  def message: () -> ::String
122
125
  end
data/sig/types.rbs CHANGED
@@ -308,7 +308,7 @@ module Aws::Glue
308
308
  attr_accessor catalog_id: ::String
309
309
  attr_accessor database_name: ::String
310
310
  attr_accessor table_name: ::String
311
- attr_accessor type: ("compaction")
311
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
312
312
  SENSITIVE: []
313
313
  end
314
314
 
@@ -317,7 +317,7 @@ module Aws::Glue
317
317
  attr_accessor catalog_id: ::String
318
318
  attr_accessor database_name: ::String
319
319
  attr_accessor table_name: ::String
320
- attr_accessor type: ("compaction")
320
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
321
321
  SENSITIVE: []
322
322
  end
323
323
 
@@ -798,6 +798,11 @@ module Aws::Glue
798
798
  SENSITIVE: []
799
799
  end
800
800
 
801
+ class CompactionMetrics
802
+ attr_accessor iceberg_metrics: Types::IcebergCompactionMetrics
803
+ SENSITIVE: []
804
+ end
805
+
801
806
  class ConcurrentModificationException
802
807
  attr_accessor message: ::String
803
808
  SENSITIVE: []
@@ -1347,7 +1352,7 @@ module Aws::Glue
1347
1352
  attr_accessor catalog_id: ::String
1348
1353
  attr_accessor database_name: ::String
1349
1354
  attr_accessor table_name: ::String
1350
- attr_accessor type: ("compaction")
1355
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
1351
1356
  attr_accessor table_optimizer_configuration: Types::TableOptimizerConfiguration
1352
1357
  SENSITIVE: []
1353
1358
  end
@@ -1895,7 +1900,7 @@ module Aws::Glue
1895
1900
  attr_accessor catalog_id: ::String
1896
1901
  attr_accessor database_name: ::String
1897
1902
  attr_accessor table_name: ::String
1898
- attr_accessor type: ("compaction")
1903
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
1899
1904
  SENSITIVE: []
1900
1905
  end
1901
1906
 
@@ -3012,7 +3017,7 @@ module Aws::Glue
3012
3017
  attr_accessor catalog_id: ::String
3013
3018
  attr_accessor database_name: ::String
3014
3019
  attr_accessor table_name: ::String
3015
- attr_accessor type: ("compaction")
3020
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
3016
3021
  SENSITIVE: []
3017
3022
  end
3018
3023
 
@@ -3348,12 +3353,49 @@ module Aws::Glue
3348
3353
  SENSITIVE: []
3349
3354
  end
3350
3355
 
3356
+ class IcebergCompactionMetrics
3357
+ attr_accessor number_of_bytes_compacted: ::Integer
3358
+ attr_accessor number_of_files_compacted: ::Integer
3359
+ attr_accessor number_of_dpus: ::Integer
3360
+ attr_accessor job_duration_in_hour: ::Float
3361
+ SENSITIVE: []
3362
+ end
3363
+
3351
3364
  class IcebergInput
3352
3365
  attr_accessor metadata_operation: ("CREATE")
3353
3366
  attr_accessor version: ::String
3354
3367
  SENSITIVE: []
3355
3368
  end
3356
3369
 
3370
+ class IcebergOrphanFileDeletionConfiguration
3371
+ attr_accessor orphan_file_retention_period_in_days: ::Integer
3372
+ attr_accessor location: ::String
3373
+ SENSITIVE: []
3374
+ end
3375
+
3376
+ class IcebergOrphanFileDeletionMetrics
3377
+ attr_accessor number_of_orphan_files_deleted: ::Integer
3378
+ attr_accessor number_of_dpus: ::Integer
3379
+ attr_accessor job_duration_in_hour: ::Float
3380
+ SENSITIVE: []
3381
+ end
3382
+
3383
+ class IcebergRetentionConfiguration
3384
+ attr_accessor snapshot_retention_period_in_days: ::Integer
3385
+ attr_accessor number_of_snapshots_to_retain: ::Integer
3386
+ attr_accessor clean_expired_files: bool
3387
+ SENSITIVE: []
3388
+ end
3389
+
3390
+ class IcebergRetentionMetrics
3391
+ attr_accessor number_of_data_files_deleted: ::Integer
3392
+ attr_accessor number_of_manifest_files_deleted: ::Integer
3393
+ attr_accessor number_of_manifest_lists_deleted: ::Integer
3394
+ attr_accessor number_of_dpus: ::Integer
3395
+ attr_accessor job_duration_in_hour: ::Float
3396
+ SENSITIVE: []
3397
+ end
3398
+
3357
3399
  class IcebergTarget
3358
3400
  attr_accessor paths: ::Array[::String]
3359
3401
  attr_accessor connection_name: ::String
@@ -3948,7 +3990,7 @@ module Aws::Glue
3948
3990
  attr_accessor catalog_id: ::String
3949
3991
  attr_accessor database_name: ::String
3950
3992
  attr_accessor table_name: ::String
3951
- attr_accessor type: ("compaction")
3993
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
3952
3994
  attr_accessor max_results: ::Integer
3953
3995
  attr_accessor next_token: ::String
3954
3996
  SENSITIVE: []
@@ -4235,6 +4277,16 @@ module Aws::Glue
4235
4277
  SENSITIVE: []
4236
4278
  end
4237
4279
 
4280
+ class OrphanFileDeletionConfiguration
4281
+ attr_accessor iceberg_configuration: Types::IcebergOrphanFileDeletionConfiguration
4282
+ SENSITIVE: []
4283
+ end
4284
+
4285
+ class OrphanFileDeletionMetrics
4286
+ attr_accessor iceberg_metrics: Types::IcebergOrphanFileDeletionMetrics
4287
+ SENSITIVE: []
4288
+ end
4289
+
4238
4290
  class OtherMetadataValueListItem
4239
4291
  attr_accessor metadata_value: ::String
4240
4292
  attr_accessor created_time: ::String
@@ -4601,6 +4653,16 @@ module Aws::Glue
4601
4653
  SENSITIVE: []
4602
4654
  end
4603
4655
 
4656
+ class RetentionConfiguration
4657
+ attr_accessor iceberg_configuration: Types::IcebergRetentionConfiguration
4658
+ SENSITIVE: []
4659
+ end
4660
+
4661
+ class RetentionMetrics
4662
+ attr_accessor iceberg_metrics: Types::IcebergRetentionMetrics
4663
+ SENSITIVE: []
4664
+ end
4665
+
4604
4666
  class RunIdentifier
4605
4667
  attr_accessor run_id: ::String
4606
4668
  attr_accessor job_run_id: ::String
@@ -5499,7 +5561,7 @@ module Aws::Glue
5499
5561
  end
5500
5562
 
5501
5563
  class TableOptimizer
5502
- attr_accessor type: ("compaction")
5564
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
5503
5565
  attr_accessor configuration: Types::TableOptimizerConfiguration
5504
5566
  attr_accessor last_run: Types::TableOptimizerRun
5505
5567
  SENSITIVE: []
@@ -5508,6 +5570,8 @@ module Aws::Glue
5508
5570
  class TableOptimizerConfiguration
5509
5571
  attr_accessor role_arn: ::String
5510
5572
  attr_accessor enabled: bool
5573
+ attr_accessor retention_configuration: Types::RetentionConfiguration
5574
+ attr_accessor orphan_file_deletion_configuration: Types::OrphanFileDeletionConfiguration
5511
5575
  SENSITIVE: []
5512
5576
  end
5513
5577
 
@@ -5517,6 +5581,9 @@ module Aws::Glue
5517
5581
  attr_accessor end_timestamp: ::Time
5518
5582
  attr_accessor metrics: Types::RunMetrics
5519
5583
  attr_accessor error: ::String
5584
+ attr_accessor compaction_metrics: Types::CompactionMetrics
5585
+ attr_accessor retention_metrics: Types::RetentionMetrics
5586
+ attr_accessor orphan_file_deletion_metrics: Types::OrphanFileDeletionMetrics
5520
5587
  SENSITIVE: []
5521
5588
  end
5522
5589
 
@@ -5591,6 +5658,11 @@ module Aws::Glue
5591
5658
  SENSITIVE: []
5592
5659
  end
5593
5660
 
5661
+ class ThrottlingException
5662
+ attr_accessor message: ::String
5663
+ SENSITIVE: []
5664
+ end
5665
+
5594
5666
  class TimestampFilter
5595
5667
  attr_accessor recorded_before: ::Time
5596
5668
  attr_accessor recorded_after: ::Time
@@ -5964,7 +6036,7 @@ module Aws::Glue
5964
6036
  attr_accessor catalog_id: ::String
5965
6037
  attr_accessor database_name: ::String
5966
6038
  attr_accessor table_name: ::String
5967
- attr_accessor type: ("compaction")
6039
+ attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
5968
6040
  attr_accessor table_optimizer_configuration: Types::TableOptimizerConfiguration
5969
6041
  SENSITIVE: []
5970
6042
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-glue
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.193.0
4
+ version: 1.194.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-11 00:00:00.000000000 Z
11
+ date: 2024-09-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core