aws-sdk-glue 1.229.0 → 1.230.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: a677875d22cdce43c72b93ea7c1761cc9bf2dfc9327e72f2d696b250cd3fcf52
4
- data.tar.gz: 5977d4506ac3774f00ed8de7729abdfd37161bea452b437f310499e924b741a2
3
+ metadata.gz: e2756cacae0680b1c981f47222fb0a7b37398541df1791a72d099e54e2f00ca9
4
+ data.tar.gz: a8786c8244f133c749434a0c00bd9494ef3f8d998a78394ba7170cfdb6512a72
5
5
  SHA512:
6
- metadata.gz: c3943c2494b5056de9a3ed24bd49d1616699b0a52c084dd7071737d3b5f5ace0b175a4473e505cb3356b09d9f3b639ec2cd9a9924a4923f14f0945a3f0080673
7
- data.tar.gz: 390206b23383a926ddc749425832cd00088a0db515542768c4ba82d743492b8f6de08fea4a03de10b640d06bdcccd9cf482e03af7ad2df1c7d4ce890faccc686
6
+ metadata.gz: 83d4fe23dce69aa93300291c35e09f632460cf94b4b3947dae27f4ec848c8834a8fa00662b6b0712d3d2bd1c4c6363739748857d9a535010925ab17f7cf7626b
7
+ data.tar.gz: 2a4b0cfe02b8970dd336d8db47f3ef95be201b39b0daa489c8c92c92647ca5398ea5911228f37a6c6ba2f108da25e7c19e3f63a46ccdd599a2562757b3e23fa3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.230.0 (2025-08-07)
5
+ ------------------
6
+
7
+ * Feature - AWS Glue Data Catalog now supports Iceberg Optimization settings at the Catalog level, and supports new options to control the optimization job run rate.
8
+
4
9
  1.229.0 (2025-08-04)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.229.0
1
+ 1.230.0
@@ -1296,11 +1296,15 @@ module Aws::Glue
1296
1296
  # resp.table_optimizers[0].table_optimizer.configuration.enabled #=> Boolean
1297
1297
  # resp.table_optimizers[0].table_optimizer.configuration.vpc_configuration.glue_connection_name #=> String
1298
1298
  # resp.table_optimizers[0].table_optimizer.configuration.compaction_configuration.iceberg_configuration.strategy #=> String, one of "binpack", "sort", "z-order"
1299
+ # resp.table_optimizers[0].table_optimizer.configuration.compaction_configuration.iceberg_configuration.min_input_files #=> Integer
1300
+ # resp.table_optimizers[0].table_optimizer.configuration.compaction_configuration.iceberg_configuration.delete_file_threshold #=> Integer
1299
1301
  # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.snapshot_retention_period_in_days #=> Integer
1300
1302
  # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.number_of_snapshots_to_retain #=> Integer
1301
1303
  # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.clean_expired_files #=> Boolean
1304
+ # resp.table_optimizers[0].table_optimizer.configuration.retention_configuration.iceberg_configuration.run_rate_in_hours #=> Integer
1302
1305
  # resp.table_optimizers[0].table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.orphan_file_retention_period_in_days #=> Integer
1303
1306
  # resp.table_optimizers[0].table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.location #=> String
1307
+ # resp.table_optimizers[0].table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.run_rate_in_hours #=> Integer
1304
1308
  # resp.table_optimizers[0].table_optimizer.last_run.event_type #=> String, one of "starting", "completed", "failed", "in_progress"
1305
1309
  # resp.table_optimizers[0].table_optimizer.last_run.start_timestamp #=> Time
1306
1310
  # resp.table_optimizers[0].table_optimizer.last_run.end_timestamp #=> Time
@@ -1325,6 +1329,7 @@ module Aws::Glue
1325
1329
  # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.dpu_hours #=> Float
1326
1330
  # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_dpus #=> Integer
1327
1331
  # resp.table_optimizers[0].table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.job_duration_in_hour #=> Float
1332
+ # resp.table_optimizers[0].table_optimizer.configuration_source #=> String, one of "catalog", "table"
1328
1333
  # resp.failures #=> Array
1329
1334
  # resp.failures[0].error.error_code #=> String
1330
1335
  # resp.failures[0].error.error_message #=> String
@@ -2045,6 +2050,18 @@ module Aws::Glue
2045
2050
  # kms_key: "ResourceArnString",
2046
2051
  # catalog_type: "NameString",
2047
2052
  # },
2053
+ # iceberg_optimization_properties: {
2054
+ # role_arn: "IAMRoleArn",
2055
+ # compaction: {
2056
+ # "KeyString" => "ParametersMapValue",
2057
+ # },
2058
+ # retention: {
2059
+ # "KeyString" => "ParametersMapValue",
2060
+ # },
2061
+ # orphan_file_deletion: {
2062
+ # "KeyString" => "ParametersMapValue",
2063
+ # },
2064
+ # },
2048
2065
  # custom_properties: {
