aws-sdk-glue 1.74.0 → 1.79.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: e9f500eba05c7f45bcef9c609e603c71301c6ea3c116fc4a564cce5e10d5ba3c
4
- data.tar.gz: a0b8fe74ad689c1992a934d0bd6c3fcecc1aa4fc2a06a82654f19ceca48c432e
3
+ metadata.gz: ab94ed1c7afa7f0df91258ae3118393461b012eb1006a710b5bb3b8aecfbe643
4
+ data.tar.gz: 30d7cb8b5c9e160e1d54827763d85ff3272c00b07316f86eb9c56ef3b8af5610
5
5
  SHA512:
6
- metadata.gz: 60d5c84fa411d3eab681e71ca57691cf07c9168b3dc029cb9388abe03063fa6ab405c36bc119ce50212c77f85ab0d43443a933b0c420e71f2b2627324104cc29
7
- data.tar.gz: e357e95f6577655ce21426f2dbd356843afa89ea3cf784b78b7446f8df6566ed1f7a12189c556efcce45a3cfa20d6ee628cb61ce9d1e1dae750af5bda65a2d97
6
+ metadata.gz: 3ea9dfd437d35a7e92a27d870724201fdda74fa262241b2ed2d660267dcd9e3e10dfac1e848afc81efd8a0486984a4d626675f8e83f475b4f2be2e0d4d6200ff
7
+ data.tar.gz: 50ccebf6e99c8e09b352d62d17bc42b62d38ad4c2f37818b885d9ae9d224d51b822071958bd8737b543b8540e5491263956a631179dfc21e7117375864ecebdb
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-glue/customizations'
48
48
  # @!group service
49
49
  module Aws::Glue
50
50
 
51
- GEM_VERSION = '1.74.0'
51
+ GEM_VERSION = '1.79.0'
52
52
 
53
53
  end
@@ -410,6 +410,15 @@ module Aws::Glue
410
410
  # },
411
411
  # },
412
412
  # stored_as_sub_directories: false,
413
+ # schema_reference: {
414
+ # schema_id: {
415
+ # schema_arn: "GlueResourceArn",
416
+ # schema_name: "SchemaRegistryNameString",
417
+ # registry_name: "SchemaRegistryNameString",
418
+ # },
419
+ # schema_version_id: "SchemaVersionIdString",
420
+ # schema_version_number: 1,
421
+ # },
413
422
  # },
414
423
  # parameters: {
415
424
  # "KeyString" => "ParametersMapValue",
@@ -679,6 +688,7 @@ module Aws::Glue
679
688
  # resp.crawlers[0].description #=> String
680
689
  # resp.crawlers[0].classifiers #=> Array
681
690
  # resp.crawlers[0].classifiers[0] #=> String
691
+ # resp.crawlers[0].recrawl_policy.recrawl_behavior #=> String, one of "CRAWL_EVERYTHING", "CRAWL_NEW_FOLDERS_ONLY"
682
692
  # resp.crawlers[0].schema_change_policy.update_behavior #=> String, one of "LOG", "UPDATE_IN_DATABASE"
683
693
  # resp.crawlers[0].schema_change_policy.delete_behavior #=> String, one of "LOG", "DELETE_FROM_DATABASE", "DEPRECATE_IN_DATABASE"
684
694
  # resp.crawlers[0].state #=> String, one of "READY", "RUNNING", "STOPPING"
@@ -905,6 +915,11 @@ module Aws::Glue
905
915
  # resp.partitions[0].storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
906
916
  # resp.partitions[0].storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
907
917
  # resp.partitions[0].storage_descriptor.stored_as_sub_directories #=> Boolean
918
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.schema_arn #=> String
919
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.schema_name #=> String
920
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.registry_name #=> String
921
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_version_id #=> String
922
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_version_number #=> Integer
908
923
  # resp.partitions[0].parameters #=> Hash
909
924
  # resp.partitions[0].parameters["KeyString"] #=> String
910
925
  # resp.partitions[0].last_analyzed_time #=> Time
@@ -1283,6 +1298,15 @@ module Aws::Glue
1283
1298
  # },
1284
1299
  # },
1285
1300
  # stored_as_sub_directories: false,
1301
+ # schema_reference: {
1302
+ # schema_id: {
1303
+ # schema_arn: "GlueResourceArn",
1304
+ # schema_name: "SchemaRegistryNameString",
1305
+ # registry_name: "SchemaRegistryNameString",
1306
+ # },
1307
+ # schema_version_id: "SchemaVersionIdString",
1308
+ # schema_version_number: 1,
1309
+ # },
1286
1310
  # },
1287
1311
  # parameters: {
1288
1312
  # "KeyString" => "ParametersMapValue",
@@ -1350,6 +1374,44 @@ module Aws::Glue
1350
1374
  req.send_request(options)
1351
1375
  end
1352
1376
 
1377
+ # Validates the supplied schema. This call has no side effects, it
1378
+ # simply validates using the supplied schema using `DataFormat` as the
1379
+ # format. Since it does not take a schema set name, no compatibility
1380
+ # checks are performed.
1381
+ #
1382
+ # @option params [required, String] :data_format
1383
+ # The data format of the schema definition. Currently only `AVRO` is
1384
+ # supported.
1385
+ #
1386
+ # @option params [required, String] :schema_definition
1387
+ # The definition of the schema that has to be validated.
1388
+ #
1389
+ # @return [Types::CheckSchemaVersionValidityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1390
+ #
1391
+ # * {Types::CheckSchemaVersionValidityResponse#valid #valid} => Boolean
1392
+ # * {Types::CheckSchemaVersionValidityResponse#error #error} => String
1393
+ #
1394
+ # @example Request syntax with placeholder values
1395
+ #
1396
+ # resp = client.check_schema_version_validity({
1397
+ # data_format: "AVRO", # required, accepts AVRO
1398
+ # schema_definition: "SchemaDefinitionString", # required
1399
+ # })
1400
+ #
1401
+ # @example Response structure
1402
+ #
1403
+ # resp.valid #=> Boolean
1404
+ # resp.error #=> String
1405
+ #
1406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CheckSchemaVersionValidity AWS API Documentation
1407
+ #
1408
+ # @overload check_schema_version_validity(params = {})
1409
+ # @param [Hash] params ({})
1410
+ def check_schema_version_validity(params = {}, options = {})
1411
+ req = build_request(:check_schema_version_validity, params)
1412
+ req.send_request(options)
1413
+ end
1414
+
1353
1415
  # Creates a classifier in the user's account. This can be a
1354
1416
  # `GrokClassifier`, an `XMLClassifier`, a `JsonClassifier`, or a
1355
1417
  # `CsvClassifier`, depending on which field of the request is present.
@@ -1489,6 +1551,10 @@ module Aws::Glue
1489
1551
  # @option params [Types::SchemaChangePolicy] :schema_change_policy
1490
1552
  # The policy for the crawler's update and deletion behavior.
1491
1553
  #
1554
+ # @option params [Types::RecrawlPolicy] :recrawl_policy
1555
+ # A policy that specifies whether to crawl the entire dataset again, or
1556
+ # to crawl only folders that were added since the last crawler run.
1557
+ #
1492
1558
  # @option params [String] :configuration
1493
1559
  # Crawler configuration information. This versioned JSON string allows
1494
1560
  # users to specify aspects of a crawler's behavior. For more
@@ -1563,6 +1629,9 @@ module Aws::Glue
1563
1629
  # update_behavior: "LOG", # accepts LOG, UPDATE_IN_DATABASE
1564
1630
  # delete_behavior: "LOG", # accepts LOG, DELETE_FROM_DATABASE, DEPRECATE_IN_DATABASE
1565
1631
  # },
1632
+ # recrawl_policy: {
1633
+ # recrawl_behavior: "CRAWL_EVERYTHING", # accepts CRAWL_EVERYTHING, CRAWL_NEW_FOLDERS_ONLY
1634
+ # },
1566
1635
  # configuration: "CrawlerConfiguration",
1567
1636
  # crawler_security_configuration: "CrawlerSecurityConfiguration",
1568
1637
  # tags: {
@@ -2176,6 +2245,11 @@ module Aws::Glue
2176
2245
  #
2177
2246
  # [1]: https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html
2178
2247
  #
2248
+ # @option params [Types::TransformEncryption] :transform_encryption
2249
+ # The encryption-at-rest settings of the transform that apply to
2250
+ # accessing user data. Machine learning transforms can access user data
2251
+ # encrypted in Amazon S3 using KMS.
2252
+ #
2179
2253
  # @return [Types::CreateMLTransformResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2180
2254
  #
2181
2255
  # * {Types::CreateMLTransformResponse#transform_id #transform_id} => String
@@ -2212,6 +2286,13 @@ module Aws::Glue
2212
2286
  # tags: {
2213
2287
  # "TagKey" => "TagValue",
2214
2288
  # },
2289
+ # transform_encryption: {
2290
+ # ml_user_data_encryption: {
2291
+ # ml_user_data_encryption_mode: "DISABLED", # required, accepts DISABLED, SSE-KMS
2292
+ # kms_key_id: "NameString",
2293
+ # },
2294
+ # task_run_security_configuration_name: "NameString",
2295
+ # },
2215
2296
  # })
2216
2297
  #
2217
2298
  # @example Response structure
@@ -2296,6 +2377,15 @@ module Aws::Glue
2296
2377
  # },
2297
2378
  # },
2298
2379
  # stored_as_sub_directories: false,
2380
+ # schema_reference: {
2381
+ # schema_id: {
2382
+ # schema_arn: "GlueResourceArn",
2383
+ # schema_name: "SchemaRegistryNameString",
2384
+ # registry_name: "SchemaRegistryNameString",
2385
+ # },
2386
+ # schema_version_id: "SchemaVersionIdString",
2387
+ # schema_version_number: 1,
2388
+ # },
2299
2389
  # },
2300
2390
  # parameters: {
2301
2391
  # "KeyString" => "ParametersMapValue",
@@ -2313,6 +2403,205 @@ module Aws::Glue
2313
2403
  req.send_request(options)
2314
2404
  end
2315
2405
 
