aws-sdk-s3tables 1.40.0 → 1.42.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 +4 -4
- data/CHANGELOG.md +10 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-s3tables/client.rb +579 -1
- data/lib/aws-sdk-s3tables/client_api.rb +329 -0
- data/lib/aws-sdk-s3tables/types.rb +1182 -0
- data/lib/aws-sdk-s3tables.rb +2 -2
- data/sig/client.rbs +142 -26
- data/sig/params.rbs +52 -0
- data/sig/types.rbs +236 -0
- metadata +4 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0ea2ec4216b5785ab4fa50a27fcb178b97d3dc3ba35d102021ee6fcffab267fc
|
|
4
|
+
data.tar.gz: 852a0d34a654ddb689262aedb326232b412dbd455c659980b07d097688b42141
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2af75e6fbdcb8f5a00ac2e9ce08156ec1357cf56a1c433ba3f6e4a44425e579410e4bd065d3b4e6d81c314e2e7922988c56ffa8d965a38e367c2695006aa1875
|
|
7
|
+
data.tar.gz: 2a35aae824eb982520c7063a462397156563847d254e31be82c31c51d7602845ad884b6d138597d445a7e7db0d34e3a7d331da9292cef74845c03e61554e05ca
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,16 @@
|
|
|
1
1
|
Unreleased Changes
|
|
2
2
|
------------------
|
|
3
3
|
|
|
4
|
+
1.42.0 (2026-11-06)
|
|
5
|
+
------------------
|
|
6
|
+
|
|
7
|
+
* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
|
|
8
|
+
|
|
9
|
+
1.41.0 (2026-11-04)
|
|
10
|
+
------------------
|
|
11
|
+
|
|
12
|
+
* Feature - Amazon S3 Tables now supports migrating AWS Glue Data Catalog tables into S3 Table buckets. This release adds the StartTableMigration, SyncTableMigration, UpdateTableMigration, CompleteTableMigration, GetTableMigration, and ListTableMigrations APIs.
|
|
13
|
+
|
|
4
14
|
1.40.0 (2026-10-29)
|
|
5
15
|
------------------
|
|
6
16
|
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.42.0
|
|
@@ -481,6 +481,41 @@ module Aws::S3Tables
|
|
|
481
481
|
|
|
482
482
|
# @!group API Operations
|
|
483
483
|
|
|
484
|
+
# Completes the migration of a table. The table's most recent migration
|
|
485
|
+
# must be in the `succeeded`, `failed` or `cancelled` state. After you
|
|
486
|
+
# complete the migration, you can't sync the table again, and you can
|
|
487
|
+
# write to and maintain the table as you do any other table: compaction
|
|
488
|
+
# starts, and unreferenced file removal follows the table bucket's
|
|
489
|
+
# configuration. You can't undo this operation. Calling it again for
|
|
490
|
+
# the same table returns a `ConflictException`.
|
|
491
|
+
#
|
|
492
|
+
# Permissions
|
|
493
|
+
# : * You must have the `s3tables:CompleteTableMigration` permission to
|
|
494
|
+
# use this operation.
|
|
495
|
+
#
|
|
496
|
+
# ^
|
|
497
|
+
#
|
|
498
|
+
# @option params [required, String] :table_arn
|
|
499
|
+
# The Amazon Resource Name (ARN) of the migrated table to complete the
|
|
500
|
+
# migration of.
|
|
501
|
+
#
|
|
502
|
+
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
|
|
503
|
+
#
|
|
504
|
+
# @example Request syntax with placeholder values
|
|
505
|
+
#
|
|
506
|
+
# resp = client.complete_table_migration({
|
|
507
|
+
# table_arn: "TableARN", # required
|
|
508
|
+
# })
|
|
509
|
+
#
|
|
510
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/CompleteTableMigration AWS API Documentation
|
|
511
|
+
#
|
|
512
|
+
# @overload complete_table_migration(params = {})
|
|
513
|
+
# @param [Hash] params ({})
|
|
514
|
+
def complete_table_migration(params = {}, options = {})
|
|
515
|
+
req = build_request(:complete_table_migration, params)
|
|
516
|
+
req.send_request(options)
|
|
517
|
+
end
|
|
518
|
+
|
|
484
519
|
# Creates a namespace. A namespace is a logical grouping of tables
|
|
485
520
|
# within your table bucket, which you can use to organize tables. For
|
|
486
521
|
# more information, see [Create a namespace][1] in the *Amazon Simple
|
|
@@ -1724,6 +1759,113 @@ module Aws::S3Tables
|
|
|
1724
1759
|
req.send_request(options)
|
|
1725
1760
|
end
|
|
1726
1761
|
|
|
1762
|
+
# Gets the details of a migration, including its state, the reason it
|
|
1763
|
+
# failed, its statistics and the location of its reports. Identify the
|
|
1764
|
+
# migration by its `migrationId`, or specify the `tableARN` of a
|
|
1765
|
+
# destination table to get that table's most recent migration.
|
|
1766
|
+
#
|
|
1767
|
+
# Permissions
|
|
1768
|
+
# : * You must have the `s3tables:GetTableMigration` permission to use
|
|
1769
|
+
# this operation.
|
|
1770
|
+
#
|
|
1771
|
+
# ^
|
|
1772
|
+
#
|
|
1773
|
+
# @option params [String] :migration_id
|
|
1774
|
+
# The ID of the migration to get. Specify either `migrationId` or
|
|
1775
|
+
# `tableARN`, not both.
|
|
1776
|
+
#
|
|
1777
|
+
# @option params [String] :table_arn
|
|
1778
|
+
# The Amazon Resource Name (ARN) of the destination table. Gets the
|
|
1779
|
+
# table's most recent migration. Specify either `tableARN` or
|
|
1780
|
+
# `migrationId`, not both.
|
|
1781
|
+
#
|
|
1782
|
+
# @return [Types::GetTableMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
1783
|
+
#
|
|
1784
|
+
# * {Types::GetTableMigrationResponse#migration_id #migration_id} => String
|
|
1785
|
+
# * {Types::GetTableMigrationResponse#table_bucket_arn #table_bucket_arn} => String
|
|
1786
|
+
# * {Types::GetTableMigrationResponse#namespace #namespace} => String
|
|
1787
|
+
# * {Types::GetTableMigrationResponse#table_arn #table_arn} => String
|
|
1788
|
+
# * {Types::GetTableMigrationResponse#name #name} => String
|
|
1789
|
+
# * {Types::GetTableMigrationResponse#type #type} => String
|
|
1790
|
+
# * {Types::GetTableMigrationResponse#state #state} => String
|
|
1791
|
+
# * {Types::GetTableMigrationResponse#role_arn #role_arn} => String
|
|
1792
|
+
# * {Types::GetTableMigrationResponse#review_migration_plan #review_migration_plan} => Boolean
|
|
1793
|
+
# * {Types::GetTableMigrationResponse#has_valid_plan #has_valid_plan} => Boolean
|
|
1794
|
+
# * {Types::GetTableMigrationResponse#created_at #created_at} => Time
|
|
1795
|
+
# * {Types::GetTableMigrationResponse#state_updated_at #state_updated_at} => Time
|
|
1796
|
+
# * {Types::GetTableMigrationResponse#failure_reason #failure_reason} => Types::MigrationFailureReason
|
|
1797
|
+
# * {Types::GetTableMigrationResponse#planning_stats #planning_stats} => Types::PlanningStats
|
|
1798
|
+
# * {Types::GetTableMigrationResponse#migration_stats #migration_stats} => Types::MigrationStats
|
|
1799
|
+
# * {Types::GetTableMigrationResponse#source_type #source_type} => String
|
|
1800
|
+
# * {Types::GetTableMigrationResponse#source #source} => Types::SourceConfiguration
|
|
1801
|
+
# * {Types::GetTableMigrationResponse#data_migration #data_migration} => Types::DataMigrationOverview
|
|
1802
|
+
# * {Types::GetTableMigrationResponse#migration_output #migration_output} => Types::MigrationOutputOverview
|
|
1803
|
+
#
|
|
1804
|
+
# @example Request syntax with placeholder values
|
|
1805
|
+
#
|
|
1806
|
+
# resp = client.get_table_migration({
|
|
1807
|
+
# migration_id: "MigrationId",
|
|
1808
|
+
# table_arn: "TableARN",
|
|
1809
|
+
# })
|
|
1810
|
+
#
|
|
1811
|
+
# @example Response structure
|
|
1812
|
+
#
|
|
1813
|
+
# resp.migration_id #=> String
|
|
1814
|
+
# resp.table_bucket_arn #=> String
|
|
1815
|
+
# resp.namespace #=> String
|
|
1816
|
+
# resp.table_arn #=> String
|
|
1817
|
+
# resp.name #=> String
|
|
1818
|
+
# resp.type #=> String, one of "start", "sync"
|
|
1819
|
+
# resp.state #=> String, one of "new", "planning", "pendingReview", "queued", "migrating", "succeeded", "failed", "cancelling", "cancelled"
|
|
1820
|
+
# resp.role_arn #=> String
|
|
1821
|
+
# resp.review_migration_plan #=> Boolean
|
|
1822
|
+
# resp.has_valid_plan #=> Boolean
|
|
1823
|
+
# resp.created_at #=> Time
|
|
1824
|
+
# resp.state_updated_at #=> Time
|
|
1825
|
+
# resp.failure_reason.code #=> String, one of "rolePermissions", "sourcePermissions", "destinationPermissions", "resourceNotFound", "sourceNotSupported", "objectMigrationReport", "objectCompatibilityReport", "tableCompatibilityReport", "internalError", "reportBucketNotSupported"
|
|
1826
|
+
# resp.failure_reason.detail #=> String
|
|
1827
|
+
# resp.planning_stats.objects_scanned #=> Integer
|
|
1828
|
+
# resp.planning_stats.objects_planned #=> Integer
|
|
1829
|
+
# resp.planning_stats.partition_count #=> Integer
|
|
1830
|
+
# resp.migration_stats.objects_migrated #=> Integer
|
|
1831
|
+
# resp.migration_stats.objects_failed_migration #=> Integer
|
|
1832
|
+
# resp.migration_stats.objects_pending_migration #=> Integer
|
|
1833
|
+
# resp.source_type #=> String, one of "glueTable"
|
|
1834
|
+
# resp.source.glue_table.catalog_id #=> String
|
|
1835
|
+
# resp.source.glue_table.database_name #=> String
|
|
1836
|
+
# resp.source.glue_table.table_name #=> String
|
|
1837
|
+
# resp.data_migration.maintenance_settings.iceberg_compaction.target_file_size_mb #=> Integer
|
|
1838
|
+
# resp.data_migration.maintenance_settings.iceberg_compaction.strategy #=> String, one of "auto", "binpack", "sort", "z-order"
|
|
1839
|
+
# resp.data_migration.maintenance_settings.iceberg_snapshot_management.min_snapshots_to_keep #=> Integer
|
|
1840
|
+
# resp.data_migration.maintenance_settings.iceberg_snapshot_management.max_snapshot_age_hours #=> Integer
|
|
1841
|
+
# resp.data_migration.migration_policies.unmatched_source_fields_policy #=> String, one of "fail", "drop"
|
|
1842
|
+
# resp.data_migration.migration_policies.incompatible_values_policy #=> String, one of "fail", "setNull"
|
|
1843
|
+
# resp.migration_output.bucket #=> String
|
|
1844
|
+
# resp.migration_output.table_compatibility_report.prefix #=> String
|
|
1845
|
+
# resp.migration_output.table_compatibility_report.key #=> String
|
|
1846
|
+
# resp.migration_output.table_compatibility_report.checksum_crc64nvme #=> String
|
|
1847
|
+
# resp.migration_output.table_compatibility_report.invalid_findings #=> Hash
|
|
1848
|
+
# resp.migration_output.table_compatibility_report.invalid_findings["FindingCategory"] #=> Integer
|
|
1849
|
+
# resp.migration_output.object_compatibility_report.prefix #=> String
|
|
1850
|
+
# resp.migration_output.object_compatibility_report.key #=> String
|
|
1851
|
+
# resp.migration_output.object_compatibility_report.checksum_crc64nvme #=> String
|
|
1852
|
+
# resp.migration_output.object_compatibility_report.invalid_findings #=> Hash
|
|
1853
|
+
# resp.migration_output.object_compatibility_report.invalid_findings["FindingCategory"] #=> Integer
|
|
1854
|
+
# resp.migration_output.object_migration_report.prefix #=> String
|
|
1855
|
+
# resp.migration_output.object_migration_report.key #=> String
|
|
1856
|
+
# resp.migration_output.object_migration_report.checksum_crc64nvme #=> String
|
|
1857
|
+
# resp.migration_output.object_migration_report.invalid_findings #=> Hash
|
|
1858
|
+
# resp.migration_output.object_migration_report.invalid_findings["FindingCategory"] #=> Integer
|
|
1859
|
+
#
|
|
1860
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/GetTableMigration AWS API Documentation
|
|
1861
|
+
#
|
|
1862
|
+
# @overload get_table_migration(params = {})
|
|
1863
|
+
# @param [Hash] params ({})
|
|
1864
|
+
def get_table_migration(params = {}, options = {})
|
|
1865
|
+
req = build_request(:get_table_migration, params)
|
|
1866
|
+
req.send_request(options)
|
|
1867
|
+
end
|
|
1868
|
+
|
|
1727
1869
|
# Gets details about a table policy. For more information, see [Viewing
|
|
1728
1870
|
# a table policy][1] in the *Amazon Simple Storage Service User Guide*.
|
|
1729
1871
|
#
|
|
@@ -2106,6 +2248,102 @@ module Aws::S3Tables
|
|
|
2106
2248
|
req.send_request(options)
|
|
2107
2249
|
end
|
|
2108
2250
|
|
|
2251
|
+
# Lists the migrations whose destination is in a table bucket, a
|
|
2252
|
+
# namespace or a table. Specify a `tableBucketARN` to list the
|
|
2253
|
+
# migrations into a table bucket, and add a `namespace`, or a
|
|
2254
|
+
# `namespace` and a `name`, to narrow the list. Or specify a `tableARN`
|
|
2255
|
+
# to list the migrations into a table.
|
|
2256
|
+
#
|
|
2257
|
+
# Migrations are listed newest first. Results are paginated: use
|
|
2258
|
+
# `maxResults` to set the page size, and pass the `nextToken` from a
|
|
2259
|
+
# response to retrieve the next page of results. A page can contain
|
|
2260
|
+
# fewer migrations than `maxResults`, or none, and still return a
|
|
2261
|
+
# `nextToken`. Continue until a response has no `nextToken`.
|
|
2262
|
+
#
|
|
2263
|
+
# Permissions
|
|
2264
|
+
# : * You must have the `s3tables:ListTableMigrations` permission to use
|
|
2265
|
+
# this operation.
|
|
2266
|
+
#
|
|
2267
|
+
# ^
|
|
2268
|
+
#
|
|
2269
|
+
# @option params [String] :table_bucket_arn
|
|
2270
|
+
# The Amazon Resource Name (ARN) of the table bucket to list migrations
|
|
2271
|
+
# for.
|
|
2272
|
+
#
|
|
2273
|
+
# @option params [String] :namespace
|
|
2274
|
+
# The namespace to list migrations for. Requires `tableBucketARN`.
|
|
2275
|
+
#
|
|
2276
|
+
# @option params [String] :name
|
|
2277
|
+
# The name of the table to list migrations for. Requires
|
|
2278
|
+
# `tableBucketARN` and `namespace`.
|
|
2279
|
+
#
|
|
2280
|
+
# @option params [String] :table_arn
|
|
2281
|
+
# The Amazon Resource Name (ARN) of the table to list migrations for.
|
|
2282
|
+
# The list includes the migrations into this table. To also list
|
|
2283
|
+
# migrations into an earlier table of the same name, specify
|
|
2284
|
+
# `tableBucketARN`, `namespace` and `name` instead. Specify either
|
|
2285
|
+
# `tableARN` or `tableBucketARN`, not both.
|
|
2286
|
+
#
|
|
2287
|
+
# @option params [String] :state
|
|
2288
|
+
# The state to filter the list by. For the valid values, see the `state`
|
|
2289
|
+
# member of `GetTableMigration`.
|
|
2290
|
+
#
|
|
2291
|
+
# @option params [Boolean] :has_valid_plan
|
|
2292
|
+
# The `hasValidPlan` value to filter the list by. Migrations that are
|
|
2293
|
+
# still planning aren't listed, whichever value you specify.
|
|
2294
|
+
#
|
|
2295
|
+
# @option params [Integer] :max_results
|
|
2296
|
+
# The maximum number of migrations to return, from 1 to 1,000. If you
|
|
2297
|
+
# don't specify a value, the default is 100.
|
|
2298
|
+
#
|
|
2299
|
+
# @option params [String] :next_token
|
|
2300
|
+
# The `nextToken` from a previous response, to get the next page of
|
|
2301
|
+
# results.
|
|
2302
|
+
#
|
|
2303
|
+
# @return [Types::ListTableMigrationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
2304
|
+
#
|
|
2305
|
+
# * {Types::ListTableMigrationsResponse#migrations #migrations} => Array<Types::MigrationSummary>
|
|
2306
|
+
# * {Types::ListTableMigrationsResponse#next_token #next_token} => String
|
|
2307
|
+
#
|
|
2308
|
+
# The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
|
|
2309
|
+
#
|
|
2310
|
+
# @example Request syntax with placeholder values
|
|
2311
|
+
#
|
|
2312
|
+
# resp = client.list_table_migrations({
|
|
2313
|
+
# table_bucket_arn: "TableBucketARN",
|
|
2314
|
+
# namespace: "NamespaceName",
|
|
2315
|
+
# name: "TableName",
|
|
2316
|
+
# table_arn: "TableARN",
|
|
2317
|
+
# state: "new", # accepts new, planning, pendingReview, queued, migrating, succeeded, failed, cancelling, cancelled
|
|
2318
|
+
# has_valid_plan: false,
|
|
2319
|
+
# max_results: 1,
|
|
2320
|
+
# next_token: "NextToken",
|
|
2321
|
+
# })
|
|
2322
|
+
#
|
|
2323
|
+
# @example Response structure
|
|
2324
|
+
#
|
|
2325
|
+
# resp.migrations #=> Array
|
|
2326
|
+
# resp.migrations[0].migration_id #=> String
|
|
2327
|
+
# resp.migrations[0].table_bucket_arn #=> String
|
|
2328
|
+
# resp.migrations[0].namespace #=> String
|
|
2329
|
+
# resp.migrations[0].table_arn #=> String
|
|
2330
|
+
# resp.migrations[0].name #=> String
|
|
2331
|
+
# resp.migrations[0].type #=> String, one of "start", "sync"
|
|
2332
|
+
# resp.migrations[0].state #=> String, one of "new", "planning", "pendingReview", "queued", "migrating", "succeeded", "failed", "cancelling", "cancelled"
|
|
2333
|
+
# resp.migrations[0].has_valid_plan #=> Boolean
|
|
2334
|
+
# resp.migrations[0].created_at #=> Time
|
|
2335
|
+
# resp.migrations[0].state_updated_at #=> Time
|
|
2336
|
+
# resp.next_token #=> String
|
|
2337
|
+
#
|
|
2338
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/ListTableMigrations AWS API Documentation
|
|
2339
|
+
#
|
|
2340
|
+
# @overload list_table_migrations(params = {})
|
|
2341
|
+
# @param [Hash] params ({})
|
|
2342
|
+
def list_table_migrations(params = {}, options = {})
|
|
2343
|
+
req = build_request(:list_table_migrations, params)
|
|
2344
|
+
req.send_request(options)
|
|
2345
|
+
end
|
|
2346
|
+
|
|
2109
2347
|
# List tables in the given table bucket. For more information, see [S3
|
|
2110
2348
|
# Tables][1] in the *Amazon Simple Storage Service User Guide*.
|
|
2111
2349
|
#
|
|
@@ -2788,6 +3026,279 @@ module Aws::S3Tables
|
|
|
2788
3026
|
req.send_request(options)
|
|
2789
3027
|
end
|
|
2790
3028
|
|
|
3029
|
+
# Starts migrating an Amazon Web Services Glue Data Catalog table into a
|
|
3030
|
+
# new table in a table bucket. The migration runs asynchronously: this
|
|
3031
|
+
# operation returns the migration ID and its initial state, and you
|
|
3032
|
+
# track progress with `GetTableMigration`.
|
|
3033
|
+
#
|
|
3034
|
+
# The namespace must already exist, and a table with the specified name
|
|
3035
|
+
# must not. The migration creates the table during planning and commits
|
|
3036
|
+
# data to it as it runs. Until you call `CompleteTableMigration`, you
|
|
3037
|
+
# can read the table but you can't write to it. If the migration fails
|
|
3038
|
+
# or is cancelled, the table and the data already committed to it
|
|
3039
|
+
# remain.
|
|
3040
|
+
#
|
|
3041
|
+
# The migration first checks the source and the destination, and writes
|
|
3042
|
+
# the table compatibility and object compatibility reports to the bucket
|
|
3043
|
+
# that you specify in `migrationOutput`. If you set
|
|
3044
|
+
# `reviewMigrationPlan` to `true`, the migration waits in the
|
|
3045
|
+
# `pendingReview` state so that you can review the reports, and
|
|
3046
|
+
# continues only when you call `UpdateTableMigration` with
|
|
3047
|
+
# `requestedState` set to `queued`. If you don't continue or cancel the
|
|
3048
|
+
# migration within 30 days, the migration fails. Otherwise it continues
|
|
3049
|
+
# to migrate the data, and writes the object migration report when the
|
|
3050
|
+
# migration ends. If planning fails, the migration writes no object
|
|
3051
|
+
# migration report.
|
|
3052
|
+
#
|
|
3053
|
+
# Permissions
|
|
3054
|
+
# : * You must have the `s3tables:StartTableMigration` permission to use
|
|
3055
|
+
# this operation.
|
|
3056
|
+
#
|
|
3057
|
+
# * You must have the `iam:PassRole` permission on the role that you
|
|
3058
|
+
# specify in `roleARN`, with a condition that allows passing it to
|
|
3059
|
+
# `migration.s3tables.amazonaws.com`. The associated resource is the
|
|
3060
|
+
# table bucket.
|
|
3061
|
+
#
|
|
3062
|
+
# * If `destinationTable` specifies SSE-KMS encryption, you must have
|
|
3063
|
+
# the `kms:DescribeKey` and `kms:GenerateDataKey` permissions on the
|
|
3064
|
+
# KMS key. You must also grant the S3 Tables maintenance principal
|
|
3065
|
+
# access to the key. For more information, see [Permissions
|
|
3066
|
+
# requirements for S3 Tables SSE-KMS encryption][1].
|
|
3067
|
+
#
|
|
3068
|
+
#
|
|
3069
|
+
#
|
|
3070
|
+
# [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-kms-permissions.html
|
|
3071
|
+
#
|
|
3072
|
+
# @option params [required, String] :role_arn
|
|
3073
|
+
# The Amazon Resource Name (ARN) of the IAM role that the migration uses
|
|
3074
|
+
# to read the source table and its data and to write the destination
|
|
3075
|
+
# table and the reports. The role must be in your account, and its trust
|
|
3076
|
+
# policy must allow `migration.s3tables.amazonaws.com` to assume it. You
|
|
3077
|
+
# can limit the trust policy to the destination table bucket with the
|
|
3078
|
+
# `aws:SourceArn` and `aws:SourceAccount` condition keys.
|
|
3079
|
+
#
|
|
3080
|
+
# @option params [required, Types::DestinationTable] :destination_table
|
|
3081
|
+
# The table to create and migrate the source into.
|
|
3082
|
+
#
|
|
3083
|
+
# @option params [required, String] :source_type
|
|
3084
|
+
# The type of the source. It must match the member that you set in
|
|
3085
|
+
# `source`.
|
|
3086
|
+
#
|
|
3087
|
+
# @option params [required, Types::SourceConfiguration] :source
|
|
3088
|
+
# The source table to migrate.
|
|
3089
|
+
#
|
|
3090
|
+
# @option params [Types::DataMigrationSettings] :data_migration
|
|
3091
|
+
# The maintenance settings and migration policies for the destination
|
|
3092
|
+
# table.
|
|
3093
|
+
#
|
|
3094
|
+
# @option params [Boolean] :review_migration_plan
|
|
3095
|
+
# Specifies whether the migration waits in the `pendingReview` state, so
|
|
3096
|
+
# that you can review the compatibility reports before it migrates any
|
|
3097
|
+
# data. If `true`, the migration continues when you call
|
|
3098
|
+
# `UpdateTableMigration` with `requestedState` set to `queued`. If you
|
|
3099
|
+
# don't continue or cancel the migration within 30 days, the migration
|
|
3100
|
+
# fails. The default is `false`.
|
|
3101
|
+
#
|
|
3102
|
+
# @option params [required, Types::MigrationOutputConfiguration] :migration_output
|
|
3103
|
+
# The bucket and prefixes that the migration writes its reports to. The
|
|
3104
|
+
# bucket must be a general purpose bucket in your account and in the
|
|
3105
|
+
# same Region as the table bucket, and the migration role must be able
|
|
3106
|
+
# to write objects to it. Otherwise, the migration fails when it writes
|
|
3107
|
+
# its first report.
|
|
3108
|
+
#
|
|
3109
|
+
# @return [Types::StartTableMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
3110
|
+
#
|
|
3111
|
+
# * {Types::StartTableMigrationResponse#migration_id #migration_id} => String
|
|
3112
|
+
# * {Types::StartTableMigrationResponse#state #state} => String
|
|
3113
|
+
#
|
|
3114
|
+
# @example Request syntax with placeholder values
|
|
3115
|
+
#
|
|
3116
|
+
# resp = client.start_table_migration({
|
|
3117
|
+
# role_arn: "RoleArn", # required
|
|
3118
|
+
# destination_table: { # required
|
|
3119
|
+
# table_bucket_arn: "TableBucketARN", # required
|
|
3120
|
+
# namespace: "NamespaceName", # required
|
|
3121
|
+
# name: "TableName", # required
|
|
3122
|
+
# encryption_configuration: {
|
|
3123
|
+
# sse_algorithm: "AES256", # required, accepts AES256, aws:kms
|
|
3124
|
+
# kms_key_arn: "EncryptionConfigurationKmsKeyArnString",
|
|
3125
|
+
# },
|
|
3126
|
+
# storage_class_configuration: {
|
|
3127
|
+
# storage_class: "STANDARD", # required, accepts STANDARD, INTELLIGENT_TIERING
|
|
3128
|
+
# },
|
|
3129
|
+
# tags: {
|
|
3130
|
+
# "TagKey" => "TagValue",
|
|
3131
|
+
# },
|
|
3132
|
+
# properties: {
|
|
3133
|
+
# write_format: "parquet", # accepts parquet
|
|
3134
|
+
# iceberg_format_version: 1,
|
|
3135
|
+
# compression_codec: "zstd", # accepts zstd, snappy, gzip, uncompressed
|
|
3136
|
+
# dictionary_encoding: false,
|
|
3137
|
+
# },
|
|
3138
|
+
# schema: {
|
|
3139
|
+
# type: "struct", # required, accepts struct
|
|
3140
|
+
# fields: [ # required
|
|
3141
|
+
# {
|
|
3142
|
+
# id: 1, # required
|
|
3143
|
+
# name: "String", # required
|
|
3144
|
+
# type: { # required
|
|
3145
|
+
# },
|
|
3146
|
+
# required: false, # required
|
|
3147
|
+
# doc: "String",
|
|
3148
|
+
# },
|
|
3149
|
+
# ],
|
|
3150
|
+
# schema_id: 1,
|
|
3151
|
+
# identifier_field_ids: [1],
|
|
3152
|
+
# },
|
|
3153
|
+
# iceberg_sort_order: {
|
|
3154
|
+
# order_id: 1, # required
|
|
3155
|
+
# fields: [ # required
|
|
3156
|
+
# {
|
|
3157
|
+
# source_id: 1, # required
|
|
3158
|
+
# transform: "String", # required
|
|
3159
|
+
# direction: "asc", # required, accepts asc, desc
|
|
3160
|
+
# null_order: "nulls-first", # required, accepts nulls-first, nulls-last
|
|
3161
|
+
# },
|
|
3162
|
+
# ],
|
|
3163
|
+
# },
|
|
3164
|
+
# },
|
|
3165
|
+
# source_type: "glueTable", # required, accepts glueTable
|
|
3166
|
+
# source: { # required
|
|
3167
|
+
# glue_table: {
|
|
3168
|
+
# catalog_id: "GlueTableSourceCatalogIdString", # required
|
|
3169
|
+
# database_name: "GlueTableSourceDatabaseNameString", # required
|
|
3170
|
+
# table_name: "GlueTableSourceTableNameString", # required
|
|
3171
|
+
# },
|
|
3172
|
+
# },
|
|
3173
|
+
# data_migration: {
|
|
3174
|
+
# maintenance_settings: {
|
|
3175
|
+
# iceberg_compaction: {
|
|
3176
|
+
# target_file_size_mb: 1,
|
|
3177
|
+
# strategy: "auto", # accepts auto, binpack, sort, z-order
|
|
3178
|
+
# },
|
|
3179
|
+
# iceberg_snapshot_management: {
|
|
3180
|
+
# min_snapshots_to_keep: 1,
|
|
3181
|
+
# max_snapshot_age_hours: 1,
|
|
3182
|
+
# },
|
|
3183
|
+
# },
|
|
3184
|
+
# migration_policies: {
|
|
3185
|
+
# unmatched_source_fields_policy: "fail", # accepts fail, drop
|
|
3186
|
+
# incompatible_values_policy: "fail", # accepts fail, setNull
|
|
3187
|
+
# },
|
|
3188
|
+
# },
|
|
3189
|
+
# review_migration_plan: false,
|
|
3190
|
+
# migration_output: { # required
|
|
3191
|
+
# bucket: "S3BucketARN", # required
|
|
3192
|
+
# prefixes: {
|
|
3193
|
+
# table_compatibility_report: "MigrationReportPrefix",
|
|
3194
|
+
# object_compatibility_report: "MigrationReportPrefix",
|
|
3195
|
+
# object_migration_report: "MigrationReportPrefix",
|
|
3196
|
+
# },
|
|
3197
|
+
# },
|
|
3198
|
+
# })
|
|
3199
|
+
#
|
|
3200
|
+
# @example Response structure
|
|
3201
|
+
#
|
|
3202
|
+
# resp.migration_id #=> String
|
|
3203
|
+
# resp.state #=> String, one of "new", "planning", "pendingReview", "queued", "migrating", "succeeded", "failed", "cancelling", "cancelled"
|
|
3204
|
+
#
|
|
3205
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/StartTableMigration AWS API Documentation
|
|
3206
|
+
#
|
|
3207
|
+
# @overload start_table_migration(params = {})
|
|
3208
|
+
# @param [Hash] params ({})
|
|
3209
|
+
def start_table_migration(params = {}, options = {})
|
|
3210
|
+
req = build_request(:start_table_migration, params)
|
|
3211
|
+
req.send_request(options)
|
|
3212
|
+
end
|
|
3213
|
+
|
|
3214
|
+
# Migrates the changes in the source table since the previous start or
|
|
3215
|
+
# sync, such as added and deleted source objects, into the destination
|
|
3216
|
+
# table. The sync runs asynchronously: this operation returns the
|
|
3217
|
+
# migration ID of the sync and its initial state, and you track progress
|
|
3218
|
+
# with `GetTableMigration`.
|
|
3219
|
+
#
|
|
3220
|
+
# A sync uses the source, destination and data migration settings of the
|
|
3221
|
+
# table's migration, and plans the work and writes its reports in the
|
|
3222
|
+
# same way as `StartTableMigration`. You can sync after a start or sync
|
|
3223
|
+
# that succeeded, failed or was cancelled, if an earlier start or sync
|
|
3224
|
+
# of the table has a valid plan (`hasValidPlan`). You can't sync a
|
|
3225
|
+
# table while a start or sync is in progress for it, and you can sync a
|
|
3226
|
+
# table until you call `CompleteTableMigration` for it. If a source
|
|
3227
|
+
# object that an earlier migration migrated has since been overwritten,
|
|
3228
|
+
# the sync fails.
|
|
3229
|
+
#
|
|
3230
|
+
# Permissions
|
|
3231
|
+
# : * You must have the `s3tables:SyncTableMigration` permission to use
|
|
3232
|
+
# this operation.
|
|
3233
|
+
#
|
|
3234
|
+
# * You must have the `iam:PassRole` permission on the role that you
|
|
3235
|
+
# specify in `roleARN`, with a condition that allows passing it to
|
|
3236
|
+
# `migration.s3tables.amazonaws.com`. The associated resource is the
|
|
3237
|
+
# table.
|
|
3238
|
+
#
|
|
3239
|
+
# @option params [required, String] :role_arn
|
|
3240
|
+
# The Amazon Resource Name (ARN) of the IAM role that the sync uses to
|
|
3241
|
+
# read the source table and its data and to write the destination table
|
|
3242
|
+
# and the reports. The role must be in your account, and its trust
|
|
3243
|
+
# policy must allow `migration.s3tables.amazonaws.com` to assume it. You
|
|
3244
|
+
# can limit the trust policy to the destination table bucket with the
|
|
3245
|
+
# `aws:SourceArn` and `aws:SourceAccount` condition keys.
|
|
3246
|
+
#
|
|
3247
|
+
# @option params [required, String] :table_arn
|
|
3248
|
+
# The Amazon Resource Name (ARN) of the destination table to sync. The
|
|
3249
|
+
# table must have a migration, and you must not have called
|
|
3250
|
+
# `CompleteTableMigration` for it.
|
|
3251
|
+
#
|
|
3252
|
+
# @option params [Boolean] :review_migration_plan
|
|
3253
|
+
# Specifies whether the sync waits in the `pendingReview` state, so that
|
|
3254
|
+
# you can review the compatibility reports before it migrates any data.
|
|
3255
|
+
# If `true`, the migration continues when you call
|
|
3256
|
+
# `UpdateTableMigration` with `requestedState` set to `queued`. If you
|
|
3257
|
+
# don't continue or cancel the migration within 30 days, the migration
|
|
3258
|
+
# fails. The default is `false`.
|
|
3259
|
+
#
|
|
3260
|
+
# @option params [required, Types::MigrationOutputConfiguration] :migration_output
|
|
3261
|
+
# The bucket and prefixes that the sync writes its reports to. The
|
|
3262
|
+
# bucket must be a general purpose bucket in your account and in the
|
|
3263
|
+
# same Region as the table bucket, and the migration role must be able
|
|
3264
|
+
# to write objects to it. Otherwise, the migration fails when it writes
|
|
3265
|
+
# its first report.
|
|
3266
|
+
#
|
|
3267
|
+
# @return [Types::SyncTableMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
3268
|
+
#
|
|
3269
|
+
# * {Types::SyncTableMigrationResponse#migration_id #migration_id} => String
|
|
3270
|
+
# * {Types::SyncTableMigrationResponse#state #state} => String
|
|
3271
|
+
#
|
|
3272
|
+
# @example Request syntax with placeholder values
|
|
3273
|
+
#
|
|
3274
|
+
# resp = client.sync_table_migration({
|
|
3275
|
+
# role_arn: "RoleArn", # required
|
|
3276
|
+
# table_arn: "TableARN", # required
|
|
3277
|
+
# review_migration_plan: false,
|
|
3278
|
+
# migration_output: { # required
|
|
3279
|
+
# bucket: "S3BucketARN", # required
|
|
3280
|
+
# prefixes: {
|
|
3281
|
+
# table_compatibility_report: "MigrationReportPrefix",
|
|
3282
|
+
# object_compatibility_report: "MigrationReportPrefix",
|
|
3283
|
+
# object_migration_report: "MigrationReportPrefix",
|
|
3284
|
+
# },
|
|
3285
|
+
# },
|
|
3286
|
+
# })
|
|
3287
|
+
#
|
|
3288
|
+
# @example Response structure
|
|
3289
|
+
#
|
|
3290
|
+
# resp.migration_id #=> String
|
|
3291
|
+
# resp.state #=> String, one of "new", "planning", "pendingReview", "queued", "migrating", "succeeded", "failed", "cancelling", "cancelled"
|
|
3292
|
+
#
|
|
3293
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/SyncTableMigration AWS API Documentation
|
|
3294
|
+
#
|
|
3295
|
+
# @overload sync_table_migration(params = {})
|
|
3296
|
+
# @param [Hash] params ({})
|
|
3297
|
+
def sync_table_migration(params = {}, options = {})
|
|
3298
|
+
req = build_request(:sync_table_migration, params)
|
|
3299
|
+
req.send_request(options)
|
|
3300
|
+
end
|
|
3301
|
+
|
|
2791
3302
|
# Applies one or more user-defined tags to an Amazon S3 Tables resource
|
|
2792
3303
|
# or updates existing tags. Each tag is a label consisting of a key and
|
|
2793
3304
|
# value pair. Tags can help you organize, track costs for, and control
|
|
@@ -2963,6 +3474,73 @@ module Aws::S3Tables
|
|
|
2963
3474
|
req.send_request(options)
|
|
2964
3475
|
end
|
|
2965
3476
|
|
|
3477
|
+
# Requests a state change for a migration. Identify the migration by its
|
|
3478
|
+
# `migrationId` or by the `tableARN` of its destination table.
|
|
3479
|
+
#
|
|
3480
|
+
# Set `requestedState` to `queued` to continue a migration in the
|
|
3481
|
+
# `pendingReview` state; the migration moves to `queued` or `migrating`.
|
|
3482
|
+
# Set it to `cancelled` to cancel a migration in the `new`, `planning`,
|
|
3483
|
+
# `pendingReview`, `queued` or `migrating` state; the migration moves to
|
|
3484
|
+
# `cancelling`, finishes the work in progress, and then ends in the
|
|
3485
|
+
# `cancelled` state, or in the `failed` state if any objects failed to
|
|
3486
|
+
# migrate. Data that the migration already committed stays in the
|
|
3487
|
+
# destination table.
|
|
3488
|
+
#
|
|
3489
|
+
# Permissions
|
|
3490
|
+
# : * You must have the `s3tables:UpdateTableMigration` permission to
|
|
3491
|
+
# use this operation.
|
|
3492
|
+
#
|
|
3493
|
+
# ^
|
|
3494
|
+
#
|
|
3495
|
+
# @option params [String] :table_arn
|
|
3496
|
+
# The Amazon Resource Name (ARN) of the destination table. Updates the
|
|
3497
|
+
# table's most recent migration. Until the migration creates the
|
|
3498
|
+
# destination table, specify `migrationId`. Specify either `tableARN` or
|
|
3499
|
+
# `migrationId`, not both.
|
|
3500
|
+
#
|
|
3501
|
+
# @option params [String] :migration_id
|
|
3502
|
+
# The ID of the migration to update. Specify either `migrationId` or
|
|
3503
|
+
# `tableARN`, not both.
|
|
3504
|
+
#
|
|
3505
|
+
# @option params [required, String] :requested_state
|
|
3506
|
+
# The state to move the migration to: `queued` to continue a migration
|
|
3507
|
+
# in the `pendingReview` state, or `cancelled` to cancel a migration in
|
|
3508
|
+
# the `new`, `planning`, `pendingReview`, `queued` or `migrating` state.
|
|
3509
|
+
#
|
|
3510
|
+
# @option params [String] :update_description
|
|
3511
|
+
# A description of the update, up to 1,024 characters, with no control
|
|
3512
|
+
# characters. `GetTableMigration` doesn't return it.
|
|
3513
|
+
#
|
|
3514
|
+
# @return [Types::UpdateTableMigrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
3515
|
+
#
|
|
3516
|
+
# * {Types::UpdateTableMigrationResponse#migration_id #migration_id} => String
|
|
3517
|
+
# * {Types::UpdateTableMigrationResponse#state #state} => String
|
|
3518
|
+
# * {Types::UpdateTableMigrationResponse#table_arn #table_arn} => String
|
|
3519
|
+
#
|
|
3520
|
+
# @example Request syntax with placeholder values
|
|
3521
|
+
#
|
|
3522
|
+
# resp = client.update_table_migration({
|
|
3523
|
+
# table_arn: "TableARN",
|
|
3524
|
+
# migration_id: "MigrationId",
|
|
3525
|
+
# requested_state: "queued", # required, accepts queued, cancelled
|
|
3526
|
+
# update_description: "UpdateTableMigrationRequestUpdateDescriptionString",
|
|
3527
|
+
# })
|
|
3528
|
+
#
|
|
3529
|
+
# @example Response structure
|
|
3530
|
+
#
|
|
3531
|
+
# resp.migration_id #=> String
|
|
3532
|
+
# resp.state #=> String, one of "new", "planning", "pendingReview", "queued", "migrating", "succeeded", "failed", "cancelling", "cancelled"
|
|
3533
|
+
# resp.table_arn #=> String
|
|
3534
|
+
#
|
|
3535
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/s3tables-2018-05-10/UpdateTableMigration AWS API Documentation
|
|
3536
|
+
#
|
|
3537
|
+
# @overload update_table_migration(params = {})
|
|
3538
|
+
# @param [Hash] params ({})
|
|
3539
|
+
def update_table_migration(params = {}, options = {})
|
|
3540
|
+
req = build_request(:update_table_migration, params)
|
|
3541
|
+
req.send_request(options)
|
|
3542
|
+
end
|
|
3543
|
+
|
|
2966
3544
|
# @!endgroup
|
|
2967
3545
|
|
|
2968
3546
|
# @param params ({})
|
|
@@ -2981,7 +3559,7 @@ module Aws::S3Tables
|
|
|
2981
3559
|
tracer: tracer
|
|
2982
3560
|
)
|
|
2983
3561
|
context[:gem_name] = 'aws-sdk-s3tables'
|
|
2984
|
-
context[:gem_version] = '1.
|
|
3562
|
+
context[:gem_version] = '1.42.0'
|
|
2985
3563
|
Seahorse::Client::Request.new(handlers, context)
|
|
2986
3564
|
end
|
|
2987
3565
|
|