2049
2066
  # "KeyString" => "ParametersMapValue",
2050
2067
  # },
@@ -4430,6 +4447,8 @@ module Aws::Glue
4430
4447
  # compaction_configuration: {
4431
4448
  # iceberg_configuration: {
4432
4449
  # strategy: "binpack", # accepts binpack, sort, z-order
4450
+ # min_input_files: 1,
4451
+ # delete_file_threshold: 1,
4433
4452
  # },
4434
4453
  # },
4435
4454
  # retention_configuration: {
@@ -4437,12 +4456,14 @@ module Aws::Glue
4437
4456
  # snapshot_retention_period_in_days: 1,
4438
4457
  # number_of_snapshots_to_retain: 1,
4439
4458
  # clean_expired_files: false,
4459
+ # run_rate_in_hours: 1,
4440
4460
  # },
4441
4461
  # },
4442
4462
  # orphan_file_deletion_configuration: {
4443
4463
  # iceberg_configuration: {
4444
4464
  # orphan_file_retention_period_in_days: 1,
4445
4465
  # location: "MessageString",
4466
+ # run_rate_in_hours: 1,
4446
4467
  # },
4447
4468
  # },
4448
4469
  # },
@@ -6350,6 +6371,14 @@ module Aws::Glue
6350
6371
  # resp.catalog.catalog_properties.data_lake_access_properties.redshift_database_name #=> String
6351
6372
  # resp.catalog.catalog_properties.data_lake_access_properties.status_message #=> String
6352
6373
  # resp.catalog.catalog_properties.data_lake_access_properties.catalog_type #=> String
6374
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.role_arn #=> String
6375
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.compaction #=> Hash
6376
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.compaction["KeyString"] #=> String
6377
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.retention #=> Hash
6378
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.retention["KeyString"] #=> String
6379
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.orphan_file_deletion #=> Hash
6380
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.orphan_file_deletion["KeyString"] #=> String
6381
+ # resp.catalog.catalog_properties.iceberg_optimization_properties.last_updated_time #=> Time
6353
6382
  # resp.catalog.catalog_properties.custom_properties #=> Hash
6354
6383
  # resp.catalog.catalog_properties.custom_properties["KeyString"] #=> String
6355
6384
  # resp.catalog.create_table_default_permissions #=> Array
@@ -6470,6 +6499,14 @@ module Aws::Glue
6470
6499
  # resp.catalog_list[0].catalog_properties.data_lake_access_properties.redshift_database_name #=> String
6471
6500
  # resp.catalog_list[0].catalog_properties.data_lake_access_properties.status_message #=> String
6472
6501
  # resp.catalog_list[0].catalog_properties.data_lake_access_properties.catalog_type #=> String
6502
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.role_arn #=> String
6503
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.compaction #=> Hash
6504
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.compaction["KeyString"] #=> String
6505
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.retention #=> Hash
6506
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.retention["KeyString"] #=> String
6507
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.orphan_file_deletion #=> Hash
6508
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.orphan_file_deletion["KeyString"] #=> String
6509
+ # resp.catalog_list[0].catalog_properties.iceberg_optimization_properties.last_updated_time #=> Time
6473
6510
  # resp.catalog_list[0].catalog_properties.custom_properties #=> Hash
6474
6511
  # resp.catalog_list[0].catalog_properties.custom_properties["KeyString"] #=> String
6475
6512
  # resp.catalog_list[0].create_table_default_permissions #=> Array
@@ -10160,11 +10197,15 @@ module Aws::Glue
10160
10197
  # resp.table_optimizer.configuration.enabled #=> Boolean
10161
10198
  # resp.table_optimizer.configuration.vpc_configuration.glue_connection_name #=> String
10162
10199
  # resp.table_optimizer.configuration.compaction_configuration.iceberg_configuration.strategy #=> String, one of "binpack", "sort", "z-order"
10200
+ # resp.table_optimizer.configuration.compaction_configuration.iceberg_configuration.min_input_files #=> Integer
10201
+ # resp.table_optimizer.configuration.compaction_configuration.iceberg_configuration.delete_file_threshold #=> Integer
10163
10202
  # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.snapshot_retention_period_in_days #=> Integer
10164
10203
  # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.number_of_snapshots_to_retain #=> Integer
10165
10204
  # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.clean_expired_files #=> Boolean
10205
+ # resp.table_optimizer.configuration.retention_configuration.iceberg_configuration.run_rate_in_hours #=> Integer
10166
10206
  # resp.table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.orphan_file_retention_period_in_days #=> Integer
10167
10207
  # resp.table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.location #=> String
10208
+ # resp.table_optimizer.configuration.orphan_file_deletion_configuration.iceberg_configuration.run_rate_in_hours #=> Integer
10168
10209
  # resp.table_optimizer.last_run.event_type #=> String, one of "starting", "completed", "failed", "in_progress"
10169
10210
  # resp.table_optimizer.last_run.start_timestamp #=> Time
10170
10211
  # resp.table_optimizer.last_run.end_timestamp #=> Time