2406
+ # Creates a new registry which may be used to hold a collection of
2407
+ # schemas.
2408
+ #
2409
+ # @option params [required, String] :registry_name
2410
+ # Name of the registry to be created of max length of 255, and may only
2411
+ # contain letters, numbers, hyphen, underscore, dollar sign, or hash
2412
+ # mark. No whitespace.
2413
+ #
2414
+ # @option params [String] :description
2415
+ # A description of the registry. If description is not provided, there
2416
+ # will not be any default value for this.
2417
+ #
2418
+ # @option params [Hash<String,String>] :tags
2419
+ # AWS tags that contain a key value pair and may be searched by console,
2420
+ # command line, or API.
2421
+ #
2422
+ # @return [Types::CreateRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2423
+ #
2424
+ # * {Types::CreateRegistryResponse#registry_arn #registry_arn} => String
2425
+ # * {Types::CreateRegistryResponse#registry_name #registry_name} => String
2426
+ # * {Types::CreateRegistryResponse#description #description} => String
2427
+ # * {Types::CreateRegistryResponse#tags #tags} => Hash&lt;String,String&gt;
2428
+ #
2429
+ # @example Request syntax with placeholder values
2430
+ #
2431
+ # resp = client.create_registry({
2432
+ # registry_name: "SchemaRegistryNameString", # required
2433
+ # description: "DescriptionString",
2434
+ # tags: {
2435
+ # "TagKey" => "TagValue",
2436
+ # },
2437
+ # })
2438
+ #
2439
+ # @example Response structure
2440
+ #
2441
+ # resp.registry_arn #=> String
2442
+ # resp.registry_name #=> String
2443
+ # resp.description #=> String
2444
+ # resp.tags #=> Hash
2445
+ # resp.tags["TagKey"] #=> String
2446
+ #
2447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateRegistry AWS API Documentation
2448
+ #
2449
+ # @overload create_registry(params = {})
2450
+ # @param [Hash] params ({})
2451
+ def create_registry(params = {}, options = {})
2452
+ req = build_request(:create_registry, params)
2453
+ req.send_request(options)
2454
+ end
2455
+
2456
+ # Creates a new schema set and registers the schema definition. Returns
2457
+ # an error if the schema set already exists without actually registering
2458
+ # the version.
2459
+ #
2460
+ # When the schema set is created, a version checkpoint will be set to
2461
+ # the first version. Compatibility mode "DISABLED" restricts any
2462
+ # additional schema versions from being added after the first schema
2463
+ # version. For all other compatibility modes, validation of
2464
+ # compatibility settings will be applied only from the second version
2465
+ # onwards when the `RegisterSchemaVersion` API is used.
2466
+ #
2467
+ # When this API is called without a `RegistryId`, this will create an
2468
+ # entry for a "default-registry" in the registry database tables, if
2469
+ # it is not already present.
2470
+ #
2471
+ # @option params [Types::RegistryId] :registry_id
2472
+ # This is a wrapper shape to contain the registry identity fields. If
2473
+ # this is not provided, the default registry will be used. The ARN
2474
+ # format for the same will be: `arn:aws:glue:us-east-2:<customer
2475
+ # id>:registry/default-registry:random-5-letter-id`.
2476
+ #
2477
+ # @option params [required, String] :schema_name
2478
+ # Name of the schema to be created of max length of 255, and may only
2479
+ # contain letters, numbers, hyphen, underscore, dollar sign, or hash
2480
+ # mark. No whitespace.
2481
+ #
2482
+ # @option params [required, String] :data_format
2483
+ # The data format of the schema definition. Currently only `AVRO` is
2484
+ # supported.
2485
+ #
2486
+ # @option params [String] :compatibility
2487
+ # The compatibility mode of the schema. The possible values are:
2488
+ #
2489
+ # * *NONE*\: No compatibility mode applies. You can use this choice in
2490
+ # development scenarios or if you do not know the compatibility mode
2491
+ # that you want to apply to schemas. Any new version added will be
2492
+ # accepted without undergoing a compatibility check.
2493
+ #
2494
+ # * *DISABLED*\: This compatibility choice prevents versioning for a
2495
+ # particular schema. You can use this choice to prevent future
2496
+ # versioning of a schema.
2497
+ #
2498
+ # * *BACKWARD*\: This compatibility choice is recommended as it allows
2499
+ # data receivers to read both the current and one previous schema
2500
+ # version. This means that for instance, a new schema version cannot
2501
+ # drop data fields or change the type of these fields, so they can't
2502
+ # be read by readers using the previous version.
2503
+ #
2504
+ # * *BACKWARD\_ALL*\: This compatibility choice allows data receivers to
2505
+ # read both the current and all previous schema versions. You can use
2506
+ # this choice when you need to delete fields or add optional fields,
2507
+ # and check compatibility against all previous schema versions.
2508
+ #
2509
+ # * *FORWARD*\: This compatibility choice allows data receivers to read
2510
+ # both the current and one next schema version, but not necessarily
2511
+ # later versions. You can use this choice when you need to add fields
2512
+ # or delete optional fields, but only check compatibility against the
2513
+ # last schema version.
2514
+ #
2515
+ # * *FORWARD\_ALL*\: This compatibility choice allows data receivers to
2516
+ # read written by producers of any new registered schema. You can use
2517
+ # this choice when you need to add fields or delete optional fields,
2518
+ # and check compatibility against all previous schema versions.
2519
+ #
2520
+ # * *FULL*\: This compatibility choice allows data receivers to read
2521
+ # data written by producers using the previous or next version of the
2522
+ # schema, but not necessarily earlier or later versions. You can use
2523
+ # this choice when you need to add or remove optional fields, but only
2524
+ # check compatibility against the last schema version.
2525
+ #
2526
+ # * *FULL\_ALL*\: This compatibility choice allows data receivers to
2527
+ # read data written by producers using all previous schema versions.
2528
+ # You can use this choice when you need to add or remove optional
2529
+ # fields, and check compatibility against all previous schema
2530
+ # versions.
2531
+ #
2532
+ # @option params [String] :description
2533
+ # An optional description of the schema. If description is not provided,
2534
+ # there will not be any automatic default value for this.
2535
+ #
2536
+ # @option params [Hash<String,String>] :tags
2537
+ # AWS tags that contain a key value pair and may be searched by console,
2538
+ # command line, or API. If specified, follows the AWS tags-on-create
2539
+ # pattern.
2540
+ #
2541
+ # @option params [String] :schema_definition
2542
+ # The schema definition using the `DataFormat` setting for `SchemaName`.
2543
+ #
2544
+ # @return [Types::CreateSchemaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2545
+ #
2546
+ # * {Types::CreateSchemaResponse#registry_name #registry_name} => String
2547
+ # * {Types::CreateSchemaResponse#registry_arn #registry_arn} => String
2548
+ # * {Types::CreateSchemaResponse#schema_name #schema_name} => String
2549
+ # * {Types::CreateSchemaResponse#schema_arn #schema_arn} => String
2550
+ # * {Types::CreateSchemaResponse#description #description} => String
2551
+ # * {Types::CreateSchemaResponse#data_format #data_format} => String
2552
+ # * {Types::CreateSchemaResponse#compatibility #compatibility} => String
2553
+ # * {Types::CreateSchemaResponse#schema_checkpoint #schema_checkpoint} => Integer
2554
+ # * {Types::CreateSchemaResponse#latest_schema_version #latest_schema_version} => Integer
2555
+ # * {Types::CreateSchemaResponse#next_schema_version #next_schema_version} => Integer
2556
+ # * {Types::CreateSchemaResponse#schema_status #schema_status} => String
2557
+ # * {Types::CreateSchemaResponse#tags #tags} => Hash&lt;String,String&gt;
2558
+ # * {Types::CreateSchemaResponse#schema_version_id #schema_version_id} => String
2559
+ # * {Types::CreateSchemaResponse#schema_version_status #schema_version_status} => String
2560
+ #
2561
+ # @example Request syntax with placeholder values
2562
+ #
2563
+ # resp = client.create_schema({
2564
+ # registry_id: {
2565
+ # registry_name: "SchemaRegistryNameString",
2566
+ # registry_arn: "GlueResourceArn",
2567
+ # },
2568
+ # schema_name: "SchemaRegistryNameString", # required
2569
+ # data_format: "AVRO", # required, accepts AVRO
2570
+ # compatibility: "NONE", # accepts NONE, DISABLED, BACKWARD, BACKWARD_ALL, FORWARD, FORWARD_ALL, FULL, FULL_ALL
2571
+ # description: "DescriptionString",
2572
+ # tags: {
2573
+ # "TagKey" => "TagValue",
2574
+ # },
2575
+ # schema_definition: "SchemaDefinitionString",
2576
+ # })
2577
+ #
2578
+ # @example Response structure
2579
+ #
2580
+ # resp.registry_name #=> String
2581
+ # resp.registry_arn #=> String
2582
+ # resp.schema_name #=> String
2583
+ # resp.schema_arn #=> String
2584
+ # resp.description #=> String
2585
+ # resp.data_format #=> String, one of "AVRO"
2586
+ # resp.compatibility #=> String, one of "NONE", "DISABLED", "BACKWARD", "BACKWARD_ALL", "FORWARD", "FORWARD_ALL", "FULL", "FULL_ALL"
2587
+ # resp.schema_checkpoint #=> Integer
2588
+ # resp.latest_schema_version #=> Integer
2589
+ # resp.next_schema_version #=> Integer
2590
+ # resp.schema_status #=> String, one of "AVAILABLE", "PENDING", "DELETING"
2591
+ # resp.tags #=> Hash
2592
+ # resp.tags["TagKey"] #=> String
2593
+ # resp.schema_version_id #=> String
2594
+ # resp.schema_version_status #=> String, one of "AVAILABLE", "PENDING", "FAILURE", "DELETING"
2595
+ #
2596
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateSchema AWS API Documentation
2597
+ #
2598
+ # @overload create_schema(params = {})
2599
+ # @param [Hash] params ({})
2600
+ def create_schema(params = {}, options = {})
2601
+ req = build_request(:create_schema, params)
2602
+ req.send_request(options)
2603
+ end
2604
+
2316
2605
  # Transforms a directed acyclic graph (DAG) into code.
2317
2606
  #
2318
2607
  # @option params [Array<Types::CodeGenNode>] :dag_nodes
@@ -2500,6 +2789,15 @@ module Aws::Glue
2500
2789
  # },
2501
2790
  # },
2502
2791
  # stored_as_sub_directories: false,
2792
+ # schema_reference: {
2793
+ # schema_id: {
2794
+ # schema_arn: "GlueResourceArn",
2795
+ # schema_name: "SchemaRegistryNameString",
2796
+ # registry_name: "SchemaRegistryNameString",
2797
+ # },
2798
+ # schema_version_id: "SchemaVersionIdString",
2799
+ # schema_version_number: 1,
2800
+ # },
2503
2801
  # },
2504
2802
  # partition_keys: [
2505
2803
  # {
@@ -2764,6 +3062,9 @@ module Aws::Glue
2764
3062
 
2765
3063
  # Delete the partition column statistics of a column.
2766
3064
  #
3065
+ # The Identity and Access Management (IAM) permission required for this
3066
+ # operation is `DeletePartition`.
3067
+ #
2767
3068
  # @option params [String] :catalog_id
2768
3069
  # The ID of the Data Catalog where the partitions in question reside. If
2769
3070
  # none is supplied, the AWS account ID is used by default.
@@ -2803,6 +3104,9 @@ module Aws::Glue
2803
3104
 
2804
3105
  # Retrieves table statistics of columns.
2805
3106
  #
3107
+ # The Identity and Access Management (IAM) permission required for this
3108
+ # operation is `DeleteTable`.
3109
+ #
2806
3110
  # @option params [String] :catalog_id
2807
3111
  # The ID of the Data Catalog where the partitions in question reside. If
2808
3112
  # none is supplied, the AWS account ID is used by default.
@@ -3050,6 +3354,47 @@ module Aws::Glue
3050
3354
  req.send_request(options)
3051
3355
  end
3052
3356
 
3357
+ # Delete the entire registry including schema and all of its versions.
3358
+ # To get the status of the delete operation, you can call the
3359
+ # `GetRegistry` API after the asynchronous call. Deleting a registry
3360
+ # will disable all online operations for the registry such as the
3361
+ # `UpdateRegistry`, `CreateSchema`, `UpdateSchema`, and
3362
+ # `RegisterSchemaVersion` APIs.
3363
+ #
3364
+ # @option params [required, Types::RegistryId] :registry_id
3365
+ # This is a wrapper structure that may contain the registry name and
3366
+ # Amazon Resource Name (ARN).
3367
+ #
3368
+ # @return [Types::DeleteRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3369
+ #
3370
+ # * {Types::DeleteRegistryResponse#registry_name #registry_name} => String
3371
+ # * {Types::DeleteRegistryResponse#registry_arn #registry_arn} => String
3372
+ # * {Types::DeleteRegistryResponse#status #status} => String
3373
+ #
3374
+ # @example Request syntax with placeholder values
3375
+ #
3376
+ # resp = client.delete_registry({
3377
+ # registry_id: { # required
3378
+ # registry_name: "SchemaRegistryNameString",
3379
+ # registry_arn: "GlueResourceArn",
3380
+ # },
3381
+ # })
3382
+ #
3383
+ # @example Response structure
3384
+ #
3385
+ # resp.registry_name #=> String
3386
+ # resp.registry_arn #=> String
3387
+ # resp.status #=> String, one of "AVAILABLE", "DELETING"
3388
+ #
3389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteRegistry AWS API Documentation
3390
+ #
3391
+ # @overload delete_registry(params = {})
3392
+ # @param [Hash] params ({})
3393
+ def delete_registry(params = {}, options = {})
3394
+ req = build_request(:delete_registry, params)
3395
+ req.send_request(options)
3396
+ end
3397
+
3053
3398
  # Deletes a specified policy.
3054
3399
  #
3055
3400
  # @option params [String] :policy_hash_condition
@@ -3077,6 +3422,109 @@ module Aws::Glue
3077
3422
  req.send_request(options)
3078
3423
  end
3079
3424
 
3425
+ # Deletes the entire schema set, including the schema set and all of its
3426
+ # versions. To get the status of the delete operation, you can call
3427
+ # `GetSchema` API after the asynchronous call. Deleting a registry will
3428
+ # disable all online operations for the schema, such as the
3429
+ # `GetSchemaByDefinition`, and `RegisterSchemaVersion` APIs.
3430
+ #
3431
+ # @option params [required, Types::SchemaId] :schema_id
3432
+ # This is a wrapper structure that may contain the schema name and
3433
+ # Amazon Resource Name (ARN).
3434
+ #
3435
+ # @return [Types::DeleteSchemaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3436
+ #
3437
+ # * {Types::DeleteSchemaResponse#schema_arn #schema_arn} => String
3438
+ # * {Types::DeleteSchemaResponse#schema_name #schema_name} => String
3439
+ # * {Types::DeleteSchemaResponse#status #status} => String
3440
+ #
3441
+ # @example Request syntax with placeholder values
3442
+ #
3443
+ # resp = client.delete_schema({
3444
+ # schema_id: { # required
3445
+ # schema_arn: "GlueResourceArn",
3446
+ # schema_name: "SchemaRegistryNameString",
3447
+ # registry_name: "SchemaRegistryNameString",
3448
+ # },
3449
+ # })
3450
+ #
3451
+ # @example Response structure
3452
+ #
3453
+ # resp.schema_arn #=> String
3454
+ # resp.schema_name #=> String
3455
+ # resp.status #=> String, one of "AVAILABLE", "PENDING", "DELETING"
3456
+ #
3457
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteSchema AWS API Documentation
3458
+ #
3459
+ # @overload delete_schema(params = {})
3460
+ # @param [Hash] params ({})
3461
+ def delete_schema(params = {}, options = {})
3462
+ req = build_request(:delete_schema, params)
3463
+ req.send_request(options)
3464
+ end
3465
+
3466
+ # Remove versions from the specified schema. A version number or range
3467
+ # may be supplied. If the compatibility mode forbids deleting of a
3468
+ # version that is necessary, such as BACKWARDS\_FULL, an error is
3469
+ # returned. Calling the `GetSchemaVersions` API after this call will
3470
+ # list the status of the deleted versions.
3471
+ #
3472
+ # When the range of version numbers contain check pointed version, the
3473
+ # API will return a 409 conflict and will not proceed with the deletion.
3474
+ # You have to remove the checkpoint first using the
3475
+ # `DeleteSchemaCheckpoint` API before using this API.
3476
+ #
3477
+ # You cannot use the `DeleteSchemaVersions` API to delete the first
3478
+ # schema version in the schema set. The first schema version can only be
3479
+ # deleted by the `DeleteSchema` API. This operation will also delete the
3480
+ # attached `SchemaVersionMetadata` under the schema versions. Hard
3481
+ # deletes will be enforced on the database.
3482
+ #
3483
+ # If the compatibility mode forbids deleting of a version that is
3484
+ # necessary, such as BACKWARDS\_FULL, an error is returned.
3485
+ #
3486
+ # @option params [required, Types::SchemaId] :schema_id
3487
+ # This is a wrapper structure that may contain the schema name and
3488
+ # Amazon Resource Name (ARN).
3489
+ #
3490
+ # @option params [required, String] :versions
3491
+ # A version range may be supplied which may be of the format:
3492
+ #
3493
+ # * a single version number, 5
3494
+ #
3495
+ # * a range, 5-8 : deletes versions 5, 6, 7, 8
3496
+ #
3497
+ # @return [Types::DeleteSchemaVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3498
+ #
3499
+ # * {Types::DeleteSchemaVersionsResponse#schema_version_errors #schema_version_errors} => Array&lt;Types::SchemaVersionErrorItem&gt;
3500
+ #
3501
+ # @example Request syntax with placeholder values
3502
+ #
3503
+ # resp = client.delete_schema_versions({
3504
+ # schema_id: { # required
3505
+ # schema_arn: "GlueResourceArn",
3506
+ # schema_name: "SchemaRegistryNameString",
3507
+ # registry_name: "SchemaRegistryNameString",
3508
+ # },
3509
+ # versions: "VersionsString", # required
3510
+ # })
3511
+ #
3512
+ # @example Response structure
3513
+ #
3514
+ # resp.schema_version_errors #=> Array
3515
+ # resp.schema_version_errors[0].version_number #=> Integer
3516
+ # resp.schema_version_errors[0].error_details.error_code #=> String
3517
+ # resp.schema_version_errors[0].error_details.error_message #=> String
3518
+ #
3519
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteSchemaVersions AWS API Documentation
3520
+ #
3521
+ # @overload delete_schema_versions(params = {})
3522
+ # @param [Hash] params ({})
3523
+ def delete_schema_versions(params = {}, options = {})
3524
+ req = build_request(:delete_schema_versions, params)
3525
+ req.send_request(options)
3526
+ end
3527
+
3080
3528
  # Deletes a specified security configuration.
3081
3529
  #
3082
3530
  # @option params [required, String] :name
@@ -3425,6 +3873,9 @@ module Aws::Glue
3425
3873
 
3426
3874
  # Retrieves partition statistics of columns.
3427
3875
  #
3876
+ # The Identity and Access Management (IAM) permission required for this
3877
+ # operation is `GetPartition`.
3878
+ #
3428
3879
  # @option params [String] :catalog_id
3429
3880
  # The ID of the Data Catalog where the partitions in question reside. If
3430
3881
  # none is supplied, the AWS account ID is used by default.
@@ -3507,6 +3958,9 @@ module Aws::Glue
3507
3958
 
3508
3959
  # Retrieves table statistics of columns.
3509
3960
  #
3961
+ # The Identity and Access Management (IAM) permission required for this
3962
+ # operation is `GetTable`.
3963
+ #
3510
3964
  # @option params [String] :catalog_id
3511
3965
  # The ID of the Data Catalog where the partitions in question reside. If
3512
3966
  # none is supplied, the AWS account ID is used by default.
@@ -3754,6 +4208,7 @@ module Aws::Glue
3754
4208
  # resp.crawler.description #=> String
3755
4209
  # resp.crawler.classifiers #=> Array
3756
4210
  # resp.crawler.classifiers[0] #=> String
4211
+ # resp.crawler.recrawl_policy.recrawl_behavior #=> String, one of "CRAWL_EVERYTHING", "CRAWL_NEW_FOLDERS_ONLY"
3757
4212
  # resp.crawler.schema_change_policy.update_behavior #=> String, one of "LOG", "UPDATE_IN_DATABASE"
3758
4213
  # resp.crawler.schema_change_policy.delete_behavior #=> String, one of "LOG", "DELETE_FROM_DATABASE", "DEPRECATE_IN_DATABASE"
3759
4214
  # resp.crawler.state #=> String, one of "READY", "RUNNING", "STOPPING"
@@ -3883,6 +4338,7 @@ module Aws::Glue
3883
4338
  # resp.crawlers[0].description #=> String
3884
4339
  # resp.crawlers[0].classifiers #=> Array
3885
4340
  # resp.crawlers[0].classifiers[0] #=> String
4341
+ # resp.crawlers[0].recrawl_policy.recrawl_behavior #=> String, one of "CRAWL_EVERYTHING", "CRAWL_NEW_FOLDERS_ONLY"
3886
4342
  # resp.crawlers[0].schema_change_policy.update_behavior #=> String, one of "LOG", "UPDATE_IN_DATABASE"
3887
4343
  # resp.crawlers[0].schema_change_policy.delete_behavior #=> String, one of "LOG", "DELETE_FROM_DATABASE", "DEPRECATE_IN_DATABASE"
3888
4344
  # resp.crawlers[0].state #=> String, one of "READY", "RUNNING", "STOPPING"
@@ -4678,6 +5134,7 @@ module Aws::Glue
4678
5134
  # * {Types::GetMLTransformResponse#number_of_workers #number_of_workers} => Integer
4679
5135
  # * {Types::GetMLTransformResponse#timeout #timeout} => Integer