@@ -10189,6 +10230,7 @@ module Aws::Glue
10189
10230
  # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.dpu_hours #=> Float
10190
10231
  # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.number_of_dpus #=> Integer
10191
10232
  # resp.table_optimizer.last_run.orphan_file_deletion_metrics.iceberg_metrics.job_duration_in_hour #=> Float
10233
+ # resp.table_optimizer.configuration_source #=> String, one of "catalog", "table"
10192
10234
  #
10193
10235
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetTableOptimizer AWS API Documentation
10194
10236
  #
@@ -15584,6 +15626,18 @@ module Aws::Glue
15584
15626
  # kms_key: "ResourceArnString",
15585
15627
  # catalog_type: "NameString",
15586
15628
  # },
15629
+ # iceberg_optimization_properties: {
15630
+ # role_arn: "IAMRoleArn",
15631
+ # compaction: {
15632
+ # "KeyString" => "ParametersMapValue",
15633
+ # },
15634
+ # retention: {
15635
+ # "KeyString" => "ParametersMapValue",
15636
+ # },
15637
+ # orphan_file_deletion: {
15638
+ # "KeyString" => "ParametersMapValue",
15639
+ # },
15640
+ # },
15587
15641
  # custom_properties: {
15588
15642
  # "KeyString" => "ParametersMapValue",
15589
15643
  # },
@@ -17325,6 +17379,8 @@ module Aws::Glue
17325
17379
  # compaction_configuration: {
17326
17380
  # iceberg_configuration: {
17327
17381
  # strategy: "binpack", # accepts binpack, sort, z-order
17382
+ # min_input_files: 1,
17383
+ # delete_file_threshold: 1,
17328
17384
  # },
17329
17385
  # },
17330
17386
  # retention_configuration: {
@@ -17332,12 +17388,14 @@ module Aws::Glue
17332
17388
  # snapshot_retention_period_in_days: 1,
17333
17389
  # number_of_snapshots_to_retain: 1,
17334
17390
  # clean_expired_files: false,
17391
+ # run_rate_in_hours: 1,
17335
17392
  # },
17336
17393
  # },
17337
17394
  # orphan_file_deletion_configuration: {
17338
17395
  # iceberg_configuration: {
17339
17396
  # orphan_file_retention_period_in_days: 1,
17340
17397
  # location: "MessageString",
17398
+ # run_rate_in_hours: 1,
17341
17399
  # },
17342
17400
  # },
17343
17401
  # },
@@ -17619,7 +17677,7 @@ module Aws::Glue
17619
17677
  tracer: tracer
17620
17678
  )
17621
17679
  context[:gem_name] = 'aws-sdk-glue'
17622
- context[:gem_version] = '1.229.0'
17680
+ context[:gem_version] = '1.230.0'
17623
17681
  Seahorse::Client::Request.new(handlers, context)
17624
17682
  end
17625
17683
 
@@ -251,6 +251,7 @@ module Aws::Glue
251
251
  ConfigValueString = Shapes::StringShape.new(name: 'ConfigValueString')
252
252
  ConfigurationMap = Shapes::MapShape.new(name: 'ConfigurationMap')
253
253
  ConfigurationObject = Shapes::StructureShape.new(name: 'ConfigurationObject')
254
+ ConfigurationSource = Shapes::StringShape.new(name: 'ConfigurationSource')
254
255
  ConflictException = Shapes::StructureShape.new(name: 'ConflictException')
255
256
  ConfusionMatrix = Shapes::StructureShape.new(name: 'ConfusionMatrix')
256
257
  Connection = Shapes::StructureShape.new(name: 'Connection')
@@ -812,6 +813,8 @@ module Aws::Glue
812
813
  IcebergDocument = Shapes::DocumentShape.new(name: 'IcebergDocument', document: true)
813
814
  IcebergInput = Shapes::StructureShape.new(name: 'IcebergInput')
814
815
  IcebergNullOrder = Shapes::StringShape.new(name: 'IcebergNullOrder')
816
+ IcebergOptimizationProperties = Shapes::StructureShape.new(name: 'IcebergOptimizationProperties')
817
+ IcebergOptimizationPropertiesOutput = Shapes::StructureShape.new(name: 'IcebergOptimizationPropertiesOutput')
815
818
  IcebergOrphanFileDeletionConfiguration = Shapes::StructureShape.new(name: 'IcebergOrphanFileDeletionConfiguration')
816
819
  IcebergOrphanFileDeletionMetrics = Shapes::StructureShape.new(name: 'IcebergOrphanFileDeletionMetrics')
817
820
  IcebergPartitionField = Shapes::StructureShape.new(name: 'IcebergPartitionField')
@@ -2129,10 +2132,12 @@ module Aws::Glue
2129
2132
  CatalogList.member = Shapes::ShapeRef.new(shape: Catalog)
2130
2133
 
2131
2134
  CatalogProperties.add_member(:data_lake_access_properties, Shapes::ShapeRef.new(shape: DataLakeAccessProperties, location_name: "DataLakeAccessProperties"))