4680
5136
  # * {Types::GetMLTransformResponse#max_retries #max_retries} => Integer
5137
+ # * {Types::GetMLTransformResponse#transform_encryption #transform_encryption} => Types::TransformEncryption
4681
5138
  #
4682
5139
  # @example Request syntax with placeholder values
4683
5140
  #
@@ -4723,6 +5180,9 @@ module Aws::Glue
4723
5180
  # resp.number_of_workers #=> Integer
4724
5181
  # resp.timeout #=> Integer
4725
5182
  # resp.max_retries #=> Integer
5183
+ # resp.transform_encryption.ml_user_data_encryption.ml_user_data_encryption_mode #=> String, one of "DISABLED", "SSE-KMS"
5184
+ # resp.transform_encryption.ml_user_data_encryption.kms_key_id #=> String
5185
+ # resp.transform_encryption.task_run_security_configuration_name #=> String
4726
5186
  #
4727
5187
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetMLTransform AWS API Documentation
4728
5188
  #
@@ -4825,6 +5285,9 @@ module Aws::Glue
4825
5285
  # resp.transforms[0].number_of_workers #=> Integer
4826
5286
  # resp.transforms[0].timeout #=> Integer
4827
5287
  # resp.transforms[0].max_retries #=> Integer
5288
+ # resp.transforms[0].transform_encryption.ml_user_data_encryption.ml_user_data_encryption_mode #=> String, one of "DISABLED", "SSE-KMS"
5289
+ # resp.transforms[0].transform_encryption.ml_user_data_encryption.kms_key_id #=> String
5290
+ # resp.transforms[0].transform_encryption.task_run_security_configuration_name #=> String
4828
5291
  # resp.next_token #=> String
4829
5292
  #
4830
5293
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetMLTransforms AWS API Documentation
@@ -4973,6 +5436,11 @@ module Aws::Glue
4973
5436
  # resp.partition.storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
4974
5437
  # resp.partition.storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
4975
5438
  # resp.partition.storage_descriptor.stored_as_sub_directories #=> Boolean
5439
+ # resp.partition.storage_descriptor.schema_reference.schema_id.schema_arn #=> String
5440
+ # resp.partition.storage_descriptor.schema_reference.schema_id.schema_name #=> String
5441
+ # resp.partition.storage_descriptor.schema_reference.schema_id.registry_name #=> String
5442
+ # resp.partition.storage_descriptor.schema_reference.schema_version_id #=> String
5443
+ # resp.partition.storage_descriptor.schema_reference.schema_version_number #=> Integer
4976
5444
  # resp.partition.parameters #=> Hash
4977
5445
  # resp.partition.parameters["KeyString"] #=> String
4978
5446
  # resp.partition.last_analyzed_time #=> Time
@@ -5213,6 +5681,11 @@ module Aws::Glue
5213
5681
  # resp.partitions[0].storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
5214
5682
  # resp.partitions[0].storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
5215
5683
  # resp.partitions[0].storage_descriptor.stored_as_sub_directories #=> Boolean
5684
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.schema_arn #=> String
5685
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.schema_name #=> String
5686
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_id.registry_name #=> String
5687
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_version_id #=> String
5688
+ # resp.partitions[0].storage_descriptor.schema_reference.schema_version_number #=> Integer
5216
5689
  # resp.partitions[0].parameters #=> Hash
5217
5690
  # resp.partitions[0].parameters["KeyString"] #=> String
5218
5691
  # resp.partitions[0].last_analyzed_time #=> Time
@@ -5248,6 +5721,15 @@ module Aws::Glue
5248
5721
  # @option params [Hash<String,String>] :additional_plan_options_map
5249
5722
  # A map to hold additional optional key-value parameters.
5250
5723
  #
5724
+ # Currently, these key-value pairs are supported:
5725
+ #
5726
+ # * `inferSchema`  —  Specifies whether to set `inferSchema` to true or
5727
+ # false for the default script generated by an AWS Glue job. For
5728
+ # example, to set `inferSchema` to true, pass the following key value
5729
+ # pair:
5730
+ #
5731
+ # `--additional-plan-options-map '\{"inferSchema":"true"\}'`
5732
+ #
5251
5733
  # @return [Types::GetPlanResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5252
5734
  #
5253
5735
  # * {Types::GetPlanResponse#python_script #python_script} => String
@@ -5319,6 +5801,48 @@ module Aws::Glue
5319
5801
  req.send_request(options)
5320
5802
  end
5321
5803
 
5804
+ # Describes the specified registry in detail.
5805
+ #
5806
+ # @option params [required, Types::RegistryId] :registry_id
5807
+ # This is a wrapper structure that may contain the registry name and
5808
+ # Amazon Resource Name (ARN).
5809
+ #
5810
+ # @return [Types::GetRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5811
+ #
5812
+ # * {Types::GetRegistryResponse#registry_name #registry_name} => String
5813
+ # * {Types::GetRegistryResponse#registry_arn #registry_arn} => String
5814
+ # * {Types::GetRegistryResponse#description #description} => String
5815
+ # * {Types::GetRegistryResponse#status #status} => String
5816
+ # * {Types::GetRegistryResponse#created_time #created_time} => String
5817
+ # * {Types::GetRegistryResponse#updated_time #updated_time} => String
5818
+ #
5819
+ # @example Request syntax with placeholder values
5820
+ #
5821
+ # resp = client.get_registry({
5822
+ # registry_id: { # required
5823
+ # registry_name: "SchemaRegistryNameString",
5824
+ # registry_arn: "GlueResourceArn",
5825
+ # },
5826
+ # })
5827
+ #
5828
+ # @example Response structure
5829
+ #
5830
+ # resp.registry_name #=> String
5831
+ # resp.registry_arn #=> String
5832
+ # resp.description #=> String
5833
+ # resp.status #=> String, one of "AVAILABLE", "DELETING"
5834
+ # resp.created_time #=> String
5835
+ # resp.updated_time #=> String
5836
+ #
5837
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetRegistry AWS API Documentation
5838
+ #
5839
+ # @overload get_registry(params = {})
5840
+ # @param [Hash] params ({})
5841
+ def get_registry(params = {}, options = {})
5842
+ req = build_request(:get_registry, params)
5843
+ req.send_request(options)
5844
+ end
5845
+
5322
5846
  # Retrieves the security configurations for the resource policies set on
5323
5847
  # individual resources, and also the account-level policy.
5324
5848
  #
@@ -5338,6 +5862,8 @@ module Aws::Glue
5338
5862
  # * {Types::GetResourcePoliciesResponse#get_resource_policies_response_list #get_resource_policies_response_list} => Array&lt;Types::GluePolicy&gt;
5339
5863
  # * {Types::GetResourcePoliciesResponse#next_token #next_token} => String
5340
5864
  #
5865
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
5866
+ #
5341
5867
  # @example Request syntax with placeholder values
5342
5868
  #
5343
5869
  # resp = client.get_resource_policies({
@@ -5403,6 +5929,254 @@ module Aws::Glue
5403
5929
  req.send_request(options)
5404
5930
  end
5405
5931
 