2135
+ CatalogProperties.add_member(:iceberg_optimization_properties, Shapes::ShapeRef.new(shape: IcebergOptimizationProperties, location_name: "IcebergOptimizationProperties"))
2132
2136
  CatalogProperties.add_member(:custom_properties, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "CustomProperties"))
2133
2137
  CatalogProperties.struct_class = Types::CatalogProperties
2134
2138
 
2135
2139
  CatalogPropertiesOutput.add_member(:data_lake_access_properties, Shapes::ShapeRef.new(shape: DataLakeAccessPropertiesOutput, location_name: "DataLakeAccessProperties"))
2140
+ CatalogPropertiesOutput.add_member(:iceberg_optimization_properties, Shapes::ShapeRef.new(shape: IcebergOptimizationPropertiesOutput, location_name: "IcebergOptimizationProperties"))
2136
2141
  CatalogPropertiesOutput.add_member(:custom_properties, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "CustomProperties"))
2137
2142
  CatalogPropertiesOutput.struct_class = Types::CatalogPropertiesOutput
2138
2143
 
@@ -4774,6 +4779,8 @@ module Aws::Glue
4774
4779
  HudiTargetList.member = Shapes::ShapeRef.new(shape: HudiTarget)
4775
4780
 
4776
4781
  IcebergCompactionConfiguration.add_member(:strategy, Shapes::ShapeRef.new(shape: CompactionStrategy, location_name: "strategy"))
4782
+ IcebergCompactionConfiguration.add_member(:min_input_files, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "minInputFiles"))
4783
+ IcebergCompactionConfiguration.add_member(:delete_file_threshold, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "deleteFileThreshold"))
4777
4784
  IcebergCompactionConfiguration.struct_class = Types::IcebergCompactionConfiguration
4778
4785
 
4779
4786
  IcebergCompactionMetrics.add_member(:number_of_bytes_compacted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfBytesCompacted"))
@@ -4788,8 +4795,22 @@ module Aws::Glue
4788
4795
  IcebergInput.add_member(:create_iceberg_table_input, Shapes::ShapeRef.new(shape: CreateIcebergTableInput, location_name: "CreateIcebergTableInput"))
4789
4796
  IcebergInput.struct_class = Types::IcebergInput
4790
4797
 
4798
+ IcebergOptimizationProperties.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, location_name: "RoleArn"))
4799
+ IcebergOptimizationProperties.add_member(:compaction, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "Compaction"))
4800
+ IcebergOptimizationProperties.add_member(:retention, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "Retention"))
4801
+ IcebergOptimizationProperties.add_member(:orphan_file_deletion, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "OrphanFileDeletion"))
4802
+ IcebergOptimizationProperties.struct_class = Types::IcebergOptimizationProperties
4803
+
4804
+ IcebergOptimizationPropertiesOutput.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, location_name: "RoleArn"))
4805
+ IcebergOptimizationPropertiesOutput.add_member(:compaction, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "Compaction"))
4806
+ IcebergOptimizationPropertiesOutput.add_member(:retention, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "Retention"))
4807
+ IcebergOptimizationPropertiesOutput.add_member(:orphan_file_deletion, Shapes::ShapeRef.new(shape: ParametersMap, location_name: "OrphanFileDeletion"))
4808
+ IcebergOptimizationPropertiesOutput.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastUpdatedTime"))
4809
+ IcebergOptimizationPropertiesOutput.struct_class = Types::IcebergOptimizationPropertiesOutput
4810
+
4791
4811
  IcebergOrphanFileDeletionConfiguration.add_member(:orphan_file_retention_period_in_days, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "orphanFileRetentionPeriodInDays"))
4792
4812
  IcebergOrphanFileDeletionConfiguration.add_member(:location, Shapes::ShapeRef.new(shape: MessageString, location_name: "location"))
4813
+ IcebergOrphanFileDeletionConfiguration.add_member(:run_rate_in_hours, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "runRateInHours"))
4793
4814
  IcebergOrphanFileDeletionConfiguration.struct_class = Types::IcebergOrphanFileDeletionConfiguration
4794
4815
 
4795
4816
  IcebergOrphanFileDeletionMetrics.add_member(:number_of_orphan_files_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfOrphanFilesDeleted"))
@@ -4813,6 +4834,7 @@ module Aws::Glue
4813
4834
  IcebergRetentionConfiguration.add_member(:snapshot_retention_period_in_days, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "snapshotRetentionPeriodInDays"))
4814
4835
  IcebergRetentionConfiguration.add_member(:number_of_snapshots_to_retain, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "numberOfSnapshotsToRetain"))
4815
4836
  IcebergRetentionConfiguration.add_member(:clean_expired_files, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "cleanExpiredFiles"))
4837
+ IcebergRetentionConfiguration.add_member(:run_rate_in_hours, Shapes::ShapeRef.new(shape: NullableInteger, location_name: "runRateInHours"))
4816
4838
  IcebergRetentionConfiguration.struct_class = Types::IcebergRetentionConfiguration