5932
+ # Describes the specified schema in detail.
5933
+ #
5934
+ # @option params [required, Types::SchemaId] :schema_id
5935
+ # This is a wrapper structure to contain schema identity fields. The
5936
+ # structure contains:
5937
+ #
5938
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
5939
+ # Either `SchemaArn` or `SchemaName` and `RegistryName` has to be
5940
+ # provided.
5941
+ #
5942
+ # * SchemaId$SchemaName: The name of the schema. Either `SchemaArn` or
5943
+ # `SchemaName` and `RegistryName` has to be provided.
5944
+ #
5945
+ # @return [Types::GetSchemaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5946
+ #
5947
+ # * {Types::GetSchemaResponse#registry_name #registry_name} => String
5948
+ # * {Types::GetSchemaResponse#registry_arn #registry_arn} => String
5949
+ # * {Types::GetSchemaResponse#schema_name #schema_name} => String
5950
+ # * {Types::GetSchemaResponse#schema_arn #schema_arn} => String
5951
+ # * {Types::GetSchemaResponse#description #description} => String
5952
+ # * {Types::GetSchemaResponse#data_format #data_format} => String
5953
+ # * {Types::GetSchemaResponse#compatibility #compatibility} => String
5954
+ # * {Types::GetSchemaResponse#schema_checkpoint #schema_checkpoint} => Integer
5955
+ # * {Types::GetSchemaResponse#latest_schema_version #latest_schema_version} => Integer
5956
+ # * {Types::GetSchemaResponse#next_schema_version #next_schema_version} => Integer
5957
+ # * {Types::GetSchemaResponse#schema_status #schema_status} => String
5958
+ # * {Types::GetSchemaResponse#created_time #created_time} => String
5959
+ # * {Types::GetSchemaResponse#updated_time #updated_time} => String
5960
+ #
5961
+ # @example Request syntax with placeholder values
5962
+ #
5963
+ # resp = client.get_schema({
5964
+ # schema_id: { # required
5965
+ # schema_arn: "GlueResourceArn",
5966
+ # schema_name: "SchemaRegistryNameString",
5967
+ # registry_name: "SchemaRegistryNameString",
5968
+ # },
5969
+ # })
5970
+ #
5971
+ # @example Response structure
5972
+ #
5973
+ # resp.registry_name #=> String
5974
+ # resp.registry_arn #=> String
5975
+ # resp.schema_name #=> String
5976
+ # resp.schema_arn #=> String
5977
+ # resp.description #=> String
5978
+ # resp.data_format #=> String, one of "AVRO"
5979
+ # resp.compatibility #=> String, one of "NONE", "DISABLED", "BACKWARD", "BACKWARD_ALL", "FORWARD", "FORWARD_ALL", "FULL", "FULL_ALL"
5980
+ # resp.schema_checkpoint #=> Integer
5981
+ # resp.latest_schema_version #=> Integer
5982
+ # resp.next_schema_version #=> Integer
5983
+ # resp.schema_status #=> String, one of "AVAILABLE", "PENDING", "DELETING"
5984
+ # resp.created_time #=> String
5985
+ # resp.updated_time #=> String
5986
+ #
5987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSchema AWS API Documentation
5988
+ #
5989
+ # @overload get_schema(params = {})
5990
+ # @param [Hash] params ({})
5991
+ def get_schema(params = {}, options = {})
5992
+ req = build_request(:get_schema, params)
5993
+ req.send_request(options)
5994
+ end
5995
+
5996
+ # Retrieves a schema by the `SchemaDefinition`. The schema definition is
5997
+ # sent to the Schema Registry, canonicalized, and hashed. If the hash is
5998
+ # matched within the scope of the `SchemaName` or ARN (or the default
5999
+ # registry, if none is supplied), that schema’s metadata is returned.
6000
+ # Otherwise, a 404 or NotFound error is returned. Schema versions in
6001
+ # `Deleted` statuses will not be included in the results.
6002
+ #
6003
+ # @option params [required, Types::SchemaId] :schema_id
6004
+ # This is a wrapper structure to contain schema identity fields. The
6005
+ # structure contains:
6006
+ #
6007
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
6008
+ # One of `SchemaArn` or `SchemaName` has to be provided.
6009
+ #
6010
+ # * SchemaId$SchemaName: The name of the schema. One of `SchemaArn` or
6011
+ # `SchemaName` has to be provided.
6012
+ #
6013
+ # @option params [required, String] :schema_definition
6014
+ # The definition of the schema for which schema details are required.
6015
+ #
6016
+ # @return [Types::GetSchemaByDefinitionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6017
+ #
6018
+ # * {Types::GetSchemaByDefinitionResponse#schema_version_id #schema_version_id} => String
6019
+ # * {Types::GetSchemaByDefinitionResponse#schema_arn #schema_arn} => String
6020
+ # * {Types::GetSchemaByDefinitionResponse#data_format #data_format} => String
6021
+ # * {Types::GetSchemaByDefinitionResponse#status #status} => String
6022
+ # * {Types::GetSchemaByDefinitionResponse#created_time #created_time} => String
6023
+ #
6024
+ # @example Request syntax with placeholder values
6025
+ #
6026
+ # resp = client.get_schema_by_definition({
6027
+ # schema_id: { # required
6028
+ # schema_arn: "GlueResourceArn",
6029
+ # schema_name: "SchemaRegistryNameString",
6030
+ # registry_name: "SchemaRegistryNameString",
6031
+ # },
6032
+ # schema_definition: "SchemaDefinitionString", # required
6033
+ # })
6034
+ #
6035
+ # @example Response structure
6036
+ #
6037
+ # resp.schema_version_id #=> String
6038
+ # resp.schema_arn #=> String
6039
+ # resp.data_format #=> String, one of "AVRO"
6040
+ # resp.status #=> String, one of "AVAILABLE", "PENDING", "FAILURE", "DELETING"
6041
+ # resp.created_time #=> String
6042
+ #
6043
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSchemaByDefinition AWS API Documentation
6044
+ #
6045
+ # @overload get_schema_by_definition(params = {})
6046
+ # @param [Hash] params ({})
6047
+ def get_schema_by_definition(params = {}, options = {})
6048
+ req = build_request(:get_schema_by_definition, params)
6049
+ req.send_request(options)
6050
+ end
6051
+
6052
+ # Get the specified schema by its unique ID assigned when a version of
6053
+ # the schema is created or registered. Schema versions in Deleted status
6054
+ # will not be included in the results.
6055
+ #
6056
+ # @option params [Types::SchemaId] :schema_id
6057
+ # This is a wrapper structure to contain schema identity fields. The
6058
+ # structure contains:
6059
+ #
6060
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
6061
+ # Either `SchemaArn` or `SchemaName` and `RegistryName` has to be
6062
+ # provided.
6063
+ #
6064
+ # * SchemaId$SchemaName: The name of the schema. Either `SchemaArn` or
6065
+ # `SchemaName` and `RegistryName` has to be provided.
6066
+ #
6067
+ # @option params [String] :schema_version_id
6068
+ # The `SchemaVersionId` of the schema version. This field is required
6069
+ # for fetching by schema ID. Either this or the `SchemaId` wrapper has
6070
+ # to be provided.
6071
+ #
6072
+ # @option params [Types::SchemaVersionNumber] :schema_version_number
6073
+ # The version number of the schema.
6074
+ #
6075
+ # @return [Types::GetSchemaVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6076
+ #
6077
+ # * {Types::GetSchemaVersionResponse#schema_version_id #schema_version_id} => String
6078
+ # * {Types::GetSchemaVersionResponse#schema_definition #schema_definition} => String
6079
+ # * {Types::GetSchemaVersionResponse#data_format #data_format} => String
6080
+ # * {Types::GetSchemaVersionResponse#schema_arn #schema_arn} => String
6081
+ # * {Types::GetSchemaVersionResponse#version_number #version_number} => Integer
6082
+ # * {Types::GetSchemaVersionResponse#status #status} => String
6083
+ # * {Types::GetSchemaVersionResponse#created_time #created_time} => String
6084
+ #
6085
+ # @example Request syntax with placeholder values
6086
+ #
6087
+ # resp = client.get_schema_version({
6088
+ # schema_id: {
6089
+ # schema_arn: "GlueResourceArn",
6090
+ # schema_name: "SchemaRegistryNameString",
6091
+ # registry_name: "SchemaRegistryNameString",
6092
+ # },
6093
+ # schema_version_id: "SchemaVersionIdString",
6094
+ # schema_version_number: {
6095
+ # latest_version: false,
6096
+ # version_number: 1,
6097
+ # },
6098
+ # })
6099
+ #
6100
+ # @example Response structure
6101
+ #
6102
+ # resp.schema_version_id #=> String
6103
+ # resp.schema_definition #=> String
6104
+ # resp.data_format #=> String, one of "AVRO"
6105
+ # resp.schema_arn #=> String
6106
+ # resp.version_number #=> Integer
6107
+ # resp.status #=> String, one of "AVAILABLE", "PENDING", "FAILURE", "DELETING"
6108
+ # resp.created_time #=> String
6109
+ #
6110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSchemaVersion AWS API Documentation
6111
+ #
6112
+ # @overload get_schema_version(params = {})
6113
+ # @param [Hash] params ({})
6114
+ def get_schema_version(params = {}, options = {})
6115
+ req = build_request(:get_schema_version, params)
6116
+ req.send_request(options)
6117
+ end
6118
+
6119
+ # Fetches the schema version difference in the specified difference type
6120
+ # between two stored schema versions in the Schema Registry.
6121
+ #
6122
+ # This API allows you to compare two schema versions between two schema
6123
+ # definitions under the same schema.
6124
+ #
6125
+ # @option params [required, Types::SchemaId] :schema_id
6126
+ # This is a wrapper structure to contain schema identity fields. The
6127
+ # structure contains:
6128
+ #
6129
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
6130
+ # One of `SchemaArn` or `SchemaName` has to be provided.
6131
+ #
6132
+ # * SchemaId$SchemaName: The name of the schema. One of `SchemaArn` or
6133
+ # `SchemaName` has to be provided.
6134
+ #
6135
+ # @option params [required, Types::SchemaVersionNumber] :first_schema_version_number
6136
+ # The first of the two schema versions to be compared.
6137
+ #
6138
+ # @option params [required, Types::SchemaVersionNumber] :second_schema_version_number
6139
+ # The second of the two schema versions to be compared.
6140
+ #
6141
+ # @option params [required, String] :schema_diff_type
6142
+ # Refers to `SYNTAX_DIFF`, which is the currently supported diff type.
6143
+ #
6144
+ # @return [Types::GetSchemaVersionsDiffResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6145
+ #
6146
+ # * {Types::GetSchemaVersionsDiffResponse#diff #diff} => String
6147
+ #
6148
+ # @example Request syntax with placeholder values
6149
+ #
6150
+ # resp = client.get_schema_versions_diff({
6151
+ # schema_id: { # required
6152
+ # schema_arn: "GlueResourceArn",
6153
+ # schema_name: "SchemaRegistryNameString",
6154
+ # registry_name: "SchemaRegistryNameString",
6155
+ # },
6156
+ # first_schema_version_number: { # required
6157
+ # latest_version: false,
6158
+ # version_number: 1,
6159
+ # },
6160
+ # second_schema_version_number: { # required
6161
+ # latest_version: false,
6162
+ # version_number: 1,
6163
+ # },
6164
+ # schema_diff_type: "SYNTAX_DIFF", # required, accepts SYNTAX_DIFF
6165
+ # })
6166
+ #
6167
+ # @example Response structure
6168
+ #
6169
+ # resp.diff #=> String
6170
+ #
6171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSchemaVersionsDiff AWS API Documentation
6172
+ #
6173
+ # @overload get_schema_versions_diff(params = {})
6174
+ # @param [Hash] params ({})
6175
+ def get_schema_versions_diff(params = {}, options = {})
6176
+ req = build_request(:get_schema_versions_diff, params)
6177
+ req.send_request(options)
6178
+ end
6179
+
5406
6180
  # Retrieves a specified security configuration.
5407
6181
  #
5408
6182
  # @option params [required, String] :name
@@ -5551,6 +6325,11 @@ module Aws::Glue
5551
6325
  # resp.table.storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
5552
6326
  # resp.table.storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
5553
6327
  # resp.table.storage_descriptor.stored_as_sub_directories #=> Boolean
6328
+ # resp.table.storage_descriptor.schema_reference.schema_id.schema_arn #=> String
6329
+ # resp.table.storage_descriptor.schema_reference.schema_id.schema_name #=> String
6330
+ # resp.table.storage_descriptor.schema_reference.schema_id.registry_name #=> String
6331
+ # resp.table.storage_descriptor.schema_reference.schema_version_id #=> String
6332
+ # resp.table.storage_descriptor.schema_reference.schema_version_number #=> Integer
5554
6333
  # resp.table.partition_keys #=> Array
5555
6334
  # resp.table.partition_keys[0].name #=> String
5556
6335
  # resp.table.partition_keys[0].type #=> String
@@ -5649,6 +6428,11 @@ module Aws::Glue
5649
6428
  # resp.table_version.table.storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
5650
6429
  # resp.table_version.table.storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
5651
6430
  # resp.table_version.table.storage_descriptor.stored_as_sub_directories #=> Boolean
6431
+ # resp.table_version.table.storage_descriptor.schema_reference.schema_id.schema_arn #=> String
6432
+ # resp.table_version.table.storage_descriptor.schema_reference.schema_id.schema_name #=> String
6433
+ # resp.table_version.table.storage_descriptor.schema_reference.schema_id.registry_name #=> String
6434
+ # resp.table_version.table.storage_descriptor.schema_reference.schema_version_id #=> String
6435
+ # resp.table_version.table.storage_descriptor.schema_reference.schema_version_number #=> Integer
5652
6436
  # resp.table_version.table.partition_keys #=> Array
5653
6437
  # resp.table_version.table.partition_keys[0].name #=> String
5654
6438
  # resp.table_version.table.partition_keys[0].type #=> String
@@ -5756,6 +6540,11 @@ module Aws::Glue
5756
6540
  # resp.table_versions[0].table.storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
5757
6541
  # resp.table_versions[0].table.storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
5758
6542
  # resp.table_versions[0].table.storage_descriptor.stored_as_sub_directories #=> Boolean
6543
+ # resp.table_versions[0].table.storage_descriptor.schema_reference.schema_id.schema_arn #=> String
6544
+ # resp.table_versions[0].table.storage_descriptor.schema_reference.schema_id.schema_name #=> String
6545
+ # resp.table_versions[0].table.storage_descriptor.schema_reference.schema_id.registry_name #=> String
6546
+ # resp.table_versions[0].table.storage_descriptor.schema_reference.schema_version_id #=> String
6547
+ # resp.table_versions[0].table.storage_descriptor.schema_reference.schema_version_number #=> Integer
5759
6548
  # resp.table_versions[0].table.partition_keys #=> Array
5760
6549
  # resp.table_versions[0].table.partition_keys[0].name #=> String
5761
6550
  # resp.table_versions[0].table.partition_keys[0].type #=> String
@@ -5864,6 +6653,11 @@ module Aws::Glue
5864
6653
  # resp.table_list[0].storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
5865
6654
  # resp.table_list[0].storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
5866
6655
  # resp.table_list[0].storage_descriptor.stored_as_sub_directories #=> Boolean
6656
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.schema_arn #=> String
6657
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.schema_name #=> String
6658
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.registry_name #=> String
6659
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_version_id #=> String
6660
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_version_number #=> Integer
5867
6661
  # resp.table_list[0].partition_keys #=> Array
5868
6662
  # resp.table_list[0].partition_keys[0].name #=> String
5869
6663
  # resp.table_list[0].partition_keys[0].type #=> String
@@ -6837,6 +7631,170 @@ module Aws::Glue
6837
7631
  req.send_request(options)
6838
7632
  end
6839
7633
 
7634
+ # Returns a list of registries that you have created, with minimal
7635
+ # registry information. Registries in the `Deleting` status will not be
7636
+ # included in the results. Empty results will be returned if there are
7637
+ # no registries available.
7638
+ #
7639
+ # @option params [Integer] :max_results
7640
+ # Maximum number of results required per page. If the value is not
7641
+ # supplied, this will be defaulted to 25 per page.
7642
+ #
7643
+ # @option params [String] :next_token
7644
+ # A continuation token, if this is a continuation call.
7645
+ #
7646
+ # @return [Types::ListRegistriesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7647
+ #
7648
+ # * {Types::ListRegistriesResponse#registries #registries} => Array&lt;Types::RegistryListItem&gt;
7649
+ # * {Types::ListRegistriesResponse#next_token #next_token} => String
7650
+ #
7651
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7652
+ #
7653
+ # @example Request syntax with placeholder values
7654
+ #
7655
+ # resp = client.list_registries({
7656
+ # max_results: 1,
7657
+ # next_token: "SchemaRegistryTokenString",
7658
+ # })
7659
+ #
7660
+ # @example Response structure
7661
+ #
7662
+ # resp.registries #=> Array
7663
+ # resp.registries[0].registry_name #=> String
7664
+ # resp.registries[0].registry_arn #=> String
7665
+ # resp.registries[0].description #=> String
7666
+ # resp.registries[0].status #=> String, one of "AVAILABLE", "DELETING"
7667
+ # resp.registries[0].created_time #=> String
7668
+ # resp.registries[0].updated_time #=> String
7669
+ # resp.next_token #=> String
7670
+ #
7671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListRegistries AWS API Documentation
7672
+ #
7673
+ # @overload list_registries(params = {})
7674
+ # @param [Hash] params ({})
7675
+ def list_registries(params = {}, options = {})
7676
+ req = build_request(:list_registries, params)
7677
+ req.send_request(options)
7678
+ end
7679
+
7680
+ # Returns a list of schema versions that you have created, with minimal
7681
+ # information. Schema versions in Deleted status will not be included in
7682
+ # the results. Empty results will be returned if there are no schema
7683
+ # versions available.
7684
+ #
7685
+ # @option params [required, Types::SchemaId] :schema_id
7686
+ # This is a wrapper structure to contain schema identity fields. The
7687
+ # structure contains:
7688
+ #
7689
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
7690
+ # Either `SchemaArn` or `SchemaName` and `RegistryName` has to be
7691
+ # provided.
7692
+ #
7693
+ # * SchemaId$SchemaName: The name of the schema. Either `SchemaArn` or
7694
+ # `SchemaName` and `RegistryName` has to be provided.
7695
+ #
7696
+ # @option params [Integer] :max_results
7697
+ # Maximum number of results required per page. If the value is not
7698
+ # supplied, this will be defaulted to 25 per page.
7699
+ #
7700
+ # @option params [String] :next_token
7701
+ # A continuation token, if this is a continuation call.
7702
+ #
7703
+ # @return [Types::ListSchemaVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7704
+ #
7705
+ # * {Types::ListSchemaVersionsResponse#schemas #schemas} => Array&lt;Types::SchemaVersionListItem&gt;
7706
+ # * {Types::ListSchemaVersionsResponse#next_token #next_token} => String
7707
+ #
7708
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7709
+ #
7710
+ # @example Request syntax with placeholder values
7711
+ #
7712
+ # resp = client.list_schema_versions({
7713
+ # schema_id: { # required
7714
+ # schema_arn: "GlueResourceArn",
7715
+ # schema_name: "SchemaRegistryNameString",
7716
+ # registry_name: "SchemaRegistryNameString",
7717
+ # },
7718
+ # max_results: 1,
7719
+ # next_token: "SchemaRegistryTokenString",
7720
+ # })
7721
+ #
7722
+ # @example Response structure
7723
+ #
7724
+ # resp.schemas #=> Array
7725
+ # resp.schemas[0].schema_arn #=> String
7726
+ # resp.schemas[0].schema_version_id #=> String
7727
+ # resp.schemas[0].version_number #=> Integer
7728
+ # resp.schemas[0].status #=> String, one of "AVAILABLE", "PENDING", "FAILURE", "DELETING"
7729
+ # resp.schemas[0].created_time #=> String
7730
+ # resp.next_token #=> String
7731
+ #
7732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListSchemaVersions AWS API Documentation
7733
+ #
7734
+ # @overload list_schema_versions(params = {})
7735
+ # @param [Hash] params ({})
7736
+ def list_schema_versions(params = {}, options = {})
7737
+ req = build_request(:list_schema_versions, params)
7738
+ req.send_request(options)
7739
+ end
7740
+
7741
+ # Returns a list of schemas with minimal details. Schemas in Deleting
7742
+ # status will not be included in the results. Empty results will be
7743
+ # returned if there are no schemas available.
7744
+ #
7745
+ # When the `RegistryId` is not provided, all the schemas across
7746
+ # registries will be part of the API response.
7747
+ #
7748
+ # @option params [Types::RegistryId] :registry_id
7749
+ # A wrapper structure that may contain the registry name and Amazon
7750
+ # Resource Name (ARN).
7751
+ #
7752
+ # @option params [Integer] :max_results
7753
+ # Maximum number of results required per page. If the value is not
7754
+ # supplied, this will be defaulted to 25 per page.
7755
+ #
7756
+ # @option params [String] :next_token
7757
+ # A continuation token, if this is a continuation call.
7758
+ #
7759
+ # @return [Types::ListSchemasResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7760
+ #
7761
+ # * {Types::ListSchemasResponse#schemas #schemas} => Array&lt;Types::SchemaListItem&gt;
7762
+ # * {Types::ListSchemasResponse#next_token #next_token} => String
7763
+ #
7764
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7765
+ #
7766
+ # @example Request syntax with placeholder values
7767
+ #
7768
+ # resp = client.list_schemas({
7769
+ # registry_id: {
7770
+ # registry_name: "SchemaRegistryNameString",
7771
+ # registry_arn: "GlueResourceArn",
7772
+ # },
7773
+ # max_results: 1,
7774
+ # next_token: "SchemaRegistryTokenString",
7775
+ # })
7776
+ #
7777
+ # @example Response structure
7778
+ #
7779
+ # resp.schemas #=> Array
7780
+ # resp.schemas[0].registry_name #=> String
7781
+ # resp.schemas[0].schema_name #=> String
7782
+ # resp.schemas[0].schema_arn #=> String
7783
+ # resp.schemas[0].description #=> String
7784
+ # resp.schemas[0].schema_status #=> String, one of "AVAILABLE", "PENDING", "DELETING"
7785
+ # resp.schemas[0].created_time #=> String
7786
+ # resp.schemas[0].updated_time #=> String
7787
+ # resp.next_token #=> String
7788
+ #
7789
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListSchemas AWS API Documentation
7790
+ #
7791
+ # @overload list_schemas(params = {})
7792
+ # @param [Hash] params ({})
7793
+ def list_schemas(params = {}, options = {})
7794
+ req = build_request(:list_schemas, params)
7795
+ req.send_request(options)
7796
+ end
7797
+
6840
7798
  # Retrieves the names of all trigger resources in this AWS account, or
6841
7799
  # the resources with the specified tag. This operation allows you to see
6842
7800
  # which resources are available in your account, and their names.
@@ -7032,6 +7990,72 @@ module Aws::Glue
7032
7990
  req.send_request(options)
7033
7991
  end
7034
7992
 
7993
+ # Puts the metadata key value pair for a specified schema version ID. A
7994
+ # maximum of 10 key value pairs will be allowed per schema version. They
7995
+ # can be added over one or more calls.
7996
+ #
7997
+ # @option params [Types::SchemaId] :schema_id
7998
+ # The unique ID for the schema.
7999
+ #
8000
+ # @option params [Types::SchemaVersionNumber] :schema_version_number
8001
+ # The version number of the schema.
8002
+ #
8003
+ # @option params [String] :schema_version_id
8004
+ # The unique version ID of the schema version.
8005
+ #
8006
+ # @option params [required, Types::MetadataKeyValuePair] :metadata_key_value
8007
+ # The metadata key's corresponding value.
8008
+ #
8009
+ # @return [Types::PutSchemaVersionMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8010
+ #
8011
+ # * {Types::PutSchemaVersionMetadataResponse#schema_arn #schema_arn} => String
8012
+ # * {Types::PutSchemaVersionMetadataResponse#schema_name #schema_name} => String
8013
+ # * {Types::PutSchemaVersionMetadataResponse#registry_name #registry_name} => String
8014
+ # * {Types::PutSchemaVersionMetadataResponse#latest_version #latest_version} => Boolean
8015
+ # * {Types::PutSchemaVersionMetadataResponse#version_number #version_number} => Integer
8016
+ # * {Types::PutSchemaVersionMetadataResponse#schema_version_id #schema_version_id} => String
8017
+ # * {Types::PutSchemaVersionMetadataResponse#metadata_key #metadata_key} => String
8018
+ # * {Types::PutSchemaVersionMetadataResponse#metadata_value #metadata_value} => String
8019
+ #
8020
+ # @example Request syntax with placeholder values
8021
+ #
8022
+ # resp = client.put_schema_version_metadata({
8023
+ # schema_id: {
8024
+ # schema_arn: "GlueResourceArn",
8025
+ # schema_name: "SchemaRegistryNameString",
8026
+ # registry_name: "SchemaRegistryNameString",
8027
+ # },
8028
+ # schema_version_number: {
8029
+ # latest_version: false,
8030
+ # version_number: 1,
8031
+ # },
8032
+ # schema_version_id: "SchemaVersionIdString",
8033
+ # metadata_key_value: { # required
8034
+ # metadata_key: "MetadataKeyString",
8035
+ # metadata_value: "MetadataValueString",
8036
+ # },
8037
+ # })
8038
+ #
8039
+ # @example Response structure
8040
+ #
8041
+ # resp.schema_arn #=> String
8042
+ # resp.schema_name #=> String
8043
+ # resp.registry_name #=> String
8044
+ # resp.latest_version #=> Boolean
8045
+ # resp.version_number #=> Integer
8046
+ # resp.schema_version_id #=> String
8047
+ # resp.metadata_key #=> String
8048
+ # resp.metadata_value #=> String
8049
+ #
8050
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/PutSchemaVersionMetadata AWS API Documentation
8051
+ #
8052
+ # @overload put_schema_version_metadata(params = {})
8053
+ # @param [Hash] params ({})
8054
+ def put_schema_version_metadata(params = {}, options = {})
8055
+ req = build_request(:put_schema_version_metadata, params)
8056
+ req.send_request(options)
8057
+ end
8058
+
7035
8059
  # Puts the specified workflow run properties for the given workflow run.