4817
4839
 
4818
4840
  IcebergRetentionMetrics.add_member(:number_of_data_files_deleted, Shapes::ShapeRef.new(shape: metricCounts, location_name: "NumberOfDataFilesDeleted"))
@@ -6906,6 +6928,7 @@ module Aws::Glue
6906
6928
  TableOptimizer.add_member(:type, Shapes::ShapeRef.new(shape: TableOptimizerType, location_name: "type"))
6907
6929
  TableOptimizer.add_member(:configuration, Shapes::ShapeRef.new(shape: TableOptimizerConfiguration, location_name: "configuration"))
6908
6930
  TableOptimizer.add_member(:last_run, Shapes::ShapeRef.new(shape: TableOptimizerRun, location_name: "lastRun"))
6931
+ TableOptimizer.add_member(:configuration_source, Shapes::ShapeRef.new(shape: ConfigurationSource, location_name: "configurationSource"))
6909
6932
  TableOptimizer.struct_class = Types::TableOptimizer
6910
6933
 
6911
6934
  TableOptimizerConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: ArnString, location_name: "roleArn"))
@@ -2350,6 +2350,13 @@ module Aws::Glue
2350
2350
  # Data Catalog.
2351
2351
  # @return [Types::DataLakeAccessProperties]
2352
2352
  #
2353
+ # @!attribute [rw] iceberg_optimization_properties
2354
+ # A structure that specifies Iceberg table optimization properties for
2355
+ # the catalog. This includes configuration for compaction, retention,
2356
+ # and orphan file deletion operations that can be applied to Iceberg
2357
+ # tables in this catalog.
2358
+ # @return [Types::IcebergOptimizationProperties]
2359
+ #
2353
2360
  # @!attribute [rw] custom_properties
2354
2361
  # Additional key-value properties for the catalog, such as column
2355
2362
  # statistics optimizations.
@@ -2359,6 +2366,7 @@ module Aws::Glue
2359
2366
  #
2360
2367
  class CatalogProperties < Struct.new(
2361
2368
  :data_lake_access_properties,
2369
+ :iceberg_optimization_properties,
2362
2370
  :custom_properties)
2363
2371
  SENSITIVE = []
2364
2372
  include Aws::Structure
@@ -2373,6 +2381,13 @@ module Aws::Glue
2373
2381
  # Data Catalog.
2374
2382
  # @return [Types::DataLakeAccessPropertiesOutput]
2375
2383
  #
2384
+ # @!attribute [rw] iceberg_optimization_properties
2385
+ # An `IcebergOptimizationPropertiesOutput` object that specifies
2386
+ # Iceberg table optimization settings for the catalog, including
2387
+ # configurations for compaction, retention, and orphan file deletion
2388
+ # operations.
2389
+ # @return [Types::IcebergOptimizationPropertiesOutput]
2390
+ #
2376
2391
  # @!attribute [rw] custom_properties
2377
2392
  # Additional key-value properties for the catalog, such as column
2378
2393
  # statistics optimizations.
@@ -2382,6 +2397,7 @@ module Aws::Glue
2382
2397
  #
2383
2398
  class CatalogPropertiesOutput < Struct.new(
2384
2399
  :data_lake_access_properties,
2400
+ :iceberg_optimization_properties,
2385
2401
  :custom_properties)
2386
2402
  SENSITIVE = []
2387
2403
  include Aws::Structure
@@ -15827,10 +15843,29 @@ module Aws::Glue
15827
15843
  # used.
15828
15844
  # @return [String]
15829
15845
  #
15846
+ # @!attribute [rw] min_input_files
15847
+ # The minimum number of data files that must be present in a partition
15848
+ # before compaction will actually compact files. This parameter helps
15849
+ # control when compaction is triggered, preventing unnecessary
15850
+ # compaction operations on partitions with few files. If an input is
15851
+ # not provided, the default value 100 will be used.
15852
+ # @return [Integer]
15853
+ #
15854
+ # @!attribute [rw] delete_file_threshold
15855
+ # The minimum number of deletes that must be present in a data file to
15856
+ # make it eligible for compaction. This parameter helps optimize
15857
+ # compaction by focusing on files that contain a significant number of
15858
+ # delete operations, which can improve query performance by removing
15859
+ # deleted records. If an input is not provided, the default value 1
15860
+ # will be used.
15861
+ # @return [Integer]
15862
+ #
15830
15863
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergCompactionConfiguration AWS API Documentation
15831
15864
  #
15832
15865
  class IcebergCompactionConfiguration < Struct.new(
15833
- :strategy)
15866
+ :strategy,
15867
+ :min_input_files,
15868
+ :delete_file_threshold)
15834
15869
  SENSITIVE = []
15835
15870
  include Aws::Structure
15836
15871
  end
@@ -15897,6 +15932,88 @@ module Aws::Glue
15897
15932
  include Aws::Structure
15898
15933
  end
15899
15934
 
15935
+ # A structure that specifies Iceberg table optimization properties for
15936
+ # the catalog, including configurations for compaction, retention, and
15937
+ # orphan file deletion operations.
15938
+ #
15939
+ # @!attribute [rw] role_arn
15940
+ # The Amazon Resource Name (ARN) of the IAM role that will be assumed
15941
+ # to perform Iceberg table optimization operations.
15942
+ # @return [String]
15943
+ #
15944
+ # @!attribute [rw] compaction
15945
+ # A map of key-value pairs that specify configuration parameters for
15946
+ # Iceberg table compaction operations, which optimize the layout of
15947
+ # data files to improve query performance.
15948
+ # @return [Hash<String,String>]
15949
+ #
15950
+ # @!attribute [rw] retention
15951
+ # A map of key-value pairs that specify configuration parameters for
15952
+ # Iceberg table retention operations, which manage the lifecycle of
15953
+ # table snapshots to control storage costs.
15954
+ # @return [Hash<String,String>]
15955
+ #
15956
+ # @!attribute [rw] orphan_file_deletion
15957
+ # A map of key-value pairs that specify configuration parameters for
15958
+ # Iceberg orphan file deletion operations, which identify and remove
15959
+ # files that are no longer referenced by the table metadata.
15960
+ # @return [Hash<String,String>]
15961
+ #
15962
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergOptimizationProperties AWS API Documentation
15963
+ #
15964
+ class IcebergOptimizationProperties < Struct.new(
15965
+ :role_arn,
15966
+ :compaction,
15967
+ :retention,
15968
+ :orphan_file_deletion)
15969
+ SENSITIVE = []
15970
+ include Aws::Structure
15971
+ end
15972
+
15973
+ # A structure that contains the output properties of Iceberg table
15974
+ # optimization configuration for your catalog resource in the Glue Data
15975
+ # Catalog.
15976
+ #
15977
+ # @!attribute [rw] role_arn
15978
+ # The Amazon Resource Name (ARN) of the IAM role that is used to
15979
+ # perform Iceberg table optimization operations.
15980
+ # @return [String]
15981
+ #
15982
+ # @!attribute [rw] compaction
15983
+ # A map of key-value pairs that specify configuration parameters for
15984
+ # Iceberg table compaction operations, which optimize the layout of
15985
+ # data files to improve query performance.
15986
+ # @return [Hash<String,String>]
15987
+ #
15988
+ # @!attribute [rw] retention
15989
+ # A map of key-value pairs that specify configuration parameters for
15990
+ # Iceberg table retention operations, which manage the lifecycle of
15991
+ # table snapshots to control storage costs.
15992
+ # @return [Hash<String,String>]
15993
+ #
15994
+ # @!attribute [rw] orphan_file_deletion
15995
+ # A map of key-value pairs that specify configuration parameters for
15996
+ # Iceberg orphan file deletion operations, which identify and remove
15997
+ # files that are no longer referenced by the table metadata.
15998
+ # @return [Hash<String,String>]
15999
+ #
16000
+ # @!attribute [rw] last_updated_time
16001
+ # The timestamp when the Iceberg optimization properties were last
16002
+ # updated.
16003
+ # @return [Time]
16004
+ #
16005
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergOptimizationPropertiesOutput AWS API Documentation
16006
+ #
16007
+ class IcebergOptimizationPropertiesOutput < Struct.new(
16008
+ :role_arn,
16009
+ :compaction,
16010
+ :retention,
16011
+ :orphan_file_deletion,
16012
+ :last_updated_time)
16013
+ SENSITIVE = []
16014
+ include Aws::Structure
16015
+ end
16016
+
15900
16017
  # The configuration for an Iceberg orphan file deletion optimizer.
15901
16018
  #
15902
16019
  # @!attribute [rw] orphan_file_retention_period_in_days
@@ -15911,11 +16028,20 @@ module Aws::Glue
15911
16028
  # top-level table location.
15912
16029
  # @return [String]
15913
16030
  #
16031
+ # @!attribute [rw] run_rate_in_hours
16032
+ # The interval in hours between orphan file deletion job runs. This
16033
+ # parameter controls how frequently the orphan file deletion optimizer
16034
+ # will run to clean up orphan files. The value must be between 3 and
16035
+ # 168 hours (7 days). If an input is not provided, the default value
16036
+ # 24 will be used.
16037
+ # @return [Integer]
16038
+ #
15914
16039
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergOrphanFileDeletionConfiguration AWS API Documentation
15915
16040
  #
15916
16041
  class IcebergOrphanFileDeletionConfiguration < Struct.new(
15917
16042
  :orphan_file_retention_period_in_days,
15918
- :location)
16043
+ :location,
16044
+ :run_rate_in_hours)
15919
16045
  SENSITIVE = []
15920
16046
  include Aws::Structure
15921
16047
  end