7036
8060
  # If a property already exists for the specified run, then it overrides
7037
8061
  # the value otherwise adds the property to existing properties.
@@ -7067,6 +8091,205 @@ module Aws::Glue
7067
8091
  req.send_request(options)
7068
8092
  end
7069
8093
 
8094
+ # Queries for the schema version metadata information.
8095
+ #
8096
+ # @option params [Types::SchemaId] :schema_id
8097
+ # A wrapper structure that may contain the schema name and Amazon
8098
+ # Resource Name (ARN).
8099
+ #
8100
+ # @option params [Types::SchemaVersionNumber] :schema_version_number
8101
+ # The version number of the schema.
8102
+ #
8103
+ # @option params [String] :schema_version_id
8104
+ # The unique version ID of the schema version.
8105
+ #
8106
+ # @option params [Array<Types::MetadataKeyValuePair>] :metadata_list
8107
+ # Search key-value pairs for metadata, if they are not provided all the
8108
+ # metadata information will be fetched.
8109
+ #
8110
+ # @option params [Integer] :max_results
8111
+ # Maximum number of results required per page. If the value is not
8112
+ # supplied, this will be defaulted to 25 per page.
8113
+ #
8114
+ # @option params [String] :next_token
8115
+ # A continuation token, if this is a continuation call.
8116
+ #
8117
+ # @return [Types::QuerySchemaVersionMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8118
+ #
8119
+ # * {Types::QuerySchemaVersionMetadataResponse#metadata_info_map #metadata_info_map} => Hash&lt;String,Types::MetadataInfo&gt;
8120
+ # * {Types::QuerySchemaVersionMetadataResponse#schema_version_id #schema_version_id} => String
8121
+ # * {Types::QuerySchemaVersionMetadataResponse#next_token #next_token} => String
8122
+ #
8123
+ # @example Request syntax with placeholder values
8124
+ #
8125
+ # resp = client.query_schema_version_metadata({
8126
+ # schema_id: {
8127
+ # schema_arn: "GlueResourceArn",
8128
+ # schema_name: "SchemaRegistryNameString",
8129
+ # registry_name: "SchemaRegistryNameString",
8130
+ # },
8131
+ # schema_version_number: {
8132
+ # latest_version: false,
8133
+ # version_number: 1,
8134
+ # },
8135
+ # schema_version_id: "SchemaVersionIdString",
8136
+ # metadata_list: [
8137
+ # {
8138
+ # metadata_key: "MetadataKeyString",
8139
+ # metadata_value: "MetadataValueString",
8140
+ # },
8141
+ # ],
8142
+ # max_results: 1,
8143
+ # next_token: "SchemaRegistryTokenString",
8144
+ # })
8145
+ #
8146
+ # @example Response structure
8147
+ #
8148
+ # resp.metadata_info_map #=> Hash
8149
+ # resp.metadata_info_map["MetadataKeyString"].metadata_value #=> String
8150
+ # resp.metadata_info_map["MetadataKeyString"].created_time #=> String
8151
+ # resp.schema_version_id #=> String
8152
+ # resp.next_token #=> String
8153
+ #
8154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/QuerySchemaVersionMetadata AWS API Documentation
8155
+ #
8156
+ # @overload query_schema_version_metadata(params = {})
8157
+ # @param [Hash] params ({})
8158
+ def query_schema_version_metadata(params = {}, options = {})
8159
+ req = build_request(:query_schema_version_metadata, params)
8160
+ req.send_request(options)
8161
+ end
8162
+
8163
+ # Adds a new version to the existing schema. Returns an error if new
8164
+ # version of schema does not meet the compatibility requirements of the
8165
+ # schema set. This API will not create a new schema set and will return
8166
+ # a 404 error if the schema set is not already present in the Schema
8167
+ # Registry.
8168
+ #
8169
+ # If this is the first schema definition to be registered in the Schema
8170
+ # Registry, this API will store the schema version and return
8171
+ # immediately. Otherwise, this call has the potential to run longer than
8172
+ # other operations due to compatibility modes. You can call the
8173
+ # `GetSchemaVersion` API with the `SchemaVersionId` to check
8174
+ # compatibility modes.
8175
+ #
8176
+ # If the same schema definition is already stored in Schema Registry as
8177
+ # a version, the schema ID of the existing schema is returned to the
8178
+ # caller.
8179
+ #
8180
+ # @option params [required, Types::SchemaId] :schema_id
8181
+ # This is a wrapper structure to contain schema identity fields. The
8182
+ # structure contains:
8183
+ #
8184
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
8185
+ # Either `SchemaArn` or `SchemaName` and `RegistryName` has to be
8186
+ # provided.
8187
+ #
8188
+ # * SchemaId$SchemaName: The name of the schema. Either `SchemaArn` or
8189
+ # `SchemaName` and `RegistryName` has to be provided.
8190
+ #
8191
+ # @option params [required, String] :schema_definition
8192
+ # The schema definition using the `DataFormat` setting for the
8193
+ # `SchemaName`.
8194
+ #
8195
+ # @return [Types::RegisterSchemaVersionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8196
+ #
8197
+ # * {Types::RegisterSchemaVersionResponse#schema_version_id #schema_version_id} => String
8198
+ # * {Types::RegisterSchemaVersionResponse#version_number #version_number} => Integer
8199
+ # * {Types::RegisterSchemaVersionResponse#status #status} => String
8200
+ #
8201
+ # @example Request syntax with placeholder values
8202
+ #
8203
+ # resp = client.register_schema_version({
8204
+ # schema_id: { # required
8205
+ # schema_arn: "GlueResourceArn",
8206
+ # schema_name: "SchemaRegistryNameString",
8207
+ # registry_name: "SchemaRegistryNameString",
8208
+ # },
8209
+ # schema_definition: "SchemaDefinitionString", # required
8210
+ # })
8211
+ #
8212
+ # @example Response structure
8213
+ #
8214
+ # resp.schema_version_id #=> String
8215
+ # resp.version_number #=> Integer
8216
+ # resp.status #=> String, one of "AVAILABLE", "PENDING", "FAILURE", "DELETING"
8217
+ #
8218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/RegisterSchemaVersion AWS API Documentation
8219
+ #
8220
+ # @overload register_schema_version(params = {})
8221
+ # @param [Hash] params ({})
8222
+ def register_schema_version(params = {}, options = {})
8223
+ req = build_request(:register_schema_version, params)
8224
+ req.send_request(options)
8225
+ end
8226
+
8227
+ # Removes a key value pair from the schema version metadata for the
8228
+ # specified schema version ID.
8229
+ #
8230
+ # @option params [Types::SchemaId] :schema_id
8231
+ # A wrapper structure that may contain the schema name and Amazon
8232
+ # Resource Name (ARN).
8233
+ #
8234
+ # @option params [Types::SchemaVersionNumber] :schema_version_number
8235
+ # The version number of the schema.
8236
+ #
8237
+ # @option params [String] :schema_version_id
8238
+ # The unique version ID of the schema version.
8239
+ #
8240
+ # @option params [required, Types::MetadataKeyValuePair] :metadata_key_value
8241
+ # The value of the metadata key.
8242
+ #
8243
+ # @return [Types::RemoveSchemaVersionMetadataResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8244
+ #
8245
+ # * {Types::RemoveSchemaVersionMetadataResponse#schema_arn #schema_arn} => String
8246
+ # * {Types::RemoveSchemaVersionMetadataResponse#schema_name #schema_name} => String
8247
+ # * {Types::RemoveSchemaVersionMetadataResponse#registry_name #registry_name} => String
8248
+ # * {Types::RemoveSchemaVersionMetadataResponse#latest_version #latest_version} => Boolean
8249
+ # * {Types::RemoveSchemaVersionMetadataResponse#version_number #version_number} => Integer
8250
+ # * {Types::RemoveSchemaVersionMetadataResponse#schema_version_id #schema_version_id} => String
8251
+ # * {Types::RemoveSchemaVersionMetadataResponse#metadata_key #metadata_key} => String
8252
+ # * {Types::RemoveSchemaVersionMetadataResponse#metadata_value #metadata_value} => String
8253
+ #
8254
+ # @example Request syntax with placeholder values
8255
+ #
8256
+ # resp = client.remove_schema_version_metadata({
8257
+ # schema_id: {
8258
+ # schema_arn: "GlueResourceArn",
8259
+ # schema_name: "SchemaRegistryNameString",
8260
+ # registry_name: "SchemaRegistryNameString",
8261
+ # },
8262
+ # schema_version_number: {
8263
+ # latest_version: false,
8264
+ # version_number: 1,
8265
+ # },
8266
+ # schema_version_id: "SchemaVersionIdString",
8267
+ # metadata_key_value: { # required
8268
+ # metadata_key: "MetadataKeyString",
8269
+ # metadata_value: "MetadataValueString",
8270
+ # },
8271
+ # })
8272
+ #
8273
+ # @example Response structure
8274
+ #
8275
+ # resp.schema_arn #=> String
8276
+ # resp.schema_name #=> String
8277
+ # resp.registry_name #=> String
8278
+ # resp.latest_version #=> Boolean
8279
+ # resp.version_number #=> Integer
8280
+ # resp.schema_version_id #=> String
8281
+ # resp.metadata_key #=> String
8282
+ # resp.metadata_value #=> String
8283
+ #
8284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/RemoveSchemaVersionMetadata AWS API Documentation
8285
+ #
8286
+ # @overload remove_schema_version_metadata(params = {})
8287
+ # @param [Hash] params ({})
8288
+ def remove_schema_version_metadata(params = {}, options = {})
8289
+ req = build_request(:remove_schema_version_metadata, params)
8290
+ req.send_request(options)
8291
+ end
8292
+
7070
8293
  # Resets a bookmark entry.