@@ -16030,12 +16156,21 @@ module Aws::Glue
16030
16156
  # the underlying data and metadata files are not deleted.
16031
16157
  # @return [Boolean]
16032
16158
  #
16159
+ # @!attribute [rw] run_rate_in_hours
16160
+ # The interval in hours between retention job runs. This parameter
16161
+ # controls how frequently the retention optimizer will run to clean up
16162
+ # expired snapshots. The value must be between 3 and 168 hours (7
16163
+ # days). If an input is not provided, the default value 24 will be
16164
+ # used.
16165
+ # @return [Integer]
16166
+ #
16033
16167
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/IcebergRetentionConfiguration AWS API Documentation
16034
16168
  #
16035
16169
  class IcebergRetentionConfiguration < Struct.new(
16036
16170
  :snapshot_retention_period_in_days,
16037
16171
  :number_of_snapshots_to_retain,
16038
- :clean_expired_files)
16172
+ :clean_expired_files,
16173
+ :run_rate_in_hours)
16039
16174
  SENSITIVE = []
16040
16175
  include Aws::Structure
16041
16176
  end
@@ -26574,12 +26709,19 @@ module Aws::Glue
26574
26709
  # optimizer.
26575
26710
  # @return [Types::TableOptimizerRun]
26576
26711
  #
26712
+ # @!attribute [rw] configuration_source
26713
+ # Specifies the source of the optimizer configuration. This indicates
26714
+ # how the table optimizer was configured and which entity or service
26715
+ # initiated the configuration.
26716
+ # @return [String]
26717
+ #
26577
26718
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/TableOptimizer AWS API Documentation
26578
26719
  #
26579
26720
  class TableOptimizer < Struct.new(
26580
26721
  :type,
26581
26722
  :configuration,
26582
- :last_run)
26723
+ :last_run,
26724
+ :configuration_source)
26583
26725
  SENSITIVE = []
26584
26726
  include Aws::Structure
26585
26727
  end
@@ -28303,7 +28445,7 @@ module Aws::Glue
28303
28445
  end
28304
28446
 
28305
28447
  # Contains the update operations to be applied to an existing Iceberg
28306
- # table in AWS Glue Data Catalog, defining the new state of the table
28448
+ # table inGlue Data Catalog, defining the new state of the table
28307
28449
  # metadata.
28308
28450
  #
28309
28451
  # @!attribute [rw] updates
data/lib/aws-sdk-glue.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::Glue
54
54
  autoload :EndpointProvider, 'aws-sdk-glue/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-glue/endpoints'
56
56
 
57
- GEM_VERSION = '1.229.0'
57
+ GEM_VERSION = '1.230.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -511,6 +511,12 @@ module Aws
511
511
  kms_key: ::String?,
512
512
  catalog_type: ::String?
513
513
  }?,
514
+ iceberg_optimization_properties: {
515
+ role_arn: ::String?,
516
+ compaction: Hash[::String, ::String]?,
517
+ retention: Hash[::String, ::String]?,
518
+ orphan_file_deletion: Hash[::String, ::String]?
519
+ }?,
514
520
  custom_properties: Hash[::String, ::String]?
515
521
  }?,
516
522
  create_table_default_permissions: Array[
@@ -2929,20 +2935,24 @@ module Aws
2929
2935
  }?,
2930
2936
  compaction_configuration: {
2931
2937
  iceberg_configuration: {
2932
- strategy: ("binpack" | "sort" | "z-order")?
2938
+ strategy: ("binpack" | "sort" | "z-order")?,
2939
+ min_input_files: ::Integer?,
2940
+ delete_file_threshold: ::Integer?
2933
2941
  }?
2934
2942
  }?,
2935
2943
  retention_configuration: {
2936
2944
  iceberg_configuration: {
2937
2945
  snapshot_retention_period_in_days: ::Integer?,
2938
2946
  number_of_snapshots_to_retain: ::Integer?,
2939
- clean_expired_files: bool?
2947
+ clean_expired_files: bool?,
2948
+ run_rate_in_hours: ::Integer?
2940
2949
  }?
2941
2950
  }?,
2942
2951
  orphan_file_deletion_configuration: {
2943
2952
  iceberg_configuration: {
2944
2953
  orphan_file_retention_period_in_days: ::Integer?,
2945
- location: ::String?
2954
+ location: ::String?,
2955
+ run_rate_in_hours: ::Integer?
2946
2956
  }?
2947
2957
  }?
2948
2958
  }
@@ -5788,6 +5798,12 @@ module Aws
5788
5798
  kms_key: ::String?,
5789
5799
  catalog_type: ::String?
5790
5800
  }?,
5801
+ iceberg_optimization_properties: {
5802
+ role_arn: ::String?,
5803
+ compaction: Hash[::String, ::String]?,
5804
+ retention: Hash[::String, ::String]?,
5805
+ orphan_file_deletion: Hash[::String, ::String]?
5806
+ }?,
5791
5807
  custom_properties: Hash[::String, ::String]?
5792
5808
  }?,
5793
5809
  create_table_default_permissions: Array[
@@ -8174,20 +8190,24 @@ module Aws
8174
8190
  }?,
8175
8191
  compaction_configuration: {
8176
8192
  iceberg_configuration: {
8177
- strategy: ("binpack" | "sort" | "z-order")?
8193
+ strategy: ("binpack" | "sort" | "z-order")?,
8194
+ min_input_files: ::Integer?,
8195
+ delete_file_threshold: ::Integer?
8178
8196
  }?
8179
8197
  }?,
8180
8198
  retention_configuration: {
8181
8199
  iceberg_configuration: {
8182
8200
  snapshot_retention_period_in_days: ::Integer?,
8183
8201
  number_of_snapshots_to_retain: ::Integer?,
8184
- clean_expired_files: bool?
8202
+ clean_expired_files: bool?,
8203
+ run_rate_in_hours: ::Integer?
8185
8204
  }?
8186
8205
  }?,
8187
8206
  orphan_file_deletion_configuration: {
8188
8207
  iceberg_configuration: {
8189
8208
  orphan_file_retention_period_in_days: ::Integer?,
8190
- location: ::String?
8209
+ location: ::String?,
8210
+ run_rate_in_hours: ::Integer?
8191
8211
  }?
8192
8212
  }?
8193
8213
  }
data/sig/types.rbs CHANGED
@@ -641,12 +641,14 @@ module Aws::Glue
641
641
 
642
642
  class CatalogProperties
643
643
  attr_accessor data_lake_access_properties: Types::DataLakeAccessProperties
644
+ attr_accessor iceberg_optimization_properties: Types::IcebergOptimizationProperties
644
645
  attr_accessor custom_properties: ::Hash[::String, ::String]
645
646
  SENSITIVE: []
646
647
  end
647
648
 
648
649
  class CatalogPropertiesOutput
649
650
  attr_accessor data_lake_access_properties: Types::DataLakeAccessPropertiesOutput
651
+ attr_accessor iceberg_optimization_properties: Types::IcebergOptimizationPropertiesOutput
650
652
  attr_accessor custom_properties: ::Hash[::String, ::String]
651
653
  SENSITIVE: []
652
654
  end
@@ -3924,6 +3926,8 @@ module Aws::Glue
3924
3926
 
3925
3927
  class IcebergCompactionConfiguration
3926
3928
  attr_accessor strategy: ("binpack" | "sort" | "z-order")
3929
+ attr_accessor min_input_files: ::Integer
3930
+ attr_accessor delete_file_threshold: ::Integer
3927
3931
  SENSITIVE: []
3928
3932
  end
3929
3933
 
@@ -3943,9 +3947,27 @@ module Aws::Glue
3943
3947
  SENSITIVE: []
3944
3948
  end
3945
3949
 
3950
+ class IcebergOptimizationProperties
3951
+ attr_accessor role_arn: ::String
3952
+ attr_accessor compaction: ::Hash[::String, ::String]
3953
+ attr_accessor retention: ::Hash[::String, ::String]
3954
+ attr_accessor orphan_file_deletion: ::Hash[::String, ::String]
3955
+ SENSITIVE: []
3956
+ end
3957
+
3958
+ class IcebergOptimizationPropertiesOutput
3959
+ attr_accessor role_arn: ::String
3960
+ attr_accessor compaction: ::Hash[::String, ::String]
3961
+ attr_accessor retention: ::Hash[::String, ::String]
3962
+ attr_accessor orphan_file_deletion: ::Hash[::String, ::String]
3963
+ attr_accessor last_updated_time: ::Time
3964
+ SENSITIVE: []
3965
+ end
3966
+
3946
3967
  class IcebergOrphanFileDeletionConfiguration
3947
3968
  attr_accessor orphan_file_retention_period_in_days: ::Integer
3948
3969
  attr_accessor location: ::String
3970
+ attr_accessor run_rate_in_hours: ::Integer
3949
3971
  SENSITIVE: []
3950
3972
  end
3951
3973
 
@@ -3975,6 +3997,7 @@ module Aws::Glue
3975
3997
  attr_accessor snapshot_retention_period_in_days: ::Integer
3976
3998
  attr_accessor number_of_snapshots_to_retain: ::Integer
3977
3999
  attr_accessor clean_expired_files: bool
4000
+ attr_accessor run_rate_in_hours: ::Integer
3978
4001
  SENSITIVE: []
3979
4002
  end
3980
4003
 
@@ -6483,6 +6506,7 @@ module Aws::Glue
6483
6506
  attr_accessor type: ("compaction" | "retention" | "orphan_file_deletion")
6484
6507
  attr_accessor configuration: Types::TableOptimizerConfiguration
6485
6508
  attr_accessor last_run: Types::TableOptimizerRun
6509
+ attr_accessor configuration_source: ("catalog" | "table")
6486
6510
  SENSITIVE: []
6487
6511
  end
6488
6512
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-glue
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.229.0
4
+ version: 1.230.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services