7071
8294
  #
7072
8295
  # @option params [required, String] :job_name
@@ -7275,6 +8498,11 @@ module Aws::Glue
7275
8498
  # resp.table_list[0].storage_descriptor.skewed_info.skewed_column_value_location_maps #=> Hash
7276
8499
  # resp.table_list[0].storage_descriptor.skewed_info.skewed_column_value_location_maps["ColumnValuesString"] #=> String
7277
8500
  # resp.table_list[0].storage_descriptor.stored_as_sub_directories #=> Boolean
8501
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.schema_arn #=> String
8502
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.schema_name #=> String
8503
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_id.registry_name #=> String
8504
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_version_id #=> String
8505
+ # resp.table_list[0].storage_descriptor.schema_reference.schema_version_number #=> Integer
7278
8506
  # resp.table_list[0].partition_keys #=> Array
7279
8507
  # resp.table_list[0].partition_keys[0].name #=> String
7280
8508
  # resp.table_list[0].partition_keys[0].type #=> String
@@ -7966,6 +9194,9 @@ module Aws::Glue
7966
9194
 
7967
9195
  # Creates or updates partition statistics of columns.
7968
9196
  #
9197
+ # The Identity and Access Management (IAM) permission required for this
9198
+ # operation is `UpdatePartition`.
9199
+ #
7969
9200
  # @option params [String] :catalog_id
7970
9201
  # The ID of the Data Catalog where the partitions in question reside. If
7971
9202
  # none is supplied, the AWS account ID is used by default.
@@ -8100,6 +9331,9 @@ module Aws::Glue
8100
9331
 
8101
9332
  # Creates or updates table statistics of columns.
8102
9333
  #
9334
+ # The Identity and Access Management (IAM) permission required for this
9335
+ # operation is `UpdateTable`.
9336
+ #
8103
9337
  # @option params [String] :catalog_id
8104
9338
  # The ID of the Data Catalog where the partitions in question reside. If
8105
9339
  # none is supplied, the AWS account ID is used by default.
@@ -8313,6 +9547,10 @@ module Aws::Glue
8313
9547
  # @option params [Types::SchemaChangePolicy] :schema_change_policy
8314
9548
  # The policy for the crawler's update and deletion behavior.
8315
9549
  #
9550
+ # @option params [Types::RecrawlPolicy] :recrawl_policy
9551
+ # A policy that specifies whether to crawl the entire dataset again, or
9552
+ # to crawl only folders that were added since the last crawler run.
9553
+ #
8316
9554
  # @option params [String] :configuration
8317
9555
  # Crawler configuration information. This versioned JSON string allows
8318
9556
  # users to specify aspects of a crawler's behavior. For more
@@ -8378,6 +9616,9 @@ module Aws::Glue
8378
9616
  # update_behavior: "LOG", # accepts LOG, UPDATE_IN_DATABASE
8379
9617
  # delete_behavior: "LOG", # accepts LOG, DELETE_FROM_DATABASE, DEPRECATE_IN_DATABASE
8380
9618
  # },
9619
+ # recrawl_policy: {
9620
+ # recrawl_behavior: "CRAWL_EVERYTHING", # accepts CRAWL_EVERYTHING, CRAWL_NEW_FOLDERS_ONLY
9621
+ # },
8381
9622
  # configuration: "CrawlerConfiguration",
8382
9623
  # crawler_security_configuration: "CrawlerSecurityConfiguration",
8383
9624
  # })
@@ -8805,6 +10046,15 @@ module Aws::Glue
8805
10046
  # },
8806
10047
  # },
8807
10048
  # stored_as_sub_directories: false,
10049
+ # schema_reference: {
10050
+ # schema_id: {
10051
+ # schema_arn: "GlueResourceArn",
10052
+ # schema_name: "SchemaRegistryNameString",
10053
+ # registry_name: "SchemaRegistryNameString",
10054
+ # },
10055
+ # schema_version_id: "SchemaVersionIdString",
10056
+ # schema_version_number: 1,
10057
+ # },
8808
10058
  # },
8809
10059
  # parameters: {
8810
10060
  # "KeyString" => "ParametersMapValue",
@@ -8822,6 +10072,119 @@ module Aws::Glue
8822
10072
  req.send_request(options)
8823
10073
  end
8824
10074
 
10075
+ # Updates an existing registry which is used to hold a collection of
10076
+ # schemas. The updated properties relate to the registry, and do not
10077
+ # modify any of the schemas within the registry.
10078
+ #
10079
+ # @option params [required, Types::RegistryId] :registry_id
10080
+ # This is a wrapper structure that may contain the registry name and
10081
+ # Amazon Resource Name (ARN).
10082
+ #
10083
+ # @option params [required, String] :description
10084
+ # A description of the registry. If description is not provided, this
10085
+ # field will not be updated.
10086
+ #
10087
+ # @return [Types::UpdateRegistryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10088
+ #
10089
+ # * {Types::UpdateRegistryResponse#registry_name #registry_name} => String
10090
+ # * {Types::UpdateRegistryResponse#registry_arn #registry_arn} => String
10091
+ #
10092
+ # @example Request syntax with placeholder values
10093
+ #
10094
+ # resp = client.update_registry({
10095
+ # registry_id: { # required
10096
+ # registry_name: "SchemaRegistryNameString",
10097
+ # registry_arn: "GlueResourceArn",
10098
+ # },
10099
+ # description: "DescriptionString", # required
10100
+ # })
10101
+ #
10102
+ # @example Response structure
10103
+ #
10104
+ # resp.registry_name #=> String
10105
+ # resp.registry_arn #=> String
10106
+ #
10107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateRegistry AWS API Documentation
10108
+ #
10109
+ # @overload update_registry(params = {})
10110
+ # @param [Hash] params ({})
10111
+ def update_registry(params = {}, options = {})
10112
+ req = build_request(:update_registry, params)
10113
+ req.send_request(options)
10114
+ end
10115
+
10116
+ # Updates the description, compatibility setting, or version checkpoint
10117
+ # for a schema set.
10118
+ #
10119
+ # For updating the compatibility setting, the call will not validate
10120
+ # compatibility for the entire set of schema versions with the new
10121
+ # compatibility setting. If the value for `Compatibility` is provided,
10122
+ # the `VersionNumber` (a checkpoint) is also required. The API will
10123
+ # validate the checkpoint version number for consistency.
10124
+ #
10125
+ # If the value for the `VersionNumber` (checkpoint) is provided,
10126
+ # `Compatibility` is optional and this can be used to set/reset a
10127
+ # checkpoint for the schema.
10128
+ #
10129
+ # This update will happen only if the schema is in the AVAILABLE state.
10130
+ #
10131
+ # @option params [required, Types::SchemaId] :schema_id
10132
+ # This is a wrapper structure to contain schema identity fields. The
10133
+ # structure contains:
10134
+ #
10135
+ # * SchemaId$SchemaArn: The Amazon Resource Name (ARN) of the schema.
10136
+ # One of `SchemaArn` or `SchemaName` has to be provided.
10137
+ #
10138
+ # * SchemaId$SchemaName: The name of the schema. One of `SchemaArn` or
10139
+ # `SchemaName` has to be provided.
10140
+ #
10141
+ # @option params [Types::SchemaVersionNumber] :schema_version_number
10142
+ # Version number required for check pointing. One of `VersionNumber` or
10143
+ # `Compatibility` has to be provided.
10144
+ #
10145
+ # @option params [String] :compatibility
10146
+ # The new compatibility setting for the schema.
10147
+ #
10148
+ # @option params [String] :description
10149
+ # The new description for the schema.
10150
+ #
10151
+ # @return [Types::UpdateSchemaResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10152
+ #
10153
+ # * {Types::UpdateSchemaResponse#schema_arn #schema_arn} => String
10154
+ # * {Types::UpdateSchemaResponse#schema_name #schema_name} => String
10155
+ # * {Types::UpdateSchemaResponse#registry_name #registry_name} => String
10156
+ #
10157
+ # @example Request syntax with placeholder values
10158
+ #
10159
+ # resp = client.update_schema({
10160
+ # schema_id: { # required
10161
+ # schema_arn: "GlueResourceArn",
10162
+ # schema_name: "SchemaRegistryNameString",
10163
+ # registry_name: "SchemaRegistryNameString",
10164
+ # },
10165
+ # schema_version_number: {
10166
+ # latest_version: false,
10167
+ # version_number: 1,
10168
+ # },
10169
+ # compatibility: "NONE", # accepts NONE, DISABLED, BACKWARD, BACKWARD_ALL, FORWARD, FORWARD_ALL, FULL, FULL_ALL
10170
+ # description: "DescriptionString",
10171
+ # })
10172
+ #
10173
+ # @example Response structure
10174
+ #
10175
+ # resp.schema_arn #=> String
10176
+ # resp.schema_name #=> String
10177
+ # resp.registry_name #=> String
10178
+ #
10179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateSchema AWS API Documentation
10180
+ #
10181
+ # @overload update_schema(params = {})
10182
+ # @param [Hash] params ({})
10183
+ def update_schema(params = {}, options = {})
10184
+ req = build_request(:update_schema, params)
10185
+ req.send_request(options)
10186
+ end
10187
+
8825
10188
  # Updates a metadata table in the Data Catalog.
8826
10189
  #
8827
10190
  # @option params [String] :catalog_id
@@ -8896,6 +10259,15 @@ module Aws::Glue
8896
10259
  # },
8897
10260
  # },
8898
10261
  # stored_as_sub_directories: false,
10262
+ # schema_reference: {
10263
+ # schema_id: {
10264
+ # schema_arn: "GlueResourceArn",
10265
+ # schema_name: "SchemaRegistryNameString",
10266
+ # registry_name: "SchemaRegistryNameString",
10267
+ # },
10268
+ # schema_version_id: "SchemaVersionIdString",
10269
+ # schema_version_number: 1,
10270
+ # },
8899
10271
  # },
8900
10272
  # partition_keys: [
8901
10273
  # {
@@ -9122,7 +10494,7 @@ module Aws::Glue
9122
10494
  params: params,
9123
10495
  config: config)
9124
10496
  context[:gem_name] = 'aws-sdk-glue'
9125
- context[:gem_version] = '1.74.0'
10497
+ context[:gem_version] = '1.79.0'
9126
10498
  Seahorse::Client::Request.new(handlers, context)
9127
10499
  end
9128
10500