aws-sdk-glue 1.203.0 → 1.205.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.
@@ -2863,6 +2863,80 @@ module Aws::Glue
2863
2863
  req.send_request(options)
2864
2864
  end
2865
2865
 
2866
+ # Creates a new catalog in the Glue Data Catalog.
2867
+ #
2868
+ # @option params [required, String] :name
2869
+ # The name of the catalog to create.
2870
+ #
2871
+ # @option params [required, Types::CatalogInput] :catalog_input
2872
+ # A `CatalogInput` object that defines the metadata for the catalog.
2873
+ #
2874
+ # @option params [Hash<String,String>] :tags
2875
+ # A map array of key-value pairs, not more than 50 pairs. Each key is a
2876
+ # UTF-8 string, not less than 1 or more than 128 bytes long. Each value
2877
+ # is a UTF-8 string, not more than 256 bytes long. The tags you assign
2878
+ # to the catalog.
2879
+ #
2880
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2881
+ #
2882
+ # @example Request syntax with placeholder values
2883
+ #
2884
+ # resp = client.create_catalog({
2885
+ # name: "CatalogNameString", # required
2886
+ # catalog_input: { # required
2887
+ # description: "DescriptionString",
2888
+ # federated_catalog: {
2889
+ # identifier: "FederationIdentifier",
2890
+ # connection_name: "NameString",
2891
+ # },
2892
+ # parameters: {
2893
+ # "KeyString" => "ParametersMapValue",
2894
+ # },
2895
+ # target_redshift_catalog: {
2896
+ # catalog_arn: "ResourceArnString", # required
2897
+ # },
2898
+ # catalog_properties: {
2899
+ # data_lake_access_properties: {
2900
+ # data_lake_access: false,
2901
+ # data_transfer_role: "IAMRoleArn",
2902
+ # kms_key: "ResourceArnString",
2903
+ # catalog_type: "NameString",
2904
+ # },
2905
+ # custom_properties: {
2906
+ # "KeyString" => "ParametersMapValue",
2907
+ # },
2908
+ # },
2909
+ # create_table_default_permissions: [
2910
+ # {
2911
+ # principal: {
2912
+ # data_lake_principal_identifier: "DataLakePrincipalString",
2913
+ # },
2914
+ # permissions: ["ALL"], # accepts ALL, SELECT, ALTER, DROP, DELETE, INSERT, CREATE_DATABASE, CREATE_TABLE, DATA_LOCATION_ACCESS
2915
+ # },
2916
+ # ],
2917
+ # create_database_default_permissions: [
2918
+ # {
2919
+ # principal: {
2920
+ # data_lake_principal_identifier: "DataLakePrincipalString",
2921
+ # },
2922
+ # permissions: ["ALL"], # accepts ALL, SELECT, ALTER, DROP, DELETE, INSERT, CREATE_DATABASE, CREATE_TABLE, DATA_LOCATION_ACCESS
2923
+ # },
2924
+ # ],
2925
+ # },
2926
+ # tags: {
2927
+ # "TagKey" => "TagValue",
2928
+ # },
2929
+ # })
2930
+ #
2931
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateCatalog AWS API Documentation
2932
+ #
2933
+ # @overload create_catalog(params = {})
2934
+ # @param [Hash] params ({})
2935
+ def create_catalog(params = {}, options = {})
2936
+ req = build_request(:create_catalog, params)
2937
+ req.send_request(options)
2938
+ end
2939
+
2866
2940
  # Creates a classifier in the user's account. This can be a
2867
2941
  # `GrokClassifier`, an `XMLClassifier`, a `JsonClassifier`, or a
2868
2942
  # `CsvClassifier`, depending on which field of the request is present.
@@ -3006,21 +3080,27 @@ module Aws::Glue
3006
3080
  # connection_input: { # required
3007
3081
  # name: "NameString", # required
3008
3082
  # description: "DescriptionString",
3009
- # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA
3083
+ # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA, GOOGLEADS, GOOGLESHEETS, GOOGLEANALYTICS4, SERVICENOW, MARKETO, SAPODATA, ZENDESK, JIRACLOUD, NETSUITEERP, HUBSPOT, FACEBOOKADS, INSTAGRAMADS, ZOHOCRM, SALESFORCEPARDOT, SALESFORCEMARKETINGCLOUD, SLACK, STRIPE, INTERCOM, SNAPCHATADS
3010
3084
  # match_criteria: ["NameString"],
3011
3085
  # connection_properties: { # required
3012
3086
  # "HOST" => "ValueString",
3013
3087
  # },
3088
+ # spark_properties: {
3089
+ # "PropertyKey" => "PropertyValue",
3090
+ # },
3014
3091
  # athena_properties: {
3015
3092
  # "PropertyKey" => "PropertyValue",
3016
3093
  # },
3094
+ # python_properties: {
3095
+ # "PropertyKey" => "PropertyValue",
3096
+ # },
3017
3097
  # physical_connection_requirements: {
3018
3098
  # subnet_id: "NameString",
3019
3099
  # security_group_id_list: ["NameString"],
3020
3100
  # availability_zone: "NameString",
3021
3101
  # },
3022
3102
  # authentication_configuration: {
3023
- # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM
3103
+ # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM, IAM
3024
3104
  # o_auth_2_properties: {
3025
3105
  # o_auth_2_grant_type: "AUTHORIZATION_CODE", # accepts AUTHORIZATION_CODE, CLIENT_CREDENTIALS, JWT_BEARER
3026
3106
  # o_auth_2_client_application: {
@@ -3035,10 +3115,25 @@ module Aws::Glue
3035
3115
  # authorization_code: "AuthorizationCode",
3036
3116
  # redirect_uri: "RedirectUri",
3037
3117
  # },
3118
+ # o_auth_2_credentials: {
3119
+ # user_managed_client_application_client_secret: "UserManagedClientApplicationClientSecret",
3120
+ # access_token: "AccessToken",
3121
+ # refresh_token: "RefreshToken",
3122
+ # jwt_token: "JwtToken",
3123
+ # },
3038
3124
  # },
3039
3125
  # secret_arn: "SecretArn",
3126
+ # kms_key_arn: "KmsKeyArn",
3127
+ # basic_authentication_credentials: {
3128
+ # username: "Username",
3129
+ # password: "Password",
3130
+ # },
3131
+ # custom_authentication_credentials: {
3132
+ # "CredentialKey" => "CredentialValue",
3133
+ # },
3040
3134
  # },
3041
3135
  # validate_credentials: false,
3136
+ # validate_for_compute_environments: ["SPARK"], # accepts SPARK, ATHENA, PYTHON
3042
3137
  # },
3043
3138
  # tags: {
3044
3139
  # "TagKey" => "TagValue",
@@ -3618,6 +3713,211 @@ module Aws::Glue
3618
3713
  req.send_request(options)
3619
3714
  end
3620
3715
 
3716
+ # Creates a Zero-ETL integration in the caller's account between two
3717
+ # resources with Amazon Resource Names (ARNs): the `SourceArn` and
3718
+ # `TargetArn`.
3719
+ #
3720
+ # @option params [required, String] :integration_name
3721
+ # A unique name for an integration in Glue.
3722
+ #
3723
+ # @option params [required, String] :source_arn
3724
+ # The ARN of the source resource for the integration.
3725
+ #
3726
+ # @option params [required, String] :target_arn
3727
+ # The ARN of the target resource for the integration.
3728
+ #
3729
+ # @option params [String] :description
3730
+ # A description of the integration.
3731
+ #
3732
+ # @option params [String] :data_filter
3733
+ # Selects source tables for the integration using Maxwell filter syntax.
3734
+ #
3735
+ # @option params [String] :kms_key_id
3736
+ # The ARN of a KMS key used for encrypting the channel.
3737
+ #
3738
+ # @option params [Hash<String,String>] :additional_encryption_context
3739
+ # An optional set of non-secret key–value pairs that contains additional
3740
+ # contextual information for encryption. This can only be provided if
3741
+ # `KMSKeyId` is provided.
3742
+ #
3743
+ # @option params [Array<Types::Tag>] :tags
3744
+ # Metadata assigned to the resource consisting of a list of key-value
3745
+ # pairs.
3746
+ #
3747
+ # @return [Types::CreateIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3748
+ #
3749
+ # * {Types::CreateIntegrationResponse#source_arn #source_arn} => String
3750
+ # * {Types::CreateIntegrationResponse#target_arn #target_arn} => String
3751
+ # * {Types::CreateIntegrationResponse#integration_name #integration_name} => String
3752
+ # * {Types::CreateIntegrationResponse#description #description} => String
3753
+ # * {Types::CreateIntegrationResponse#integration_arn #integration_arn} => String
3754
+ # * {Types::CreateIntegrationResponse#kms_key_id #kms_key_id} => String
3755
+ # * {Types::CreateIntegrationResponse#additional_encryption_context #additional_encryption_context} => Hash&lt;String,String&gt;
3756
+ # * {Types::CreateIntegrationResponse#tags #tags} => Array&lt;Types::Tag&gt;
3757
+ # * {Types::CreateIntegrationResponse#status #status} => String
3758
+ # * {Types::CreateIntegrationResponse#create_time #create_time} => Time
3759
+ # * {Types::CreateIntegrationResponse#errors #errors} => Array&lt;Types::IntegrationError&gt;
3760
+ # * {Types::CreateIntegrationResponse#data_filter #data_filter} => String
3761
+ #
3762
+ # @example Request syntax with placeholder values
3763
+ #
3764
+ # resp = client.create_integration({
3765
+ # integration_name: "String128", # required
3766
+ # source_arn: "String128", # required
3767
+ # target_arn: "String128", # required
3768
+ # description: "IntegrationDescription",
3769
+ # data_filter: "String2048",
3770
+ # kms_key_id: "String2048",
3771
+ # additional_encryption_context: {
3772
+ # "IntegrationString" => "IntegrationString",
3773
+ # },
3774
+ # tags: [
3775
+ # {
3776
+ # key: "TagKey",
3777
+ # value: "TagValue",
3778
+ # },
3779
+ # ],
3780
+ # })
3781
+ #
3782
+ # @example Response structure
3783
+ #
3784
+ # resp.source_arn #=> String
3785
+ # resp.target_arn #=> String
3786
+ # resp.integration_name #=> String
3787
+ # resp.description #=> String
3788
+ # resp.integration_arn #=> String
3789
+ # resp.kms_key_id #=> String
3790
+ # resp.additional_encryption_context #=> Hash
3791
+ # resp.additional_encryption_context["IntegrationString"] #=> String
3792
+ # resp.tags #=> Array
3793
+ # resp.tags[0].key #=> String
3794
+ # resp.tags[0].value #=> String
3795
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "MODIFYING", "FAILED", "DELETING", "SYNCING", "NEEDS_ATTENTION"
3796
+ # resp.create_time #=> Time
3797
+ # resp.errors #=> Array
3798
+ # resp.errors[0].error_code #=> String
3799
+ # resp.errors[0].error_message #=> String
3800
+ # resp.data_filter #=> String
3801
+ #
3802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateIntegration AWS API Documentation
3803
+ #
3804
+ # @overload create_integration(params = {})
3805
+ # @param [Hash] params ({})
3806
+ def create_integration(params = {}, options = {})
3807
+ req = build_request(:create_integration, params)
3808
+ req.send_request(options)
3809
+ end
3810
+
3811
+ # This API can be used for setting up the `ResourceProperty` of the Glue
3812
+ # connection (for the source) or Glue database ARN (for the target).
3813
+ # These properties can include the role to access the connection or
3814
+ # database. To set both source and target properties the same API needs
3815
+ # to be invoked with the Glue connection ARN as `ResourceArn` with
3816
+ # `SourceProcessingProperties` and the Glue database ARN as
3817
+ # `ResourceArn` with `TargetProcessingProperties` respectively.
3818
+ #
3819
+ # @option params [required, String] :resource_arn
3820
+ # The connection ARN of the source, or the database ARN of the target.
3821
+ #
3822
+ # @option params [Types::SourceProcessingProperties] :source_processing_properties
3823
+ # The resource properties associated with the integration source.
3824
+ #
3825
+ # @option params [Types::TargetProcessingProperties] :target_processing_properties
3826
+ # The resource properties associated with the integration target.
3827
+ #
3828
+ # @return [Types::CreateIntegrationResourcePropertyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3829
+ #
3830
+ # * {Types::CreateIntegrationResourcePropertyResponse#resource_arn #resource_arn} => String
3831
+ # * {Types::CreateIntegrationResourcePropertyResponse#source_processing_properties #source_processing_properties} => Types::SourceProcessingProperties
3832
+ # * {Types::CreateIntegrationResourcePropertyResponse#target_processing_properties #target_processing_properties} => Types::TargetProcessingProperties
3833
+ #
3834
+ # @example Request syntax with placeholder values
3835
+ #
3836
+ # resp = client.create_integration_resource_property({
3837
+ # resource_arn: "String128", # required
3838
+ # source_processing_properties: {
3839
+ # role_arn: "String128",
3840
+ # },
3841
+ # target_processing_properties: {
3842
+ # role_arn: "String128",
3843
+ # kms_arn: "String2048",
3844
+ # connection_name: "String128",
3845
+ # event_bus_arn: "String2048",
3846
+ # },
3847
+ # })
3848
+ #
3849
+ # @example Response structure
3850
+ #
3851
+ # resp.resource_arn #=> String
3852
+ # resp.source_processing_properties.role_arn #=> String
3853
+ # resp.target_processing_properties.role_arn #=> String
3854
+ # resp.target_processing_properties.kms_arn #=> String
3855
+ # resp.target_processing_properties.connection_name #=> String
3856
+ # resp.target_processing_properties.event_bus_arn #=> String
3857
+ #
3858
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateIntegrationResourceProperty AWS API Documentation
3859
+ #
3860
+ # @overload create_integration_resource_property(params = {})
3861
+ # @param [Hash] params ({})
3862
+ def create_integration_resource_property(params = {}, options = {})
3863
+ req = build_request(:create_integration_resource_property, params)
3864
+ req.send_request(options)
3865
+ end
3866
+
3867
+ # This API is used to provide optional override properties for the the
3868
+ # tables that need to be replicated. These properties can include
3869
+ # properties for filtering and partitioning for the source and target
3870
+ # tables. To set both source and target properties the same API need to
3871
+ # be invoked with the Glue connection ARN as `ResourceArn` with
3872
+ # `SourceTableConfig`, and the Glue database ARN as `ResourceArn` with
3873
+ # `TargetTableConfig` respectively.
3874
+ #
3875
+ # @option params [required, String] :resource_arn
3876
+ # The connection ARN of the source, or the database ARN of the target.
3877
+ #
3878
+ # @option params [required, String] :table_name
3879
+ # The name of the table to be replicated.
3880
+ #
3881
+ # @option params [Types::SourceTableConfig] :source_table_config
3882
+ # A structure for the source table configuration.
3883
+ #
3884
+ # @option params [Types::TargetTableConfig] :target_table_config
3885
+ # A structure for the target table configuration.
3886
+ #
3887
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3888
+ #
3889
+ # @example Request syntax with placeholder values
3890
+ #
3891
+ # resp = client.create_integration_table_properties({
3892
+ # resource_arn: "String128", # required
3893
+ # table_name: "String128", # required
3894
+ # source_table_config: {
3895
+ # fields: ["String128"],
3896
+ # filter_predicate: "String128",
3897
+ # primary_key: ["String128"],
3898
+ # record_update_field: "String128",
3899
+ # },
3900
+ # target_table_config: {
3901
+ # unnest_spec: "TOPLEVEL", # accepts TOPLEVEL, FULL, NOUNNEST
3902
+ # partition_spec: [
3903
+ # {
3904
+ # field_name: "String128",
3905
+ # function_spec: "String128",
3906
+ # },
3907
+ # ],
3908
+ # target_table_name: "String128",
3909
+ # },
3910
+ # })
3911
+ #
3912
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/CreateIntegrationTableProperties AWS API Documentation
3913
+ #
3914
+ # @overload create_integration_table_properties(params = {})
3915
+ # @param [Hash] params ({})
3916
+ def create_integration_table_properties(params = {}, options = {})
3917
+ req = build_request(:create_integration_table_properties, params)
3918
+ req.send_request(options)
3919
+ end
3920
+
3621
3921
  # Creates a new job definition.
3622
3922
  #
3623
3923
  # @option params [required, String] :name
@@ -3806,45 +4106,45 @@ module Aws::Glue
3806
4106
  # Accepts the value Z.2X for Ray jobs.
3807
4107
  #
3808
4108
  # * For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPUs, 16
3809
- # GB of memory) with 84GB disk (approximately 34GB free), and provides
3810
- # 1 executor per worker. We recommend this worker type for workloads
3811
- # such as data transforms, joins, and queries, to offers a scalable
3812
- # and cost effective way to run most jobs.
4109
+ # GB of memory) with 94GB disk, and provides 1 executor per worker. We
4110
+ # recommend this worker type for workloads such as data transforms,
4111
+ # joins, and queries, to offers a scalable and cost effective way to
4112
+ # run most jobs.
3813
4113
  #
3814
4114
  # * For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPUs, 32
3815
- # GB of memory) with 128GB disk (approximately 77GB free), and
3816
- # provides 1 executor per worker. We recommend this worker type for
3817
- # workloads such as data transforms, joins, and queries, to offers a
3818
- # scalable and cost effective way to run most jobs.
4115
+ # GB of memory) with 138GB disk, and provides 1 executor per worker.
4116
+ # We recommend this worker type for workloads such as data transforms,
4117
+ # joins, and queries, to offers a scalable and cost effective way to
4118
+ # run most jobs.
3819
4119
  #
3820
4120
  # * For the `G.4X` worker type, each worker maps to 4 DPU (16 vCPUs, 64
3821
- # GB of memory) with 256GB disk (approximately 235GB free), and
3822
- # provides 1 executor per worker. We recommend this worker type for
3823
- # jobs whose workloads contain your most demanding transforms,
3824
- # aggregations, joins, and queries. This worker type is available only
3825
- # for Glue version 3.0 or later Spark ETL jobs in the following Amazon
3826
- # Web Services Regions: US East (Ohio), US East (N. Virginia), US West
3827
- # (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia
3828
- # Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe
3829
- # (Ireland), and Europe (Stockholm).
4121
+ # GB of memory) with 256GB disk, and provides 1 executor per worker.
4122
+ # We recommend this worker type for jobs whose workloads contain your
4123
+ # most demanding transforms, aggregations, joins, and queries. This
4124
+ # worker type is available only for Glue version 3.0 or later Spark
4125
+ # ETL jobs in the following Amazon Web Services Regions: US East
4126
+ # (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific
4127
+ # (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada
4128
+ # (Central), Europe (Frankfurt), Europe (Ireland), and Europe
4129
+ # (Stockholm).
3830
4130
  #
3831
4131
  # * For the `G.8X` worker type, each worker maps to 8 DPU (32 vCPUs, 128
3832
- # GB of memory) with 512GB disk (approximately 487GB free), and
3833
- # provides 1 executor per worker. We recommend this worker type for
3834
- # jobs whose workloads contain your most demanding transforms,
3835
- # aggregations, joins, and queries. This worker type is available only
3836
- # for Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web
3837
- # Services Regions as supported for the `G.4X` worker type.
4132
+ # GB of memory) with 512GB disk, and provides 1 executor per worker.
4133
+ # We recommend this worker type for jobs whose workloads contain your
4134
+ # most demanding transforms, aggregations, joins, and queries. This
4135
+ # worker type is available only for Glue version 3.0 or later Spark
4136
+ # ETL jobs, in the same Amazon Web Services Regions as supported for
4137
+ # the `G.4X` worker type.
3838
4138
  #
3839
4139
  # * For the `G.025X` worker type, each worker maps to 0.25 DPU (2 vCPUs,
3840
- # 4 GB of memory) with 84GB disk (approximately 34GB free), and
3841
- # provides 1 executor per worker. We recommend this worker type for
3842
- # low volume streaming jobs. This worker type is only available for
3843
- # Glue version 3.0 streaming jobs.
4140
+ # 4 GB of memory) with 84GB disk, and provides 1 executor per worker.
4141
+ # We recommend this worker type for low volume streaming jobs. This
4142
+ # worker type is only available for Glue version 3.0 or later
4143
+ # streaming jobs.
3844
4144
  #
3845
4145
  # * For the `Z.2X` worker type, each worker maps to 2 M-DPU (8vCPUs, 64
3846
- # GB of memory) with 128 GB disk (approximately 120GB free), and
3847
- # provides up to 8 Ray workers based on the autoscaler.
4146
+ # GB of memory) with 128 GB disk, and provides up to 8 Ray workers
4147
+ # based on the autoscaler.
3848
4148
  #
3849
4149
  # @option params [Hash<String,Types::CodeGenConfigurationNode>] :code_gen_configuration_nodes
3850
4150
  # The representation of a directed acyclic graph on which both the Glue
@@ -4537,6 +4837,10 @@ module Aws::Glue
4537
4837
  # job_bookmarks_encryption_mode: "DISABLED", # accepts DISABLED, CSE-KMS
4538
4838
  # kms_key_arn: "KmsKeyArn",
4539
4839
  # },
4840
+ # data_quality_encryption: {
4841
+ # data_quality_encryption_mode: "DISABLED", # accepts DISABLED, SSE-KMS
4842
+ # kms_key_arn: "KmsKeyArn",
4843
+ # },
4540
4844
  # },
4541
4845
  # })
4542
4846
  #
@@ -4599,39 +4903,39 @@ module Aws::Glue
4599
4903
  # the value Z.2X for Ray notebooks.
4600
4904
  #
4601
4905
  # * For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPUs, 16
4602
- # GB of memory) with 84GB disk (approximately 34GB free), and provides
4603
- # 1 executor per worker. We recommend this worker type for workloads
4604
- # such as data transforms, joins, and queries, to offers a scalable
4605
- # and cost effective way to run most jobs.
4906
+ # GB of memory) with 94GB disk, and provides 1 executor per worker. We
4907
+ # recommend this worker type for workloads such as data transforms,
4908
+ # joins, and queries, to offers a scalable and cost effective way to
4909
+ # run most jobs.
4606
4910
  #
4607
4911
  # * For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPUs, 32
4608
- # GB of memory) with 128GB disk (approximately 77GB free), and
4609
- # provides 1 executor per worker. We recommend this worker type for
4610
- # workloads such as data transforms, joins, and queries, to offers a
4611
- # scalable and cost effective way to run most jobs.
4912
+ # GB of memory) with 138GB disk, and provides 1 executor per worker.
4913
+ # We recommend this worker type for workloads such as data transforms,
4914
+ # joins, and queries, to offers a scalable and cost effective way to
4915
+ # run most jobs.
4612
4916
  #
4613
4917
  # * For the `G.4X` worker type, each worker maps to 4 DPU (16 vCPUs, 64
4614
- # GB of memory) with 256GB disk (approximately 235GB free), and
4615
- # provides 1 executor per worker. We recommend this worker type for
4616
- # jobs whose workloads contain your most demanding transforms,
4617
- # aggregations, joins, and queries. This worker type is available only
4618
- # for Glue version 3.0 or later Spark ETL jobs in the following Amazon
4619
- # Web Services Regions: US East (Ohio), US East (N. Virginia), US West
4620
- # (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia
4621
- # Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe
4622
- # (Ireland), and Europe (Stockholm).
4918
+ # GB of memory) with 256GB disk, and provides 1 executor per worker.
4919
+ # We recommend this worker type for jobs whose workloads contain your
4920
+ # most demanding transforms, aggregations, joins, and queries. This
4921
+ # worker type is available only for Glue version 3.0 or later Spark
4922
+ # ETL jobs in the following Amazon Web Services Regions: US East
4923
+ # (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific
4924
+ # (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada
4925
+ # (Central), Europe (Frankfurt), Europe (Ireland), and Europe
4926
+ # (Stockholm).
4623
4927
  #
4624
4928
  # * For the `G.8X` worker type, each worker maps to 8 DPU (32 vCPUs, 128
4625
- # GB of memory) with 512GB disk (approximately 487GB free), and
4626
- # provides 1 executor per worker. We recommend this worker type for
4627
- # jobs whose workloads contain your most demanding transforms,
4628
- # aggregations, joins, and queries. This worker type is available only
4629
- # for Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web
4630
- # Services Regions as supported for the `G.4X` worker type.
4929
+ # GB of memory) with 512GB disk, and provides 1 executor per worker.
4930
+ # We recommend this worker type for jobs whose workloads contain your
4931
+ # most demanding transforms, aggregations, joins, and queries. This
4932
+ # worker type is available only for Glue version 3.0 or later Spark
4933
+ # ETL jobs, in the same Amazon Web Services Regions as supported for
4934
+ # the `G.4X` worker type.
4631
4935
  #
4632
4936
  # * For the `Z.2X` worker type, each worker maps to 2 M-DPU (8vCPUs, 64
4633
- # GB of memory) with 128 GB disk (approximately 120GB free), and
4634
- # provides up to 8 Ray workers based on the autoscaler.
4937
+ # GB of memory) with 128 GB disk, and provides up to 8 Ray workers
4938
+ # based on the autoscaler.
4635
4939
  #
4636
4940
  # @option params [String] :security_configuration
4637
4941
  # The name of the SecurityConfiguration structure to be used with the
@@ -4927,6 +5231,11 @@ module Aws::Glue
4927
5231
 
4928
5232
  # Creates a new trigger.
4929
5233
  #
5234
+ # Job arguments may be logged. Do not pass plaintext secrets as
5235
+ # arguments. Retrieve secrets from a Glue Connection, Amazon Web
5236
+ # Services Secrets Manager or other secret management mechanism if you
5237
+ # intend to keep them within the Job.
5238
+ #
4930
5239
  # @option params [required, String] :name
4931
5240
  # The name of the trigger.
4932
5241
  #
@@ -5152,6 +5461,11 @@ module Aws::Glue
5152
5461
  # A collection of properties to be used as part of each execution of the
5153
5462
  # workflow.
5154
5463
  #
5464
+ # Run properties may be logged. Do not pass plaintext secrets as
5465
+ # properties. Retrieve secrets from a Glue Connection, Amazon Web
5466
+ # Services Secrets Manager or other secret management mechanism if you
5467
+ # intend to use them within the workflow run.
5468
+ #
5155
5469
  # @option params [Hash<String,String>] :tags
5156
5470
  # The tags to be used with this workflow.
5157
5471
  #
@@ -5221,6 +5535,41 @@ module Aws::Glue
5221
5535
  req.send_request(options)
5222
5536
  end
5223
5537
 
5538
+ # Removes the specified catalog from the Glue Data Catalog.
5539
+ #
5540
+ # After completing this operation, you no longer have access to the
5541
+ # databases, tables (and all table versions and partitions that might
5542
+ # belong to the tables) and the user-defined functions in the deleted
5543
+ # catalog. Glue deletes these "orphaned" resources asynchronously in a
5544
+ # timely manner, at the discretion of the service.
5545
+ #
5546
+ # To ensure the immediate deletion of all related resources before
5547
+ # calling the `DeleteCatalog` operation, use `DeleteTableVersion` (or
5548
+ # `BatchDeleteTableVersion`), `DeletePartition` (or
5549
+ # `BatchDeletePartition`), `DeleteTable` (or `BatchDeleteTable`),
5550
+ # `DeleteUserDefinedFunction` and `DeleteDatabase` to delete any
5551
+ # resources that belong to the catalog.
5552
+ #
5553
+ # @option params [required, String] :catalog_id
5554
+ # The ID of the catalog.
5555
+ #
5556
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5557
+ #
5558
+ # @example Request syntax with placeholder values
5559
+ #
5560
+ # resp = client.delete_catalog({
5561
+ # catalog_id: "CatalogIdString", # required
5562
+ # })
5563
+ #
5564
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteCatalog AWS API Documentation
5565
+ #
5566
+ # @overload delete_catalog(params = {})
5567
+ # @param [Hash] params ({})
5568
+ def delete_catalog(params = {}, options = {})
5569
+ req = build_request(:delete_catalog, params)
5570
+ req.send_request(options)
5571
+ end
5572
+
5224
5573
  # Removes a classifier from the Data Catalog.
5225
5574
  #
5226
5575
  # @option params [required, String] :name
@@ -5516,6 +5865,88 @@ module Aws::Glue
5516
5865
  req.send_request(options)
5517
5866
  end
5518
5867
 
5868
+ # Deletes the specified Zero-ETL integration.
5869
+ #
5870
+ # @option params [required, String] :integration_identifier
5871
+ # The Amazon Resource Name (ARN) for the integration.
5872
+ #
5873
+ # @return [Types::DeleteIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5874
+ #
5875
+ # * {Types::DeleteIntegrationResponse#source_arn #source_arn} => String
5876
+ # * {Types::DeleteIntegrationResponse#target_arn #target_arn} => String
5877
+ # * {Types::DeleteIntegrationResponse#integration_name #integration_name} => String
5878
+ # * {Types::DeleteIntegrationResponse#description #description} => String
5879
+ # * {Types::DeleteIntegrationResponse#integration_arn #integration_arn} => String
5880
+ # * {Types::DeleteIntegrationResponse#kms_key_id #kms_key_id} => String
5881
+ # * {Types::DeleteIntegrationResponse#additional_encryption_context #additional_encryption_context} => Hash&lt;String,String&gt;
5882
+ # * {Types::DeleteIntegrationResponse#tags #tags} => Array&lt;Types::Tag&gt;
5883
+ # * {Types::DeleteIntegrationResponse#status #status} => String
5884
+ # * {Types::DeleteIntegrationResponse#create_time #create_time} => Time
5885
+ # * {Types::DeleteIntegrationResponse#errors #errors} => Array&lt;Types::IntegrationError&gt;
5886
+ # * {Types::DeleteIntegrationResponse#data_filter #data_filter} => String
5887
+ #
5888
+ # @example Request syntax with placeholder values
5889
+ #
5890
+ # resp = client.delete_integration({
5891
+ # integration_identifier: "String128", # required
5892
+ # })
5893
+ #
5894
+ # @example Response structure
5895
+ #
5896
+ # resp.source_arn #=> String
5897
+ # resp.target_arn #=> String
5898
+ # resp.integration_name #=> String
5899
+ # resp.description #=> String
5900
+ # resp.integration_arn #=> String
5901
+ # resp.kms_key_id #=> String
5902
+ # resp.additional_encryption_context #=> Hash
5903
+ # resp.additional_encryption_context["IntegrationString"] #=> String
5904
+ # resp.tags #=> Array
5905
+ # resp.tags[0].key #=> String
5906
+ # resp.tags[0].value #=> String
5907
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "MODIFYING", "FAILED", "DELETING", "SYNCING", "NEEDS_ATTENTION"
5908
+ # resp.create_time #=> Time
5909
+ # resp.errors #=> Array
5910
+ # resp.errors[0].error_code #=> String
5911
+ # resp.errors[0].error_message #=> String
5912
+ # resp.data_filter #=> String
5913
+ #
5914
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteIntegration AWS API Documentation
5915
+ #
5916
+ # @overload delete_integration(params = {})
5917
+ # @param [Hash] params ({})
5918
+ def delete_integration(params = {}, options = {})
5919
+ req = build_request(:delete_integration, params)
5920
+ req.send_request(options)
5921
+ end
5922
+
5923
+ # Deletes the table properties that have been created for the tables
5924
+ # that need to be replicated.
5925
+ #
5926
+ # @option params [required, String] :resource_arn
5927
+ # The connection ARN of the source, or the database ARN of the target.
5928
+ #
5929
+ # @option params [required, String] :table_name
5930
+ # The name of the table to be replicated.
5931
+ #
5932
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
5933
+ #
5934
+ # @example Request syntax with placeholder values
5935
+ #
5936
+ # resp = client.delete_integration_table_properties({
5937
+ # resource_arn: "String128", # required
5938
+ # table_name: "String128", # required
5939
+ # })
5940
+ #
5941
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DeleteIntegrationTableProperties AWS API Documentation
5942
+ #
5943
+ # @overload delete_integration_table_properties(params = {})
5944
+ # @param [Hash] params ({})
5945
+ def delete_integration_table_properties(params = {}, options = {})
5946
+ req = build_request(:delete_integration_table_properties, params)
5947
+ req.send_request(options)
5948
+ end
5949
+
5519
5950
  # Deletes a specified job definition. If the job definition is not
5520
5951
  # found, no exception is thrown.
5521
5952
  #
@@ -6110,6 +6541,403 @@ module Aws::Glue
6110
6541
  req.send_request(options)
6111
6542
  end
6112
6543
 
6544
+ # The `DescribeConnectionType` API provides full details of the
6545
+ # supported options for a given connection type in Glue.
6546
+ #
6547
+ # @option params [required, String] :connection_type
6548
+ # The name of the connection type to be described.
6549
+ #
6550
+ # @return [Types::DescribeConnectionTypeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6551
+ #
6552
+ # * {Types::DescribeConnectionTypeResponse#connection_type #connection_type} => String
6553
+ # * {Types::DescribeConnectionTypeResponse#description #description} => String
6554
+ # * {Types::DescribeConnectionTypeResponse#capabilities #capabilities} => Types::Capabilities
6555
+ # * {Types::DescribeConnectionTypeResponse#connection_properties #connection_properties} => Hash&lt;String,Types::Property&gt;
6556
+ # * {Types::DescribeConnectionTypeResponse#connection_options #connection_options} => Hash&lt;String,Types::Property&gt;
6557
+ # * {Types::DescribeConnectionTypeResponse#authentication_configuration #authentication_configuration} => Types::AuthConfiguration
6558
+ # * {Types::DescribeConnectionTypeResponse#compute_environment_configurations #compute_environment_configurations} => Hash&lt;String,Types::ComputeEnvironmentConfiguration&gt;
6559
+ # * {Types::DescribeConnectionTypeResponse#physical_connection_requirements #physical_connection_requirements} => Hash&lt;String,Types::Property&gt;
6560
+ # * {Types::DescribeConnectionTypeResponse#athena_connection_properties #athena_connection_properties} => Hash&lt;String,Types::Property&gt;
6561
+ # * {Types::DescribeConnectionTypeResponse#python_connection_properties #python_connection_properties} => Hash&lt;String,Types::Property&gt;
6562
+ # * {Types::DescribeConnectionTypeResponse#spark_connection_properties #spark_connection_properties} => Hash&lt;String,Types::Property&gt;
6563
+ #
6564
+ # @example Request syntax with placeholder values
6565
+ #
6566
+ # resp = client.describe_connection_type({
6567
+ # connection_type: "NameString", # required
6568
+ # })
6569
+ #
6570
+ # @example Response structure
6571
+ #
6572
+ # resp.connection_type #=> String
6573
+ # resp.description #=> String
6574
+ # resp.capabilities.supported_authentication_types #=> Array
6575
+ # resp.capabilities.supported_authentication_types[0] #=> String, one of "BASIC", "OAUTH2", "CUSTOM", "IAM"
6576
+ # resp.capabilities.supported_data_operations #=> Array
6577
+ # resp.capabilities.supported_data_operations[0] #=> String, one of "READ", "WRITE"
6578
+ # resp.capabilities.supported_compute_environments #=> Array
6579
+ # resp.capabilities.supported_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
6580
+ # resp.connection_properties #=> Hash
6581
+ # resp.connection_properties["PropertyName"].name #=> String
6582
+ # resp.connection_properties["PropertyName"].description #=> String
6583
+ # resp.connection_properties["PropertyName"].required #=> Boolean
6584
+ # resp.connection_properties["PropertyName"].default_value #=> String
6585
+ # resp.connection_properties["PropertyName"].property_types #=> Array
6586
+ # resp.connection_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6587
+ # resp.connection_properties["PropertyName"].allowed_values #=> Array
6588
+ # resp.connection_properties["PropertyName"].allowed_values[0].description #=> String
6589
+ # resp.connection_properties["PropertyName"].allowed_values[0].value #=> String
6590
+ # resp.connection_properties["PropertyName"].data_operation_scopes #=> Array
6591
+ # resp.connection_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6592
+ # resp.connection_options #=> Hash
6593
+ # resp.connection_options["PropertyName"].name #=> String
6594
+ # resp.connection_options["PropertyName"].description #=> String
6595
+ # resp.connection_options["PropertyName"].required #=> Boolean
6596
+ # resp.connection_options["PropertyName"].default_value #=> String
6597
+ # resp.connection_options["PropertyName"].property_types #=> Array
6598
+ # resp.connection_options["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6599
+ # resp.connection_options["PropertyName"].allowed_values #=> Array
6600
+ # resp.connection_options["PropertyName"].allowed_values[0].description #=> String
6601
+ # resp.connection_options["PropertyName"].allowed_values[0].value #=> String
6602
+ # resp.connection_options["PropertyName"].data_operation_scopes #=> Array
6603
+ # resp.connection_options["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6604
+ # resp.authentication_configuration.authentication_type.name #=> String
6605
+ # resp.authentication_configuration.authentication_type.description #=> String
6606
+ # resp.authentication_configuration.authentication_type.required #=> Boolean
6607
+ # resp.authentication_configuration.authentication_type.default_value #=> String
6608
+ # resp.authentication_configuration.authentication_type.property_types #=> Array
6609
+ # resp.authentication_configuration.authentication_type.property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6610
+ # resp.authentication_configuration.authentication_type.allowed_values #=> Array
6611
+ # resp.authentication_configuration.authentication_type.allowed_values[0].description #=> String
6612
+ # resp.authentication_configuration.authentication_type.allowed_values[0].value #=> String
6613
+ # resp.authentication_configuration.authentication_type.data_operation_scopes #=> Array
6614
+ # resp.authentication_configuration.authentication_type.data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6615
+ # resp.authentication_configuration.secret_arn.name #=> String
6616
+ # resp.authentication_configuration.secret_arn.description #=> String
6617
+ # resp.authentication_configuration.secret_arn.required #=> Boolean
6618
+ # resp.authentication_configuration.secret_arn.default_value #=> String
6619
+ # resp.authentication_configuration.secret_arn.property_types #=> Array
6620
+ # resp.authentication_configuration.secret_arn.property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6621
+ # resp.authentication_configuration.secret_arn.allowed_values #=> Array
6622
+ # resp.authentication_configuration.secret_arn.allowed_values[0].description #=> String
6623
+ # resp.authentication_configuration.secret_arn.allowed_values[0].value #=> String
6624
+ # resp.authentication_configuration.secret_arn.data_operation_scopes #=> Array
6625
+ # resp.authentication_configuration.secret_arn.data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6626
+ # resp.authentication_configuration.o_auth_2_properties #=> Hash
6627
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].name #=> String
6628
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].description #=> String
6629
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].required #=> Boolean
6630
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].default_value #=> String
6631
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].property_types #=> Array
6632
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6633
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].allowed_values #=> Array
6634
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].allowed_values[0].description #=> String
6635
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].allowed_values[0].value #=> String
6636
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].data_operation_scopes #=> Array
6637
+ # resp.authentication_configuration.o_auth_2_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6638
+ # resp.authentication_configuration.basic_authentication_properties #=> Hash
6639
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].name #=> String
6640
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].description #=> String
6641
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].required #=> Boolean
6642
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].default_value #=> String
6643
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].property_types #=> Array
6644
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6645
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].allowed_values #=> Array
6646
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].allowed_values[0].description #=> String
6647
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].allowed_values[0].value #=> String
6648
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].data_operation_scopes #=> Array
6649
+ # resp.authentication_configuration.basic_authentication_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6650
+ # resp.authentication_configuration.custom_authentication_properties #=> Hash
6651
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].name #=> String
6652
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].description #=> String
6653
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].required #=> Boolean
6654
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].default_value #=> String
6655
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].property_types #=> Array
6656
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6657
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].allowed_values #=> Array
6658
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].allowed_values[0].description #=> String
6659
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].allowed_values[0].value #=> String
6660
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].data_operation_scopes #=> Array
6661
+ # resp.authentication_configuration.custom_authentication_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6662
+ # resp.compute_environment_configurations #=> Hash
6663
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].name #=> String
6664
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].description #=> String
6665
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].compute_environment #=> String, one of "SPARK", "ATHENA", "PYTHON"
6666
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].supported_authentication_types #=> Array
6667
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].supported_authentication_types[0] #=> String, one of "BASIC", "OAUTH2", "CUSTOM", "IAM"
6668
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options #=> Hash
6669
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].name #=> String
6670
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].description #=> String
6671
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].required #=> Boolean
6672
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].default_value #=> String
6673
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].property_types #=> Array
6674
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6675
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].allowed_values #=> Array
6676
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].allowed_values[0].description #=> String
6677
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].allowed_values[0].value #=> String
6678
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].data_operation_scopes #=> Array
6679
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_options["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6680
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_property_name_overrides #=> Hash
6681
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_property_name_overrides["PropertyName"] #=> String
6682
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_option_name_overrides #=> Hash
6683
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_option_name_overrides["PropertyName"] #=> String
6684
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_properties_required_overrides #=> Array
6685
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].connection_properties_required_overrides[0] #=> String
6686
+ # resp.compute_environment_configurations["ComputeEnvironmentName"].physical_connection_properties_required #=> Boolean
6687
+ # resp.physical_connection_requirements #=> Hash
6688
+ # resp.physical_connection_requirements["PropertyName"].name #=> String
6689
+ # resp.physical_connection_requirements["PropertyName"].description #=> String
6690
+ # resp.physical_connection_requirements["PropertyName"].required #=> Boolean
6691
+ # resp.physical_connection_requirements["PropertyName"].default_value #=> String
6692
+ # resp.physical_connection_requirements["PropertyName"].property_types #=> Array
6693
+ # resp.physical_connection_requirements["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6694
+ # resp.physical_connection_requirements["PropertyName"].allowed_values #=> Array
6695
+ # resp.physical_connection_requirements["PropertyName"].allowed_values[0].description #=> String
6696
+ # resp.physical_connection_requirements["PropertyName"].allowed_values[0].value #=> String
6697
+ # resp.physical_connection_requirements["PropertyName"].data_operation_scopes #=> Array
6698
+ # resp.physical_connection_requirements["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6699
+ # resp.athena_connection_properties #=> Hash
6700
+ # resp.athena_connection_properties["PropertyName"].name #=> String
6701
+ # resp.athena_connection_properties["PropertyName"].description #=> String
6702
+ # resp.athena_connection_properties["PropertyName"].required #=> Boolean
6703
+ # resp.athena_connection_properties["PropertyName"].default_value #=> String
6704
+ # resp.athena_connection_properties["PropertyName"].property_types #=> Array
6705
+ # resp.athena_connection_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6706
+ # resp.athena_connection_properties["PropertyName"].allowed_values #=> Array
6707
+ # resp.athena_connection_properties["PropertyName"].allowed_values[0].description #=> String
6708
+ # resp.athena_connection_properties["PropertyName"].allowed_values[0].value #=> String
6709
+ # resp.athena_connection_properties["PropertyName"].data_operation_scopes #=> Array
6710
+ # resp.athena_connection_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6711
+ # resp.python_connection_properties #=> Hash
6712
+ # resp.python_connection_properties["PropertyName"].name #=> String
6713
+ # resp.python_connection_properties["PropertyName"].description #=> String
6714
+ # resp.python_connection_properties["PropertyName"].required #=> Boolean
6715
+ # resp.python_connection_properties["PropertyName"].default_value #=> String
6716
+ # resp.python_connection_properties["PropertyName"].property_types #=> Array
6717
+ # resp.python_connection_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6718
+ # resp.python_connection_properties["PropertyName"].allowed_values #=> Array
6719
+ # resp.python_connection_properties["PropertyName"].allowed_values[0].description #=> String
6720
+ # resp.python_connection_properties["PropertyName"].allowed_values[0].value #=> String
6721
+ # resp.python_connection_properties["PropertyName"].data_operation_scopes #=> Array
6722
+ # resp.python_connection_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6723
+ # resp.spark_connection_properties #=> Hash
6724
+ # resp.spark_connection_properties["PropertyName"].name #=> String
6725
+ # resp.spark_connection_properties["PropertyName"].description #=> String
6726
+ # resp.spark_connection_properties["PropertyName"].required #=> Boolean
6727
+ # resp.spark_connection_properties["PropertyName"].default_value #=> String
6728
+ # resp.spark_connection_properties["PropertyName"].property_types #=> Array
6729
+ # resp.spark_connection_properties["PropertyName"].property_types[0] #=> String, one of "USER_INPUT", "SECRET", "READ_ONLY", "UNUSED", "SECRET_OR_USER_INPUT"
6730
+ # resp.spark_connection_properties["PropertyName"].allowed_values #=> Array
6731
+ # resp.spark_connection_properties["PropertyName"].allowed_values[0].description #=> String
6732
+ # resp.spark_connection_properties["PropertyName"].allowed_values[0].value #=> String
6733
+ # resp.spark_connection_properties["PropertyName"].data_operation_scopes #=> Array
6734
+ # resp.spark_connection_properties["PropertyName"].data_operation_scopes[0] #=> String, one of "READ", "WRITE"
6735
+ #
6736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DescribeConnectionType AWS API Documentation
6737
+ #
6738
+ # @overload describe_connection_type(params = {})
6739
+ # @param [Hash] params ({})
6740
+ def describe_connection_type(params = {}, options = {})
6741
+ req = build_request(:describe_connection_type, params)
6742
+ req.send_request(options)
6743
+ end
6744
+
6745
+ # Provides details regarding the entity used with the connection type,
6746
+ # with a description of the data model for each field in the selected
6747
+ # entity.
6748
+ #
6749
+ # The response includes all the fields which make up the entity.
6750
+ #
6751
+ # @option params [required, String] :connection_name
6752
+ # The name of the connection that contains the connection type
6753
+ # credentials.
6754
+ #
6755
+ # @option params [String] :catalog_id
6756
+ # The catalog ID of the catalog that contains the connection. This can
6757
+ # be null, By default, the Amazon Web Services Account ID is the catalog
6758
+ # ID.
6759
+ #
6760
+ # @option params [required, String] :entity_name
6761
+ # The name of the entity that you want to describe from the connection
6762
+ # type.
6763
+ #
6764
+ # @option params [String] :next_token
6765
+ # A continuation token, included if this is a continuation call.
6766
+ #
6767
+ # @option params [String] :data_store_api_version
6768
+ # The version of the API used for the data store.
6769
+ #
6770
+ # @return [Types::DescribeEntityResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6771
+ #
6772
+ # * {Types::DescribeEntityResponse#fields #fields} => Array&lt;Types::Field&gt;
6773
+ # * {Types::DescribeEntityResponse#next_token #next_token} => String
6774
+ #
6775
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6776
+ #
6777
+ # @example Request syntax with placeholder values
6778
+ #
6779
+ # resp = client.describe_entity({
6780
+ # connection_name: "NameString", # required
6781
+ # catalog_id: "CatalogIdString",
6782
+ # entity_name: "EntityName", # required
6783
+ # next_token: "NextToken",
6784
+ # data_store_api_version: "ApiVersion",
6785
+ # })
6786
+ #
6787
+ # @example Response structure
6788
+ #
6789
+ # resp.fields #=> Array
6790
+ # resp.fields[0].field_name #=> String
6791
+ # resp.fields[0].label #=> String
6792
+ # resp.fields[0].description #=> String
6793
+ # resp.fields[0].field_type #=> String, one of "INT", "SMALLINT", "BIGINT", "FLOAT", "LONG", "DATE", "BOOLEAN", "MAP", "ARRAY", "STRING", "TIMESTAMP", "DECIMAL", "BYTE", "SHORT", "DOUBLE", "STRUCT"
6794
+ # resp.fields[0].is_primary_key #=> Boolean
6795
+ # resp.fields[0].is_nullable #=> Boolean
6796
+ # resp.fields[0].is_retrievable #=> Boolean
6797
+ # resp.fields[0].is_filterable #=> Boolean
6798
+ # resp.fields[0].is_partitionable #=> Boolean
6799
+ # resp.fields[0].is_createable #=> Boolean
6800
+ # resp.fields[0].is_updateable #=> Boolean
6801
+ # resp.fields[0].is_upsertable #=> Boolean
6802
+ # resp.fields[0].is_default_on_create #=> Boolean
6803
+ # resp.fields[0].supported_values #=> Array
6804
+ # resp.fields[0].supported_values[0] #=> String
6805
+ # resp.fields[0].supported_filter_operators #=> Array
6806
+ # resp.fields[0].supported_filter_operators[0] #=> String, one of "LESS_THAN", "GREATER_THAN", "BETWEEN", "EQUAL_TO", "NOT_EQUAL_TO", "GREATER_THAN_OR_EQUAL_TO", "LESS_THAN_OR_EQUAL_TO", "CONTAINS", "ORDER_BY"
6807
+ # resp.fields[0].parent_field #=> String
6808
+ # resp.fields[0].native_data_type #=> String
6809
+ # resp.fields[0].custom_properties #=> Hash
6810
+ # resp.fields[0].custom_properties["String"] #=> String
6811
+ # resp.next_token #=> String
6812
+ #
6813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DescribeEntity AWS API Documentation
6814
+ #
6815
+ # @overload describe_entity(params = {})
6816
+ # @param [Hash] params ({})
6817
+ def describe_entity(params = {}, options = {})
6818
+ req = build_request(:describe_entity, params)
6819
+ req.send_request(options)
6820
+ end
6821
+
6822
+ # Returns a list of inbound integrations for the specified integration.
6823
+ #
6824
+ # @option params [String] :integration_arn
6825
+ # The Amazon Resource Name (ARN) of the integration.
6826
+ #
6827
+ # @option params [String] :marker
6828
+ # A token to specify where to start paginating. This is the marker from
6829
+ # a previously truncated response.
6830
+ #
6831
+ # @option params [Integer] :max_records
6832
+ # The total number of items to return in the output.
6833
+ #
6834
+ # @option params [String] :target_arn
6835
+ # The Amazon Resource Name (ARN) of the target resource in the
6836
+ # integration.
6837
+ #
6838
+ # @return [Types::DescribeInboundIntegrationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6839
+ #
6840
+ # * {Types::DescribeInboundIntegrationsResponse#inbound_integrations #inbound_integrations} => Array&lt;Types::InboundIntegration&gt;
6841
+ # * {Types::DescribeInboundIntegrationsResponse#marker #marker} => String
6842
+ #
6843
+ # @example Request syntax with placeholder values
6844
+ #
6845
+ # resp = client.describe_inbound_integrations({
6846
+ # integration_arn: "String128",
6847
+ # marker: "String128",
6848
+ # max_records: 1,
6849
+ # target_arn: "String128",
6850
+ # })
6851
+ #
6852
+ # @example Response structure
6853
+ #
6854
+ # resp.inbound_integrations #=> Array
6855
+ # resp.inbound_integrations[0].source_arn #=> String
6856
+ # resp.inbound_integrations[0].target_arn #=> String
6857
+ # resp.inbound_integrations[0].integration_arn #=> String
6858
+ # resp.inbound_integrations[0].status #=> String, one of "CREATING", "ACTIVE", "MODIFYING", "FAILED", "DELETING", "SYNCING", "NEEDS_ATTENTION"
6859
+ # resp.inbound_integrations[0].create_time #=> Time
6860
+ # resp.inbound_integrations[0].errors #=> Array
6861
+ # resp.inbound_integrations[0].errors[0].error_code #=> String
6862
+ # resp.inbound_integrations[0].errors[0].error_message #=> String
6863
+ # resp.marker #=> String
6864
+ #
6865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DescribeInboundIntegrations AWS API Documentation
6866
+ #
6867
+ # @overload describe_inbound_integrations(params = {})
6868
+ # @param [Hash] params ({})
6869
+ def describe_inbound_integrations(params = {}, options = {})
6870
+ req = build_request(:describe_inbound_integrations, params)
6871
+ req.send_request(options)
6872
+ end
6873
+
6874
+ # The API is used to retrieve a list of integrations.
6875
+ #
6876
+ # @option params [String] :integration_identifier
6877
+ # The Amazon Resource Name (ARN) for the integration.
6878
+ #
6879
+ # @option params [String] :marker
6880
+ # A value that indicates the starting point for the next set of response
6881
+ # records in a subsequent request.
6882
+ #
6883
+ # @option params [Integer] :max_records
6884
+ # The total number of items to return in the output.
6885
+ #
6886
+ # @option params [Array<Types::IntegrationFilter>] :filters
6887
+ # A list of key and values, to filter down the results. Supported keys
6888
+ # are "Status", "IntegrationName", and "SourceArn".
6889
+ # IntegrationName is limited to only one value.
6890
+ #
6891
+ # @return [Types::DescribeIntegrationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6892
+ #
6893
+ # * {Types::DescribeIntegrationsResponse#integrations #integrations} => Array&lt;Types::Integration&gt;
6894
+ # * {Types::DescribeIntegrationsResponse#marker #marker} => String
6895
+ #
6896
+ # @example Request syntax with placeholder values
6897
+ #
6898
+ # resp = client.describe_integrations({
6899
+ # integration_identifier: "String128",
6900
+ # marker: "String128",
6901
+ # max_records: 1,
6902
+ # filters: [
6903
+ # {
6904
+ # name: "String128",
6905
+ # values: ["String128"],
6906
+ # },
6907
+ # ],
6908
+ # })
6909
+ #
6910
+ # @example Response structure
6911
+ #
6912
+ # resp.integrations #=> Array
6913
+ # resp.integrations[0].source_arn #=> String
6914
+ # resp.integrations[0].target_arn #=> String
6915
+ # resp.integrations[0].description #=> String
6916
+ # resp.integrations[0].integration_name #=> String
6917
+ # resp.integrations[0].integration_arn #=> String
6918
+ # resp.integrations[0].kms_key_id #=> String
6919
+ # resp.integrations[0].additional_encryption_context #=> Hash
6920
+ # resp.integrations[0].additional_encryption_context["IntegrationString"] #=> String
6921
+ # resp.integrations[0].tags #=> Array
6922
+ # resp.integrations[0].tags[0].key #=> String
6923
+ # resp.integrations[0].tags[0].value #=> String
6924
+ # resp.integrations[0].status #=> String, one of "CREATING", "ACTIVE", "MODIFYING", "FAILED", "DELETING", "SYNCING", "NEEDS_ATTENTION"
6925
+ # resp.integrations[0].create_time #=> Time
6926
+ # resp.integrations[0].errors #=> Array
6927
+ # resp.integrations[0].errors[0].error_code #=> String
6928
+ # resp.integrations[0].errors[0].error_message #=> String
6929
+ # resp.integrations[0].data_filter #=> String
6930
+ # resp.marker #=> String
6931
+ #
6932
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/DescribeIntegrations AWS API Documentation
6933
+ #
6934
+ # @overload describe_integrations(params = {})
6935
+ # @param [Hash] params ({})
6936
+ def describe_integrations(params = {}, options = {})
6937
+ req = build_request(:describe_integrations, params)
6938
+ req.send_request(options)
6939
+ end
6940
+
6113
6941
  # Retrieves the details of a blueprint.
6114
6942
  #
6115
6943
  # @option params [required, String] :name
@@ -6250,6 +7078,63 @@ module Aws::Glue
6250
7078
  req.send_request(options)
6251
7079
  end
6252
7080
 
7081
+ # The name of the Catalog to retrieve. This should be all lowercase.
7082
+ #
7083
+ # @option params [required, String] :catalog_id
7084
+ # The ID of the parent catalog in which the catalog resides. If none is
7085
+ # provided, the Amazon Web Services Account Number is used by default.
7086
+ #
7087
+ # @return [Types::GetCatalogResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7088
+ #
7089
+ # * {Types::GetCatalogResponse#catalog #catalog} => Types::Catalog
7090
+ #
7091
+ # @example Request syntax with placeholder values
7092
+ #
7093
+ # resp = client.get_catalog({
7094
+ # catalog_id: "CatalogIdString", # required
7095
+ # })
7096
+ #
7097
+ # @example Response structure
7098
+ #
7099
+ # resp.catalog.catalog_id #=> String
7100
+ # resp.catalog.name #=> String
7101
+ # resp.catalog.resource_arn #=> String
7102
+ # resp.catalog.description #=> String
7103
+ # resp.catalog.parameters #=> Hash
7104
+ # resp.catalog.parameters["KeyString"] #=> String
7105
+ # resp.catalog.create_time #=> Time
7106
+ # resp.catalog.update_time #=> Time
7107
+ # resp.catalog.target_redshift_catalog.catalog_arn #=> String
7108
+ # resp.catalog.federated_catalog.identifier #=> String
7109
+ # resp.catalog.federated_catalog.connection_name #=> String
7110
+ # resp.catalog.catalog_properties.data_lake_access_properties.data_lake_access #=> Boolean
7111
+ # resp.catalog.catalog_properties.data_lake_access_properties.data_transfer_role #=> String
7112
+ # resp.catalog.catalog_properties.data_lake_access_properties.kms_key #=> String
7113
+ # resp.catalog.catalog_properties.data_lake_access_properties.managed_workgroup_name #=> String
7114
+ # resp.catalog.catalog_properties.data_lake_access_properties.managed_workgroup_status #=> String
7115
+ # resp.catalog.catalog_properties.data_lake_access_properties.redshift_database_name #=> String
7116
+ # resp.catalog.catalog_properties.data_lake_access_properties.status_message #=> String
7117
+ # resp.catalog.catalog_properties.data_lake_access_properties.catalog_type #=> String
7118
+ # resp.catalog.catalog_properties.custom_properties #=> Hash
7119
+ # resp.catalog.catalog_properties.custom_properties["KeyString"] #=> String
7120
+ # resp.catalog.create_table_default_permissions #=> Array
7121
+ # resp.catalog.create_table_default_permissions[0].principal.data_lake_principal_identifier #=> String
7122
+ # resp.catalog.create_table_default_permissions[0].permissions #=> Array
7123
+ # resp.catalog.create_table_default_permissions[0].permissions[0] #=> String, one of "ALL", "SELECT", "ALTER", "DROP", "DELETE", "INSERT", "CREATE_DATABASE", "CREATE_TABLE", "DATA_LOCATION_ACCESS"
7124
+ # resp.catalog.create_database_default_permissions #=> Array
7125
+ # resp.catalog.create_database_default_permissions[0].principal.data_lake_principal_identifier #=> String
7126
+ # resp.catalog.create_database_default_permissions[0].permissions #=> Array
7127
+ # resp.catalog.create_database_default_permissions[0].permissions[0] #=> String, one of "ALL", "SELECT", "ALTER", "DROP", "DELETE", "INSERT", "CREATE_DATABASE", "CREATE_TABLE", "DATA_LOCATION_ACCESS"
7128
+ #
7129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetCatalog AWS API Documentation
7130
+ #
7131
+ # @overload get_catalog(params = {})
7132
+ # @param [Hash] params ({})
7133
+ def get_catalog(params = {}, options = {})
7134
+ req = build_request(:get_catalog, params)
7135
+ req.send_request(options)
7136
+ end
7137
+
6253
7138
  # Retrieves the status of a migration operation.
6254
7139
  #
6255
7140
  # @option params [String] :catalog_id
@@ -6281,6 +7166,82 @@ module Aws::Glue
6281
7166
  req.send_request(options)
6282
7167
  end
6283
7168
 
7169
+ # Retrieves all catalogs defined in a catalog in the Glue Data Catalog.
7170
+ # For a Redshift-federated catalog use case, this operation returns the
7171
+ # list of catalogs mapped to Redshift databases in the Redshift
7172
+ # namespace catalog.
7173
+ #
7174
+ # @option params [String] :parent_catalog_id
7175
+ # The ID of the parent catalog in which the catalog resides. If none is
7176
+ # provided, the Amazon Web Services Account Number is used by default.
7177
+ #
7178
+ # @option params [String] :next_token
7179
+ # A continuation token, if this is a continuation call.
7180
+ #
7181
+ # @option params [Integer] :max_results
7182
+ # The maximum number of catalogs to return in one response.
7183
+ #
7184
+ # @option params [Boolean] :recursive
7185
+ # When specified as true, iterates through the account and returns all
7186
+ # catalog resources (including top-level resources and child resources)
7187
+ #
7188
+ # @return [Types::GetCatalogsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7189
+ #
7190
+ # * {Types::GetCatalogsResponse#catalog_list #catalog_list} => Array&lt;Types::Catalog&gt;
7191
+ # * {Types::GetCatalogsResponse#next_token #next_token} => String
7192
+ #
7193
+ # @example Request syntax with placeholder values
7194
+ #
7195
+ # resp = client.get_catalogs({
7196
+ # parent_catalog_id: "CatalogIdString",
7197
+ # next_token: "Token",
7198
+ # max_results: 1,
7199
+ # recursive: false,
7200
+ # })
7201
+ #
7202
+ # @example Response structure
7203
+ #
7204
+ # resp.catalog_list #=> Array
7205
+ # resp.catalog_list[0].catalog_id #=> String
7206
+ # resp.catalog_list[0].name #=> String
7207
+ # resp.catalog_list[0].resource_arn #=> String
7208
+ # resp.catalog_list[0].description #=> String
7209
+ # resp.catalog_list[0].parameters #=> Hash
7210
+ # resp.catalog_list[0].parameters["KeyString"] #=> String
7211
+ # resp.catalog_list[0].create_time #=> Time
7212
+ # resp.catalog_list[0].update_time #=> Time
7213
+ # resp.catalog_list[0].target_redshift_catalog.catalog_arn #=> String
7214
+ # resp.catalog_list[0].federated_catalog.identifier #=> String
7215
+ # resp.catalog_list[0].federated_catalog.connection_name #=> String
7216
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.data_lake_access #=> Boolean
7217
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.data_transfer_role #=> String
7218
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.kms_key #=> String
7219
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.managed_workgroup_name #=> String
7220
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.managed_workgroup_status #=> String
7221
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.redshift_database_name #=> String
7222
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.status_message #=> String
7223
+ # resp.catalog_list[0].catalog_properties.data_lake_access_properties.catalog_type #=> String
7224
+ # resp.catalog_list[0].catalog_properties.custom_properties #=> Hash
7225
+ # resp.catalog_list[0].catalog_properties.custom_properties["KeyString"] #=> String
7226
+ # resp.catalog_list[0].create_table_default_permissions #=> Array
7227
+ # resp.catalog_list[0].create_table_default_permissions[0].principal.data_lake_principal_identifier #=> String
7228
+ # resp.catalog_list[0].create_table_default_permissions[0].permissions #=> Array
7229
+ # resp.catalog_list[0].create_table_default_permissions[0].permissions[0] #=> String, one of "ALL", "SELECT", "ALTER", "DROP", "DELETE", "INSERT", "CREATE_DATABASE", "CREATE_TABLE", "DATA_LOCATION_ACCESS"
7230
+ # resp.catalog_list[0].create_database_default_permissions #=> Array
7231
+ # resp.catalog_list[0].create_database_default_permissions[0].principal.data_lake_principal_identifier #=> String
7232
+ # resp.catalog_list[0].create_database_default_permissions[0].permissions #=> Array
7233
+ # resp.catalog_list[0].create_database_default_permissions[0].permissions[0] #=> String, one of "ALL", "SELECT", "ALTER", "DROP", "DELETE", "INSERT", "CREATE_DATABASE", "CREATE_TABLE", "DATA_LOCATION_ACCESS"
7234
+ # resp.next_token #=> String
7235
+ #
7236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetCatalogs AWS API Documentation
7237
+ #
7238
+ # @overload get_catalogs(params = {})
7239
+ # @param [Hash] params ({})
7240
+ def get_catalogs(params = {}, options = {})
7241
+ req = build_request(:get_catalogs, params)
7242
+ req.send_request(options)
7243
+ end
7244
+
6284
7245
  # Retrieve a classifier by name.
6285
7246
  #
6286
7247
  # @option params [required, String] :name
@@ -6722,6 +7683,12 @@ module Aws::Glue
6722
7683
  # resp.column_statistics_task_settings.role #=> String
6723
7684
  # resp.column_statistics_task_settings.sample_size #=> Float
6724
7685
  # resp.column_statistics_task_settings.security_configuration #=> String
7686
+ # resp.column_statistics_task_settings.schedule_type #=> String, one of "CRON", "AUTO"
7687
+ # resp.column_statistics_task_settings.setting_source #=> String, one of "CATALOG", "TABLE"
7688
+ # resp.column_statistics_task_settings.last_execution_attempt.status #=> String, one of "FAILED", "STARTED"
7689
+ # resp.column_statistics_task_settings.last_execution_attempt.column_statistics_task_run_id #=> String
7690
+ # resp.column_statistics_task_settings.last_execution_attempt.execution_timestamp #=> Time
7691
+ # resp.column_statistics_task_settings.last_execution_attempt.error_message #=> String
6725
7692
  #
6726
7693
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetColumnStatisticsTaskSettings AWS API Documentation
6727
7694
  #
@@ -6749,6 +7716,10 @@ module Aws::Glue
6749
7716
  # decrypt the password, but it does have permission to access the rest
6750
7717
  # of the connection properties.
6751
7718
  #
7719
+ # @option params [String] :apply_override_for_compute_environment
7720
+ # For connections that may be used in multiple services, specifies
7721
+ # returning properties for the specified compute environment.
7722
+ #
6752
7723
  # @return [Types::GetConnectionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6753
7724
  #
6754
7725
  # * {Types::GetConnectionResponse#connection #connection} => Types::Connection
@@ -6759,19 +7730,24 @@ module Aws::Glue
6759
7730
  # catalog_id: "CatalogIdString",
6760
7731
  # name: "NameString", # required
6761
7732
  # hide_password: false,
7733
+ # apply_override_for_compute_environment: "SPARK", # accepts SPARK, ATHENA, PYTHON
6762
7734
  # })
6763
7735
  #
6764
7736
  # @example Response structure
6765
7737
  #
6766
7738
  # resp.connection.name #=> String
6767
7739
  # resp.connection.description #=> String
6768
- # resp.connection.connection_type #=> String, one of "JDBC", "SFTP", "MONGODB", "KAFKA", "NETWORK", "MARKETPLACE", "CUSTOM", "SALESFORCE", "VIEW_VALIDATION_REDSHIFT", "VIEW_VALIDATION_ATHENA"
7740
+ # resp.connection.connection_type #=> String, one of "JDBC", "SFTP", "MONGODB", "KAFKA", "NETWORK", "MARKETPLACE", "CUSTOM", "SALESFORCE", "VIEW_VALIDATION_REDSHIFT", "VIEW_VALIDATION_ATHENA", "GOOGLEADS", "GOOGLESHEETS", "GOOGLEANALYTICS4", "SERVICENOW", "MARKETO", "SAPODATA", "ZENDESK", "JIRACLOUD", "NETSUITEERP", "HUBSPOT", "FACEBOOKADS", "INSTAGRAMADS", "ZOHOCRM", "SALESFORCEPARDOT", "SALESFORCEMARKETINGCLOUD", "SLACK", "STRIPE", "INTERCOM", "SNAPCHATADS"
6769
7741
  # resp.connection.match_criteria #=> Array
6770
7742
  # resp.connection.match_criteria[0] #=> String
6771
7743
  # resp.connection.connection_properties #=> Hash
6772
7744
  # resp.connection.connection_properties["ConnectionPropertyKey"] #=> String
7745
+ # resp.connection.spark_properties #=> Hash
7746
+ # resp.connection.spark_properties["PropertyKey"] #=> String
6773
7747
  # resp.connection.athena_properties #=> Hash
6774
7748
  # resp.connection.athena_properties["PropertyKey"] #=> String
7749
+ # resp.connection.python_properties #=> Hash
7750
+ # resp.connection.python_properties["PropertyKey"] #=> String
6775
7751
  # resp.connection.physical_connection_requirements.subnet_id #=> String
6776
7752
  # resp.connection.physical_connection_requirements.security_group_id_list #=> Array
6777
7753
  # resp.connection.physical_connection_requirements.security_group_id_list[0] #=> String
@@ -6782,7 +7758,7 @@ module Aws::Glue
6782
7758
  # resp.connection.status #=> String, one of "READY", "IN_PROGRESS", "FAILED"
6783
7759
  # resp.connection.status_reason #=> String
6784
7760
  # resp.connection.last_connection_validation_time #=> Time
6785
- # resp.connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
7761
+ # resp.connection.authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM", "IAM"
6786
7762
  # resp.connection.authentication_configuration.secret_arn #=> String
6787
7763
  # resp.connection.authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
6788
7764
  # resp.connection.authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
@@ -6790,6 +7766,9 @@ module Aws::Glue
6790
7766
  # resp.connection.authentication_configuration.o_auth_2_properties.token_url #=> String
6791
7767
  # resp.connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
6792
7768
  # resp.connection.authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParameterKey"] #=> String
7769
+ # resp.connection.connection_schema_version #=> Integer
7770
+ # resp.connection.compatible_compute_environments #=> Array
7771
+ # resp.connection.compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
6793
7772
  #
6794
7773
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetConnection AWS API Documentation
6795
7774
  #
@@ -6836,7 +7815,8 @@ module Aws::Glue
6836
7815
  # catalog_id: "CatalogIdString",
6837
7816
  # filter: {
6838
7817
  # match_criteria: ["NameString"],
6839
- # connection_type: "JDBC", # accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA
7818
+ # connection_type: "JDBC", # accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA, GOOGLEADS, GOOGLESHEETS, GOOGLEANALYTICS4, SERVICENOW, MARKETO, SAPODATA, ZENDESK, JIRACLOUD, NETSUITEERP, HUBSPOT, FACEBOOKADS, INSTAGRAMADS, ZOHOCRM, SALESFORCEPARDOT, SALESFORCEMARKETINGCLOUD, SLACK, STRIPE, INTERCOM, SNAPCHATADS
7819
+ # connection_schema_version: 1,
6840
7820
  # },
6841
7821
  # hide_password: false,
6842
7822
  # next_token: "Token",
@@ -6848,13 +7828,17 @@ module Aws::Glue
6848
7828
  # resp.connection_list #=> Array
6849
7829
  # resp.connection_list[0].name #=> String
6850
7830
  # resp.connection_list[0].description #=> String
6851
- # resp.connection_list[0].connection_type #=> String, one of "JDBC", "SFTP", "MONGODB", "KAFKA", "NETWORK", "MARKETPLACE", "CUSTOM", "SALESFORCE", "VIEW_VALIDATION_REDSHIFT", "VIEW_VALIDATION_ATHENA"
7831
+ # resp.connection_list[0].connection_type #=> String, one of "JDBC", "SFTP", "MONGODB", "KAFKA", "NETWORK", "MARKETPLACE", "CUSTOM", "SALESFORCE", "VIEW_VALIDATION_REDSHIFT", "VIEW_VALIDATION_ATHENA", "GOOGLEADS", "GOOGLESHEETS", "GOOGLEANALYTICS4", "SERVICENOW", "MARKETO", "SAPODATA", "ZENDESK", "JIRACLOUD", "NETSUITEERP", "HUBSPOT", "FACEBOOKADS", "INSTAGRAMADS", "ZOHOCRM", "SALESFORCEPARDOT", "SALESFORCEMARKETINGCLOUD", "SLACK", "STRIPE", "INTERCOM", "SNAPCHATADS"
6852
7832
  # resp.connection_list[0].match_criteria #=> Array
6853
7833
  # resp.connection_list[0].match_criteria[0] #=> String
6854
7834
  # resp.connection_list[0].connection_properties #=> Hash
6855
7835
  # resp.connection_list[0].connection_properties["ConnectionPropertyKey"] #=> String
7836
+ # resp.connection_list[0].spark_properties #=> Hash
7837
+ # resp.connection_list[0].spark_properties["PropertyKey"] #=> String
6856
7838
  # resp.connection_list[0].athena_properties #=> Hash
6857
7839
  # resp.connection_list[0].athena_properties["PropertyKey"] #=> String
7840
+ # resp.connection_list[0].python_properties #=> Hash
7841
+ # resp.connection_list[0].python_properties["PropertyKey"] #=> String
6858
7842
  # resp.connection_list[0].physical_connection_requirements.subnet_id #=> String
6859
7843
  # resp.connection_list[0].physical_connection_requirements.security_group_id_list #=> Array
6860
7844
  # resp.connection_list[0].physical_connection_requirements.security_group_id_list[0] #=> String
@@ -6865,7 +7849,7 @@ module Aws::Glue
6865
7849
  # resp.connection_list[0].status #=> String, one of "READY", "IN_PROGRESS", "FAILED"
6866
7850
  # resp.connection_list[0].status_reason #=> String
6867
7851
  # resp.connection_list[0].last_connection_validation_time #=> Time
6868
- # resp.connection_list[0].authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM"
7852
+ # resp.connection_list[0].authentication_configuration.authentication_type #=> String, one of "BASIC", "OAUTH2", "CUSTOM", "IAM"
6869
7853
  # resp.connection_list[0].authentication_configuration.secret_arn #=> String
6870
7854
  # resp.connection_list[0].authentication_configuration.o_auth_2_properties.o_auth_2_grant_type #=> String, one of "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "JWT_BEARER"
6871
7855
  # resp.connection_list[0].authentication_configuration.o_auth_2_properties.o_auth_2_client_application.user_managed_client_application_client_id #=> String
@@ -6873,6 +7857,9 @@ module Aws::Glue
6873
7857
  # resp.connection_list[0].authentication_configuration.o_auth_2_properties.token_url #=> String
6874
7858
  # resp.connection_list[0].authentication_configuration.o_auth_2_properties.token_url_parameters_map #=> Hash
6875
7859
  # resp.connection_list[0].authentication_configuration.o_auth_2_properties.token_url_parameters_map["TokenUrlParameterKey"] #=> String
7860
+ # resp.connection_list[0].connection_schema_version #=> Integer
7861
+ # resp.connection_list[0].compatible_compute_environments #=> Array
7862
+ # resp.connection_list[0].compatible_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
6876
7863
  # resp.next_token #=> String
6877
7864
  #
6878
7865
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetConnections AWS API Documentation
@@ -7772,84 +8759,250 @@ module Aws::Glue
7772
8759
  # resp.dev_endpoint.arguments #=> Hash
7773
8760
  # resp.dev_endpoint.arguments["GenericString"] #=> String
7774
8761
  #
7775
- # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetDevEndpoint AWS API Documentation
8762
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetDevEndpoint AWS API Documentation
8763
+ #
8764
+ # @overload get_dev_endpoint(params = {})
8765
+ # @param [Hash] params ({})
8766
+ def get_dev_endpoint(params = {}, options = {})
8767
+ req = build_request(:get_dev_endpoint, params)
8768
+ req.send_request(options)
8769
+ end
8770
+
8771
+ # Retrieves all the development endpoints in this Amazon Web Services
8772
+ # account.
8773
+ #
8774
+ # <note markdown="1"> When you create a development endpoint in a virtual private cloud
8775
+ # (VPC), Glue returns only a private IP address and the public IP
8776
+ # address field is not populated. When you create a non-VPC development
8777
+ # endpoint, Glue returns only a public IP address.
8778
+ #
8779
+ # </note>
8780
+ #
8781
+ # @option params [Integer] :max_results
8782
+ # The maximum size of information to return.
8783
+ #
8784
+ # @option params [String] :next_token
8785
+ # A continuation token, if this is a continuation call.
8786
+ #
8787
+ # @return [Types::GetDevEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8788
+ #
8789
+ # * {Types::GetDevEndpointsResponse#dev_endpoints #dev_endpoints} => Array&lt;Types::DevEndpoint&gt;
8790
+ # * {Types::GetDevEndpointsResponse#next_token #next_token} => String
8791
+ #
8792
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8793
+ #
8794
+ # @example Request syntax with placeholder values
8795
+ #
8796
+ # resp = client.get_dev_endpoints({
8797
+ # max_results: 1,
8798
+ # next_token: "GenericString",
8799
+ # })
8800
+ #
8801
+ # @example Response structure
8802
+ #
8803
+ # resp.dev_endpoints #=> Array
8804
+ # resp.dev_endpoints[0].endpoint_name #=> String
8805
+ # resp.dev_endpoints[0].role_arn #=> String
8806
+ # resp.dev_endpoints[0].security_group_ids #=> Array
8807
+ # resp.dev_endpoints[0].security_group_ids[0] #=> String
8808
+ # resp.dev_endpoints[0].subnet_id #=> String
8809
+ # resp.dev_endpoints[0].yarn_endpoint_address #=> String
8810
+ # resp.dev_endpoints[0].private_address #=> String
8811
+ # resp.dev_endpoints[0].zeppelin_remote_spark_interpreter_port #=> Integer
8812
+ # resp.dev_endpoints[0].public_address #=> String
8813
+ # resp.dev_endpoints[0].status #=> String
8814
+ # resp.dev_endpoints[0].worker_type #=> String, one of "Standard", "G.1X", "G.2X", "G.025X", "G.4X", "G.8X", "Z.2X"
8815
+ # resp.dev_endpoints[0].glue_version #=> String
8816
+ # resp.dev_endpoints[0].number_of_workers #=> Integer
8817
+ # resp.dev_endpoints[0].number_of_nodes #=> Integer
8818
+ # resp.dev_endpoints[0].availability_zone #=> String
8819
+ # resp.dev_endpoints[0].vpc_id #=> String
8820
+ # resp.dev_endpoints[0].extra_python_libs_s3_path #=> String
8821
+ # resp.dev_endpoints[0].extra_jars_s3_path #=> String
8822
+ # resp.dev_endpoints[0].failure_reason #=> String
8823
+ # resp.dev_endpoints[0].last_update_status #=> String
8824
+ # resp.dev_endpoints[0].created_timestamp #=> Time
8825
+ # resp.dev_endpoints[0].last_modified_timestamp #=> Time
8826
+ # resp.dev_endpoints[0].public_key #=> String
8827
+ # resp.dev_endpoints[0].public_keys #=> Array
8828
+ # resp.dev_endpoints[0].public_keys[0] #=> String
8829
+ # resp.dev_endpoints[0].security_configuration #=> String
8830
+ # resp.dev_endpoints[0].arguments #=> Hash
8831
+ # resp.dev_endpoints[0].arguments["GenericString"] #=> String
8832
+ # resp.next_token #=> String
8833
+ #
8834
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetDevEndpoints AWS API Documentation
8835
+ #
8836
+ # @overload get_dev_endpoints(params = {})
8837
+ # @param [Hash] params ({})
8838
+ def get_dev_endpoints(params = {}, options = {})
8839
+ req = build_request(:get_dev_endpoints, params)
8840
+ req.send_request(options)
8841
+ end
8842
+
8843
+ # This API is used to query preview data from a given connection type or
8844
+ # from a native Amazon S3 based Glue Data Catalog.
8845
+ #
8846
+ # Returns records as an array of JSON blobs. Each record is formatted
8847
+ # using Jackson JsonNode based on the field type defined by the
8848
+ # `DescribeEntity` API.
8849
+ #
8850
+ # Spark connectors generate schemas according to the same data type
8851
+ # mapping as in the `DescribeEntity` API. Spark connectors convert data
8852
+ # to the appropriate data types matching the schema when returning rows.
8853
+ #
8854
+ # @option params [String] :connection_name
8855
+ # The name of the connection that contains the connection type
8856
+ # credentials.
8857
+ #
8858
+ # @option params [String] :catalog_id
8859
+ # The catalog ID of the catalog that contains the connection. This can
8860
+ # be null, By default, the Amazon Web Services Account ID is the catalog
8861
+ # ID.
8862
+ #
8863
+ # @option params [required, String] :entity_name
8864
+ # Name of the entity that we want to query the preview data from the
8865
+ # given connection type.
8866
+ #
8867
+ # @option params [String] :next_token
8868
+ # A continuation token, included if this is a continuation call.
8869
+ #
8870
+ # @option params [String] :data_store_api_version
8871
+ # The API version of the SaaS connector.
8872
+ #
8873
+ # @option params [Hash<String,String>] :connection_options
8874
+ # Connector options that are required to query the data.
8875
+ #
8876
+ # @option params [String] :filter_predicate
8877
+ # A filter predicate that you can apply in the query request.
8878
+ #
8879
+ # @option params [required, Integer] :limit
8880
+ # Limits the number of records fetched with the request.
8881
+ #
8882
+ # @option params [String] :order_by
8883
+ # A parameter that orders the response preview data.
8884
+ #
8885
+ # @option params [Array<String>] :selected_fields
8886
+ # List of fields that we want to fetch as part of preview data.
8887
+ #
8888
+ # @return [Types::GetEntityRecordsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8889
+ #
8890
+ # * {Types::GetEntityRecordsResponse#records #records} => Array&lt;Hash,Array,String,Numeric,Boolean&gt;
8891
+ # * {Types::GetEntityRecordsResponse#next_token #next_token} => String
8892
+ #
8893
+ # @example Request syntax with placeholder values
8894
+ #
8895
+ # resp = client.get_entity_records({
8896
+ # connection_name: "NameString",
8897
+ # catalog_id: "CatalogIdString",
8898
+ # entity_name: "EntityName", # required
8899
+ # next_token: "NextToken",
8900
+ # data_store_api_version: "ApiVersion",
8901
+ # connection_options: {
8902
+ # "OptionKey" => "OptionValue",
8903
+ # },
8904
+ # filter_predicate: "FilterPredicate",
8905
+ # limit: 1, # required
8906
+ # order_by: "String",
8907
+ # selected_fields: ["EntityFieldName"],
8908
+ # })
8909
+ #
8910
+ # @example Response structure
8911
+ #
8912
+ # resp.records #=> Array
8913
+ # resp.next_token #=> String
8914
+ #
8915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetEntityRecords AWS API Documentation
8916
+ #
8917
+ # @overload get_entity_records(params = {})
8918
+ # @param [Hash] params ({})
8919
+ def get_entity_records(params = {}, options = {})
8920
+ req = build_request(:get_entity_records, params)
8921
+ req.send_request(options)
8922
+ end
8923
+
8924
+ # This API is used for fetching the `ResourceProperty` of the Glue
8925
+ # connection (for the source) or Glue database ARN (for the target)
8926
+ #
8927
+ # @option params [required, String] :resource_arn
8928
+ # The connection ARN of the source, or the database ARN of the target.
8929
+ #
8930
+ # @return [Types::GetIntegrationResourcePropertyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8931
+ #
8932
+ # * {Types::GetIntegrationResourcePropertyResponse#resource_arn #resource_arn} => String
8933
+ # * {Types::GetIntegrationResourcePropertyResponse#source_processing_properties #source_processing_properties} => Types::SourceProcessingProperties
8934
+ # * {Types::GetIntegrationResourcePropertyResponse#target_processing_properties #target_processing_properties} => Types::TargetProcessingProperties
8935
+ #
8936
+ # @example Request syntax with placeholder values
8937
+ #
8938
+ # resp = client.get_integration_resource_property({
8939
+ # resource_arn: "String128", # required
8940
+ # })
8941
+ #
8942
+ # @example Response structure
8943
+ #
8944
+ # resp.resource_arn #=> String
8945
+ # resp.source_processing_properties.role_arn #=> String
8946
+ # resp.target_processing_properties.role_arn #=> String
8947
+ # resp.target_processing_properties.kms_arn #=> String
8948
+ # resp.target_processing_properties.connection_name #=> String
8949
+ # resp.target_processing_properties.event_bus_arn #=> String
7776
8950
  #
7777
- # @overload get_dev_endpoint(params = {})
8951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetIntegrationResourceProperty AWS API Documentation
8952
+ #
8953
+ # @overload get_integration_resource_property(params = {})
7778
8954
  # @param [Hash] params ({})
7779
- def get_dev_endpoint(params = {}, options = {})
7780
- req = build_request(:get_dev_endpoint, params)
8955
+ def get_integration_resource_property(params = {}, options = {})
8956
+ req = build_request(:get_integration_resource_property, params)
7781
8957
  req.send_request(options)
7782
8958
  end
7783
8959
 
7784
- # Retrieves all the development endpoints in this Amazon Web Services
7785
- # account.
7786
- #
7787
- # <note markdown="1"> When you create a development endpoint in a virtual private cloud
7788
- # (VPC), Glue returns only a private IP address and the public IP
7789
- # address field is not populated. When you create a non-VPC development
7790
- # endpoint, Glue returns only a public IP address.
7791
- #
7792
- # </note>
7793
- #
7794
- # @option params [Integer] :max_results
7795
- # The maximum size of information to return.
8960
+ # This API is used to retrieve optional override properties for the
8961
+ # tables that need to be replicated. These properties can include
8962
+ # properties for filtering and partition for source and target tables.
7796
8963
  #
7797
- # @option params [String] :next_token
7798
- # A continuation token, if this is a continuation call.
8964
+ # @option params [required, String] :resource_arn
8965
+ # The connection ARN of the source, or the database ARN of the target.
7799
8966
  #
7800
- # @return [Types::GetDevEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
8967
+ # @option params [required, String] :table_name
8968
+ # The name of the table to be replicated.
7801
8969
  #
7802
- # * {Types::GetDevEndpointsResponse#dev_endpoints #dev_endpoints} => Array&lt;Types::DevEndpoint&gt;
7803
- # * {Types::GetDevEndpointsResponse#next_token #next_token} => String
8970
+ # @return [Types::GetIntegrationTablePropertiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7804
8971
  #
7805
- # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
8972
+ # * {Types::GetIntegrationTablePropertiesResponse#resource_arn #resource_arn} => String
8973
+ # * {Types::GetIntegrationTablePropertiesResponse#table_name #table_name} => String
8974
+ # * {Types::GetIntegrationTablePropertiesResponse#source_table_config #source_table_config} => Types::SourceTableConfig
8975
+ # * {Types::GetIntegrationTablePropertiesResponse#target_table_config #target_table_config} => Types::TargetTableConfig
7806
8976
  #
7807
8977
  # @example Request syntax with placeholder values
7808
8978
  #
7809
- # resp = client.get_dev_endpoints({
7810
- # max_results: 1,
7811
- # next_token: "GenericString",
8979
+ # resp = client.get_integration_table_properties({
8980
+ # resource_arn: "String128", # required
8981
+ # table_name: "String128", # required
7812
8982
  # })
7813
8983
  #
7814
8984
  # @example Response structure
7815
8985
  #
7816
- # resp.dev_endpoints #=> Array
7817
- # resp.dev_endpoints[0].endpoint_name #=> String
7818
- # resp.dev_endpoints[0].role_arn #=> String
7819
- # resp.dev_endpoints[0].security_group_ids #=> Array
7820
- # resp.dev_endpoints[0].security_group_ids[0] #=> String
7821
- # resp.dev_endpoints[0].subnet_id #=> String
7822
- # resp.dev_endpoints[0].yarn_endpoint_address #=> String
7823
- # resp.dev_endpoints[0].private_address #=> String
7824
- # resp.dev_endpoints[0].zeppelin_remote_spark_interpreter_port #=> Integer
7825
- # resp.dev_endpoints[0].public_address #=> String
7826
- # resp.dev_endpoints[0].status #=> String
7827
- # resp.dev_endpoints[0].worker_type #=> String, one of "Standard", "G.1X", "G.2X", "G.025X", "G.4X", "G.8X", "Z.2X"
7828
- # resp.dev_endpoints[0].glue_version #=> String
7829
- # resp.dev_endpoints[0].number_of_workers #=> Integer
7830
- # resp.dev_endpoints[0].number_of_nodes #=> Integer
7831
- # resp.dev_endpoints[0].availability_zone #=> String
7832
- # resp.dev_endpoints[0].vpc_id #=> String
7833
- # resp.dev_endpoints[0].extra_python_libs_s3_path #=> String
7834
- # resp.dev_endpoints[0].extra_jars_s3_path #=> String
7835
- # resp.dev_endpoints[0].failure_reason #=> String
7836
- # resp.dev_endpoints[0].last_update_status #=> String
7837
- # resp.dev_endpoints[0].created_timestamp #=> Time
7838
- # resp.dev_endpoints[0].last_modified_timestamp #=> Time
7839
- # resp.dev_endpoints[0].public_key #=> String
7840
- # resp.dev_endpoints[0].public_keys #=> Array
7841
- # resp.dev_endpoints[0].public_keys[0] #=> String
7842
- # resp.dev_endpoints[0].security_configuration #=> String
7843
- # resp.dev_endpoints[0].arguments #=> Hash
7844
- # resp.dev_endpoints[0].arguments["GenericString"] #=> String
7845
- # resp.next_token #=> String
7846
- #
7847
- # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetDevEndpoints AWS API Documentation
7848
- #
7849
- # @overload get_dev_endpoints(params = {})
8986
+ # resp.resource_arn #=> String
8987
+ # resp.table_name #=> String
8988
+ # resp.source_table_config.fields #=> Array
8989
+ # resp.source_table_config.fields[0] #=> String
8990
+ # resp.source_table_config.filter_predicate #=> String
8991
+ # resp.source_table_config.primary_key #=> Array
8992
+ # resp.source_table_config.primary_key[0] #=> String
8993
+ # resp.source_table_config.record_update_field #=> String
8994
+ # resp.target_table_config.unnest_spec #=> String, one of "TOPLEVEL", "FULL", "NOUNNEST"
8995
+ # resp.target_table_config.partition_spec #=> Array
8996
+ # resp.target_table_config.partition_spec[0].field_name #=> String
8997
+ # resp.target_table_config.partition_spec[0].function_spec #=> String
8998
+ # resp.target_table_config.target_table_name #=> String
8999
+ #
9000
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetIntegrationTableProperties AWS API Documentation
9001
+ #
9002
+ # @overload get_integration_table_properties(params = {})
7850
9003
  # @param [Hash] params ({})
7851
- def get_dev_endpoints(params = {}, options = {})
7852
- req = build_request(:get_dev_endpoints, params)
9004
+ def get_integration_table_properties(params = {}, options = {})
9005
+ req = build_request(:get_integration_table_properties, params)
7853
9006
  req.send_request(options)
7854
9007
  end
7855
9008
 
@@ -8829,7 +9982,7 @@ module Aws::Glue
8829
9982
  end
8830
9983
 
8831
9984
  # Retrieves the metadata for a given job run. Job run history is
8832
- # accessible for 90 days for your workflow and job run.
9985
+ # accessible for 365 days for your workflow and job run.
8833
9986
  #
8834
9987
  # @option params [required, String] :job_name
8835
9988
  # Name of the job definition being run.
@@ -8898,6 +10051,9 @@ module Aws::Glue
8898
10051
 
8899
10052
  # Retrieves metadata for all runs of a given job definition.
8900
10053
  #
10054
+ # `GetJobRuns` returns the job runs in chronological order, with the
10055
+ # newest jobs returned first.
10056
+ #
8901
10057
  # @option params [required, String] :job_name
8902
10058
  # The name of the job definition for which to retrieve all job runs.
8903
10059
  #
@@ -11181,6 +12337,8 @@ module Aws::Glue
11181
12337
  # resp.security_configuration.encryption_configuration.cloud_watch_encryption.kms_key_arn #=> String
11182
12338
  # resp.security_configuration.encryption_configuration.job_bookmarks_encryption.job_bookmarks_encryption_mode #=> String, one of "DISABLED", "CSE-KMS"
11183
12339
  # resp.security_configuration.encryption_configuration.job_bookmarks_encryption.kms_key_arn #=> String
12340
+ # resp.security_configuration.encryption_configuration.data_quality_encryption.data_quality_encryption_mode #=> String, one of "DISABLED", "SSE-KMS"
12341
+ # resp.security_configuration.encryption_configuration.data_quality_encryption.kms_key_arn #=> String
11184
12342
  #
11185
12343
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSecurityConfiguration AWS API Documentation
11186
12344
  #
@@ -11225,6 +12383,8 @@ module Aws::Glue
11225
12383
  # resp.security_configurations[0].encryption_configuration.cloud_watch_encryption.kms_key_arn #=> String
11226
12384
  # resp.security_configurations[0].encryption_configuration.job_bookmarks_encryption.job_bookmarks_encryption_mode #=> String, one of "DISABLED", "CSE-KMS"
11227
12385
  # resp.security_configurations[0].encryption_configuration.job_bookmarks_encryption.kms_key_arn #=> String
12386
+ # resp.security_configurations[0].encryption_configuration.data_quality_encryption.data_quality_encryption_mode #=> String, one of "DISABLED", "SSE-KMS"
12387
+ # resp.security_configurations[0].encryption_configuration.data_quality_encryption.kms_key_arn #=> String
11228
12388
  # resp.next_token #=> String
11229
12389
  #
11230
12390
  # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/GetSecurityConfigurations AWS API Documentation
@@ -13530,6 +14690,54 @@ module Aws::Glue
13530
14690
  req.send_request(options)
13531
14691
  end
13532
14692
 
14693
+ # The `ListConnectionTypes` API provides a discovery mechanism to learn
14694
+ # available connection types in Glue. The response contains a list of
14695
+ # connection types with high-level details of what is supported for each
14696
+ # connection type. The connection types listed are the set of supported
14697
+ # options for the `ConnectionType` value in the `CreateConnection` API.
14698
+ #
14699
+ # @option params [Integer] :max_results
14700
+ # The maximum number of results to return.
14701
+ #
14702
+ # @option params [String] :next_token
14703
+ # A continuation token, if this is a continuation call.
14704
+ #
14705
+ # @return [Types::ListConnectionTypesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14706
+ #
14707
+ # * {Types::ListConnectionTypesResponse#connection_types #connection_types} => Array&lt;Types::ConnectionTypeBrief&gt;
14708
+ # * {Types::ListConnectionTypesResponse#next_token #next_token} => String
14709
+ #
14710
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
14711
+ #
14712
+ # @example Request syntax with placeholder values
14713
+ #
14714
+ # resp = client.list_connection_types({
14715
+ # max_results: 1,
14716
+ # next_token: "NextToken",
14717
+ # })
14718
+ #
14719
+ # @example Response structure
14720
+ #
14721
+ # resp.connection_types #=> Array
14722
+ # resp.connection_types[0].connection_type #=> String, one of "JDBC", "SFTP", "MONGODB", "KAFKA", "NETWORK", "MARKETPLACE", "CUSTOM", "SALESFORCE", "VIEW_VALIDATION_REDSHIFT", "VIEW_VALIDATION_ATHENA", "GOOGLEADS", "GOOGLESHEETS", "GOOGLEANALYTICS4", "SERVICENOW", "MARKETO", "SAPODATA", "ZENDESK", "JIRACLOUD", "NETSUITEERP", "HUBSPOT", "FACEBOOKADS", "INSTAGRAMADS", "ZOHOCRM", "SALESFORCEPARDOT", "SALESFORCEMARKETINGCLOUD", "SLACK", "STRIPE", "INTERCOM", "SNAPCHATADS"
14723
+ # resp.connection_types[0].description #=> String
14724
+ # resp.connection_types[0].capabilities.supported_authentication_types #=> Array
14725
+ # resp.connection_types[0].capabilities.supported_authentication_types[0] #=> String, one of "BASIC", "OAUTH2", "CUSTOM", "IAM"
14726
+ # resp.connection_types[0].capabilities.supported_data_operations #=> Array
14727
+ # resp.connection_types[0].capabilities.supported_data_operations[0] #=> String, one of "READ", "WRITE"
14728
+ # resp.connection_types[0].capabilities.supported_compute_environments #=> Array
14729
+ # resp.connection_types[0].capabilities.supported_compute_environments[0] #=> String, one of "SPARK", "ATHENA", "PYTHON"
14730
+ # resp.next_token #=> String
14731
+ #
14732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListConnectionTypes AWS API Documentation
14733
+ #
14734
+ # @overload list_connection_types(params = {})
14735
+ # @param [Hash] params ({})
14736
+ def list_connection_types(params = {}, options = {})
14737
+ req = build_request(:list_connection_types, params)
14738
+ req.send_request(options)
14739
+ end
14740
+
13533
14741
  # Retrieves the names of all crawler resources in this Amazon Web
13534
14742
  # Services account, or the resources with the specified tag. This
13535
14743
  # operation allows you to see which resources are available in your
@@ -14134,6 +15342,66 @@ module Aws::Glue
14134
15342
  req.send_request(options)
14135
15343
  end
14136
15344
 
15345
+ # Returns the available entities supported by the connection type.
15346
+ #
15347
+ # @option params [String] :connection_name
15348
+ # A name for the connection that has required credentials to query any
15349
+ # connection type.
15350
+ #
15351
+ # @option params [String] :catalog_id
15352
+ # The catalog ID of the catalog that contains the connection. This can
15353
+ # be null, By default, the Amazon Web Services Account ID is the catalog
15354
+ # ID.
15355
+ #
15356
+ # @option params [String] :parent_entity_name
15357
+ # Name of the parent entity for which you want to list the children.
15358
+ # This parameter takes a fully-qualified path of the entity in order to
15359
+ # list the child entities.
15360
+ #
15361
+ # @option params [String] :next_token
15362
+ # A continuation token, included if this is a continuation call.
15363
+ #
15364
+ # @option params [String] :data_store_api_version
15365
+ # The API version of the SaaS connector.
15366
+ #
15367
+ # @return [Types::ListEntitiesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
15368
+ #
15369
+ # * {Types::ListEntitiesResponse#entities #entities} => Array&lt;Types::Entity&gt;
15370
+ # * {Types::ListEntitiesResponse#next_token #next_token} => String
15371
+ #
15372
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
15373
+ #
15374
+ # @example Request syntax with placeholder values
15375
+ #
15376
+ # resp = client.list_entities({
15377
+ # connection_name: "NameString",
15378
+ # catalog_id: "CatalogIdString",
15379
+ # parent_entity_name: "EntityName",
15380
+ # next_token: "NextToken",
15381
+ # data_store_api_version: "ApiVersion",
15382
+ # })
15383
+ #
15384
+ # @example Response structure
15385
+ #
15386
+ # resp.entities #=> Array
15387
+ # resp.entities[0].entity_name #=> String
15388
+ # resp.entities[0].label #=> String
15389
+ # resp.entities[0].is_parent_entity #=> Boolean
15390
+ # resp.entities[0].description #=> String
15391
+ # resp.entities[0].category #=> String
15392
+ # resp.entities[0].custom_properties #=> Hash
15393
+ # resp.entities[0].custom_properties["String"] #=> String
15394
+ # resp.next_token #=> String
15395
+ #
15396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ListEntities AWS API Documentation
15397
+ #
15398
+ # @overload list_entities(params = {})
15399
+ # @param [Hash] params ({})
15400
+ def list_entities(params = {}, options = {})
15401
+ req = build_request(:list_entities, params)
15402
+ req.send_request(options)
15403
+ end
15404
+
14137
15405
  # Retrieves the names of all job resources in this Amazon Web Services
14138
15406
  # account, or the resources with the specified tag. This operation
14139
15407
  # allows you to see which resources are available in your account, and
@@ -14761,6 +16029,73 @@ module Aws::Glue
14761
16029
  req.send_request(options)
14762
16030
  end
14763
16031
 
16032
+ # Modifies a Zero-ETL integration in the caller's account.
16033
+ #
16034
+ # @option params [required, String] :integration_identifier
16035
+ # The Amazon Resource Name (ARN) for the integration.
16036
+ #
16037
+ # @option params [String] :description
16038
+ # A description of the integration.
16039
+ #
16040
+ # @option params [String] :data_filter
16041
+ # Selects source tables for the integration using Maxwell filter syntax.
16042
+ #
16043
+ # @option params [String] :integration_name
16044
+ # A unique name for an integration in Glue.
16045
+ #
16046
+ # @return [Types::ModifyIntegrationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
16047
+ #
16048
+ # * {Types::ModifyIntegrationResponse#source_arn #source_arn} => String
16049
+ # * {Types::ModifyIntegrationResponse#target_arn #target_arn} => String
16050
+ # * {Types::ModifyIntegrationResponse#integration_name #integration_name} => String
16051
+ # * {Types::ModifyIntegrationResponse#description #description} => String
16052
+ # * {Types::ModifyIntegrationResponse#integration_arn #integration_arn} => String
16053
+ # * {Types::ModifyIntegrationResponse#kms_key_id #kms_key_id} => String
16054
+ # * {Types::ModifyIntegrationResponse#additional_encryption_context #additional_encryption_context} => Hash&lt;String,String&gt;
16055
+ # * {Types::ModifyIntegrationResponse#tags #tags} => Array&lt;Types::Tag&gt;
16056
+ # * {Types::ModifyIntegrationResponse#status #status} => String
16057
+ # * {Types::ModifyIntegrationResponse#create_time #create_time} => Time
16058
+ # * {Types::ModifyIntegrationResponse#errors #errors} => Array&lt;Types::IntegrationError&gt;
16059
+ # * {Types::ModifyIntegrationResponse#data_filter #data_filter} => String
16060
+ #
16061
+ # @example Request syntax with placeholder values
16062
+ #
16063
+ # resp = client.modify_integration({
16064
+ # integration_identifier: "String128", # required
16065
+ # description: "IntegrationDescription",
16066
+ # data_filter: "String2048",
16067
+ # integration_name: "String128",
16068
+ # })
16069
+ #
16070
+ # @example Response structure
16071
+ #
16072
+ # resp.source_arn #=> String
16073
+ # resp.target_arn #=> String
16074
+ # resp.integration_name #=> String
16075
+ # resp.description #=> String
16076
+ # resp.integration_arn #=> String
16077
+ # resp.kms_key_id #=> String
16078
+ # resp.additional_encryption_context #=> Hash
16079
+ # resp.additional_encryption_context["IntegrationString"] #=> String
16080
+ # resp.tags #=> Array
16081
+ # resp.tags[0].key #=> String
16082
+ # resp.tags[0].value #=> String
16083
+ # resp.status #=> String, one of "CREATING", "ACTIVE", "MODIFYING", "FAILED", "DELETING", "SYNCING", "NEEDS_ATTENTION"
16084
+ # resp.create_time #=> Time
16085
+ # resp.errors #=> Array
16086
+ # resp.errors[0].error_code #=> String
16087
+ # resp.errors[0].error_message #=> String
16088
+ # resp.data_filter #=> String
16089
+ #
16090
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ModifyIntegration AWS API Documentation
16091
+ #
16092
+ # @overload modify_integration(params = {})
16093
+ # @param [Hash] params ({})
16094
+ def modify_integration(params = {}, options = {})
16095
+ req = build_request(:modify_integration, params)
16096
+ req.send_request(options)
16097
+ end
16098
+
14764
16099
  # Sets the security configuration for a specified catalog. After the
14765
16100
  # configuration has been set, the specified encryption is applied to
14766
16101
  # every catalog write thereafter.
@@ -14967,6 +16302,11 @@ module Aws::Glue
14967
16302
  # @option params [required, Hash<String,String>] :run_properties
14968
16303
  # The properties to put for the specified run.
14969
16304
  #
16305
+ # Run properties may be logged. Do not pass plaintext secrets as
16306
+ # properties. Retrieve secrets from a Glue Connection, Amazon Web
16307
+ # Services Secrets Manager or other secret management mechanism if you
16308
+ # intend to use them within the workflow run.
16309
+ #
14970
16310
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
14971
16311
  #
14972
16312
  # @example Request syntax with placeholder values
@@ -16076,45 +17416,45 @@ module Aws::Glue
16076
17416
  # Accepts the value Z.2X for Ray jobs.
16077
17417
  #
16078
17418
  # * For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPUs, 16
16079
- # GB of memory) with 84GB disk (approximately 34GB free), and provides
16080
- # 1 executor per worker. We recommend this worker type for workloads
16081
- # such as data transforms, joins, and queries, to offers a scalable
16082
- # and cost effective way to run most jobs.
17419
+ # GB of memory) with 94GB disk, and provides 1 executor per worker. We
17420
+ # recommend this worker type for workloads such as data transforms,
17421
+ # joins, and queries, to offers a scalable and cost effective way to
17422
+ # run most jobs.
16083
17423
  #
16084
17424
  # * For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPUs, 32
16085
- # GB of memory) with 128GB disk (approximately 77GB free), and
16086
- # provides 1 executor per worker. We recommend this worker type for
16087
- # workloads such as data transforms, joins, and queries, to offers a
16088
- # scalable and cost effective way to run most jobs.
17425
+ # GB of memory) with 138GB disk, and provides 1 executor per worker.
17426
+ # We recommend this worker type for workloads such as data transforms,
17427
+ # joins, and queries, to offers a scalable and cost effective way to
17428
+ # run most jobs.
16089
17429
  #
16090
17430
  # * For the `G.4X` worker type, each worker maps to 4 DPU (16 vCPUs, 64
16091
- # GB of memory) with 256GB disk (approximately 235GB free), and
16092
- # provides 1 executor per worker. We recommend this worker type for
16093
- # jobs whose workloads contain your most demanding transforms,
16094
- # aggregations, joins, and queries. This worker type is available only
16095
- # for Glue version 3.0 or later Spark ETL jobs in the following Amazon
16096
- # Web Services Regions: US East (Ohio), US East (N. Virginia), US West
16097
- # (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia
16098
- # Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe
16099
- # (Ireland), and Europe (Stockholm).
17431
+ # GB of memory) with 256GB disk, and provides 1 executor per worker.
17432
+ # We recommend this worker type for jobs whose workloads contain your
17433
+ # most demanding transforms, aggregations, joins, and queries. This
17434
+ # worker type is available only for Glue version 3.0 or later Spark
17435
+ # ETL jobs in the following Amazon Web Services Regions: US East
17436
+ # (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific
17437
+ # (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada
17438
+ # (Central), Europe (Frankfurt), Europe (Ireland), and Europe
17439
+ # (Stockholm).
16100
17440
  #
16101
17441
  # * For the `G.8X` worker type, each worker maps to 8 DPU (32 vCPUs, 128
16102
- # GB of memory) with 512GB disk (approximately 487GB free), and
16103
- # provides 1 executor per worker. We recommend this worker type for
16104
- # jobs whose workloads contain your most demanding transforms,
16105
- # aggregations, joins, and queries. This worker type is available only
16106
- # for Glue version 3.0 or later Spark ETL jobs, in the same Amazon Web
16107
- # Services Regions as supported for the `G.4X` worker type.
17442
+ # GB of memory) with 512GB disk, and provides 1 executor per worker.
17443
+ # We recommend this worker type for jobs whose workloads contain your
17444
+ # most demanding transforms, aggregations, joins, and queries. This
17445
+ # worker type is available only for Glue version 3.0 or later Spark
17446
+ # ETL jobs, in the same Amazon Web Services Regions as supported for
17447
+ # the `G.4X` worker type.
16108
17448
  #
16109
17449
  # * For the `G.025X` worker type, each worker maps to 0.25 DPU (2 vCPUs,
16110
- # 4 GB of memory) with 84GB disk (approximately 34GB free), and
16111
- # provides 1 executor per worker. We recommend this worker type for
16112
- # low volume streaming jobs. This worker type is only available for
16113
- # Glue version 3.0 streaming jobs.
17450
+ # 4 GB of memory) with 84GB disk, and provides 1 executor per worker.
17451
+ # We recommend this worker type for low volume streaming jobs. This
17452
+ # worker type is only available for Glue version 3.0 or later
17453
+ # streaming jobs.
16114
17454
  #
16115
17455
  # * For the `Z.2X` worker type, each worker maps to 2 M-DPU (8vCPUs, 64
16116
- # GB of memory) with 128 GB disk (approximately 120GB free), and
16117
- # provides up to 8 Ray workers based on the autoscaler.
17456
+ # GB of memory) with 128 GB disk, and provides up to 8 Ray workers
17457
+ # based on the autoscaler.
16118
17458
  #
16119
17459
  # @option params [Integer] :number_of_workers
16120
17460
  # The number of workers of a defined `workerType` that are allocated
@@ -16295,6 +17635,11 @@ module Aws::Glue
16295
17635
  # @option params [Hash<String,String>] :run_properties
16296
17636
  # The workflow run properties for the new workflow run.
16297
17637
  #
17638
+ # Run properties may be logged. Do not pass plaintext secrets as
17639
+ # properties. Retrieve secrets from a Glue Connection, Amazon Web
17640
+ # Services Secrets Manager or other secret management mechanism if you
17641
+ # intend to use them within the workflow run.
17642
+ #
16298
17643
  # @return [Types::StartWorkflowRunResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
16299
17644
  #
16300
17645
  # * {Types::StartWorkflowRunResponse#run_id #run_id} => String
@@ -16561,6 +17906,9 @@ module Aws::Glue
16561
17906
  # provided, the operation will get the connection and use that for
16562
17907
  # testing.
16563
17908
  #
17909
+ # @option params [String] :catalog_id
17910
+ # The catalog ID where the connection resides.
17911
+ #
16564
17912
  # @option params [Types::TestConnectionInput] :test_connection_input
16565
17913
  # A structure that is used to specify testing a connection to a service.
16566
17914
  #
@@ -16570,13 +17918,14 @@ module Aws::Glue
16570
17918
  #
16571
17919
  # resp = client.test_connection({
16572
17920
  # connection_name: "NameString",
17921
+ # catalog_id: "CatalogIdString",
16573
17922
  # test_connection_input: {
16574
- # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA
17923
+ # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA, GOOGLEADS, GOOGLESHEETS, GOOGLEANALYTICS4, SERVICENOW, MARKETO, SAPODATA, ZENDESK, JIRACLOUD, NETSUITEERP, HUBSPOT, FACEBOOKADS, INSTAGRAMADS, ZOHOCRM, SALESFORCEPARDOT, SALESFORCEMARKETINGCLOUD, SLACK, STRIPE, INTERCOM, SNAPCHATADS
16575
17924
  # connection_properties: { # required
16576
17925
  # "HOST" => "ValueString",
16577
17926
  # },
16578
17927
  # authentication_configuration: {
16579
- # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM
17928
+ # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM, IAM
16580
17929
  # o_auth_2_properties: {
16581
17930
  # o_auth_2_grant_type: "AUTHORIZATION_CODE", # accepts AUTHORIZATION_CODE, CLIENT_CREDENTIALS, JWT_BEARER
16582
17931
  # o_auth_2_client_application: {
@@ -16591,8 +17940,22 @@ module Aws::Glue
16591
17940
  # authorization_code: "AuthorizationCode",
16592
17941
  # redirect_uri: "RedirectUri",
16593
17942
  # },
17943
+ # o_auth_2_credentials: {
17944
+ # user_managed_client_application_client_secret: "UserManagedClientApplicationClientSecret",
17945
+ # access_token: "AccessToken",
17946
+ # refresh_token: "RefreshToken",
17947
+ # jwt_token: "JwtToken",
17948
+ # },
16594
17949
  # },
16595
17950
  # secret_arn: "SecretArn",
17951
+ # kms_key_arn: "KmsKeyArn",
17952
+ # basic_authentication_credentials: {
17953
+ # username: "Username",
17954
+ # password: "Password",
17955
+ # },
17956
+ # custom_authentication_credentials: {
17957
+ # "CredentialKey" => "CredentialValue",
17958
+ # },
16596
17959
  # },
16597
17960
  # },
16598
17961
  # })
@@ -16669,6 +18032,72 @@ module Aws::Glue
16669
18032
  req.send_request(options)
16670
18033
  end
16671
18034
 
18035
+ # Updates an existing catalog's properties in the Glue Data Catalog.
18036
+ #
18037
+ # @option params [required, String] :catalog_id
18038
+ # The ID of the catalog.
18039
+ #
18040
+ # @option params [required, Types::CatalogInput] :catalog_input
18041
+ # A `CatalogInput` object specifying the new properties of an existing
18042
+ # catalog.
18043
+ #
18044
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
18045
+ #
18046
+ # @example Request syntax with placeholder values
18047
+ #
18048
+ # resp = client.update_catalog({
18049
+ # catalog_id: "CatalogIdString", # required
18050
+ # catalog_input: { # required
18051
+ # description: "DescriptionString",
18052
+ # federated_catalog: {
18053
+ # identifier: "FederationIdentifier",
18054
+ # connection_name: "NameString",
18055
+ # },
18056
+ # parameters: {
18057
+ # "KeyString" => "ParametersMapValue",
18058
+ # },
18059
+ # target_redshift_catalog: {
18060
+ # catalog_arn: "ResourceArnString", # required
18061
+ # },
18062
+ # catalog_properties: {
18063
+ # data_lake_access_properties: {
18064
+ # data_lake_access: false,
18065
+ # data_transfer_role: "IAMRoleArn",
18066
+ # kms_key: "ResourceArnString",
18067
+ # catalog_type: "NameString",
18068
+ # },
18069
+ # custom_properties: {
18070
+ # "KeyString" => "ParametersMapValue",
18071
+ # },
18072
+ # },
18073
+ # create_table_default_permissions: [
18074
+ # {
18075
+ # principal: {
18076
+ # data_lake_principal_identifier: "DataLakePrincipalString",
18077
+ # },
18078
+ # permissions: ["ALL"], # accepts ALL, SELECT, ALTER, DROP, DELETE, INSERT, CREATE_DATABASE, CREATE_TABLE, DATA_LOCATION_ACCESS
18079
+ # },
18080
+ # ],
18081
+ # create_database_default_permissions: [
18082
+ # {
18083
+ # principal: {
18084
+ # data_lake_principal_identifier: "DataLakePrincipalString",
18085
+ # },
18086
+ # permissions: ["ALL"], # accepts ALL, SELECT, ALTER, DROP, DELETE, INSERT, CREATE_DATABASE, CREATE_TABLE, DATA_LOCATION_ACCESS
18087
+ # },
18088
+ # ],
18089
+ # },
18090
+ # })
18091
+ #
18092
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateCatalog AWS API Documentation
18093
+ #
18094
+ # @overload update_catalog(params = {})
18095
+ # @param [Hash] params ({})
18096
+ def update_catalog(params = {}, options = {})
18097
+ req = build_request(:update_catalog, params)
18098
+ req.send_request(options)
18099
+ end
18100
+
16672
18101
  # Modifies an existing classifier (a `GrokClassifier`, an
16673
18102
  # `XMLClassifier`, a `JsonClassifier`, or a `CsvClassifier`, depending
16674
18103
  # on which field is present).
@@ -17074,21 +18503,27 @@ module Aws::Glue
17074
18503
  # connection_input: { # required
17075
18504
  # name: "NameString", # required
17076
18505
  # description: "DescriptionString",
17077
- # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA
18506
+ # connection_type: "JDBC", # required, accepts JDBC, SFTP, MONGODB, KAFKA, NETWORK, MARKETPLACE, CUSTOM, SALESFORCE, VIEW_VALIDATION_REDSHIFT, VIEW_VALIDATION_ATHENA, GOOGLEADS, GOOGLESHEETS, GOOGLEANALYTICS4, SERVICENOW, MARKETO, SAPODATA, ZENDESK, JIRACLOUD, NETSUITEERP, HUBSPOT, FACEBOOKADS, INSTAGRAMADS, ZOHOCRM, SALESFORCEPARDOT, SALESFORCEMARKETINGCLOUD, SLACK, STRIPE, INTERCOM, SNAPCHATADS
17078
18507
  # match_criteria: ["NameString"],
17079
18508
  # connection_properties: { # required
17080
18509
  # "HOST" => "ValueString",
17081
18510
  # },
18511
+ # spark_properties: {
18512
+ # "PropertyKey" => "PropertyValue",
18513
+ # },
17082
18514
  # athena_properties: {
17083
18515
  # "PropertyKey" => "PropertyValue",
17084
18516
  # },
18517
+ # python_properties: {
18518
+ # "PropertyKey" => "PropertyValue",
18519
+ # },
17085
18520
  # physical_connection_requirements: {
17086
18521
  # subnet_id: "NameString",
17087
18522
  # security_group_id_list: ["NameString"],
17088
18523
  # availability_zone: "NameString",
17089
18524
  # },
17090
18525
  # authentication_configuration: {
17091
- # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM
18526
+ # authentication_type: "BASIC", # accepts BASIC, OAUTH2, CUSTOM, IAM
17092
18527
  # o_auth_2_properties: {
17093
18528
  # o_auth_2_grant_type: "AUTHORIZATION_CODE", # accepts AUTHORIZATION_CODE, CLIENT_CREDENTIALS, JWT_BEARER
17094
18529
  # o_auth_2_client_application: {
@@ -17103,10 +18538,25 @@ module Aws::Glue
17103
18538
  # authorization_code: "AuthorizationCode",
17104
18539
  # redirect_uri: "RedirectUri",
17105
18540
  # },
18541
+ # o_auth_2_credentials: {
18542
+ # user_managed_client_application_client_secret: "UserManagedClientApplicationClientSecret",
18543
+ # access_token: "AccessToken",
18544
+ # refresh_token: "RefreshToken",
18545
+ # jwt_token: "JwtToken",
18546
+ # },
17106
18547
  # },
17107
18548
  # secret_arn: "SecretArn",
18549
+ # kms_key_arn: "KmsKeyArn",
18550
+ # basic_authentication_credentials: {
18551
+ # username: "Username",
18552
+ # password: "Password",
18553
+ # },
18554
+ # custom_authentication_credentials: {
18555
+ # "CredentialKey" => "CredentialValue",
18556
+ # },
17108
18557
  # },
17109
18558
  # validate_credentials: false,
18559
+ # validate_for_compute_environments: ["SPARK"], # accepts SPARK, ATHENA, PYTHON
17110
18560
  # },
17111
18561
  # })
17112
18562
  #
@@ -17490,6 +18940,118 @@ module Aws::Glue
17490
18940
  req.send_request(options)
17491
18941
  end
17492
18942
 
18943
+ # This API can be used for updating the `ResourceProperty` of the Glue
18944
+ # connection (for the source) or Glue database ARN (for the target).
18945
+ # These properties can include the role to access the connection or
18946
+ # database. Since the same resource can be used across multiple
18947
+ # integrations, updating resource properties will impact all the
18948
+ # integrations using it.
18949
+ #
18950
+ # @option params [required, String] :resource_arn
18951
+ # The connection ARN of the source, or the database ARN of the target.
18952
+ #
18953
+ # @option params [Types::SourceProcessingProperties] :source_processing_properties
18954
+ # The resource properties associated with the integration source.
18955
+ #
18956
+ # @option params [Types::TargetProcessingProperties] :target_processing_properties
18957
+ # The resource properties associated with the integration target.
18958
+ #
18959
+ # @return [Types::UpdateIntegrationResourcePropertyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
18960
+ #
18961
+ # * {Types::UpdateIntegrationResourcePropertyResponse#resource_arn #resource_arn} => String
18962
+ # * {Types::UpdateIntegrationResourcePropertyResponse#source_processing_properties #source_processing_properties} => Types::SourceProcessingProperties
18963
+ # * {Types::UpdateIntegrationResourcePropertyResponse#target_processing_properties #target_processing_properties} => Types::TargetProcessingProperties
18964
+ #
18965
+ # @example Request syntax with placeholder values
18966
+ #
18967
+ # resp = client.update_integration_resource_property({
18968
+ # resource_arn: "String128", # required
18969
+ # source_processing_properties: {
18970
+ # role_arn: "String128",
18971
+ # },
18972
+ # target_processing_properties: {
18973
+ # role_arn: "String128",
18974
+ # kms_arn: "String2048",
18975
+ # connection_name: "String128",
18976
+ # event_bus_arn: "String2048",
18977
+ # },
18978
+ # })
18979
+ #
18980
+ # @example Response structure
18981
+ #
18982
+ # resp.resource_arn #=> String
18983
+ # resp.source_processing_properties.role_arn #=> String
18984
+ # resp.target_processing_properties.role_arn #=> String
18985
+ # resp.target_processing_properties.kms_arn #=> String
18986
+ # resp.target_processing_properties.connection_name #=> String
18987
+ # resp.target_processing_properties.event_bus_arn #=> String
18988
+ #
18989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateIntegrationResourceProperty AWS API Documentation
18990
+ #
18991
+ # @overload update_integration_resource_property(params = {})
18992
+ # @param [Hash] params ({})
18993
+ def update_integration_resource_property(params = {}, options = {})
18994
+ req = build_request(:update_integration_resource_property, params)
18995
+ req.send_request(options)
18996
+ end
18997
+
18998
+ # This API is used to provide optional override properties for the
18999
+ # tables that need to be replicated. These properties can include
19000
+ # properties for filtering and partitioning for the source and target
19001
+ # tables. To set both source and target properties the same API need to
19002
+ # be invoked with the Glue connection ARN as `ResourceArn` with
19003
+ # `SourceTableConfig`, and the Glue database ARN as `ResourceArn` with
19004
+ # `TargetTableConfig` respectively.
19005
+ #
19006
+ # The override will be reflected across all the integrations using same
19007
+ # `ResourceArn` and source table.
19008
+ #
19009
+ # @option params [required, String] :resource_arn
19010
+ # The connection ARN of the source, or the database ARN of the target.
19011
+ #
19012
+ # @option params [required, String] :table_name
19013
+ # The name of the table to be replicated.
19014
+ #
19015
+ # @option params [Types::SourceTableConfig] :source_table_config
19016
+ # A structure for the source table configuration.
19017
+ #
19018
+ # @option params [Types::TargetTableConfig] :target_table_config
19019
+ # A structure for the target table configuration.
19020
+ #
19021
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
19022
+ #
19023
+ # @example Request syntax with placeholder values
19024
+ #
19025
+ # resp = client.update_integration_table_properties({
19026
+ # resource_arn: "String128", # required
19027
+ # table_name: "String128", # required
19028
+ # source_table_config: {
19029
+ # fields: ["String128"],
19030
+ # filter_predicate: "String128",
19031
+ # primary_key: ["String128"],
19032
+ # record_update_field: "String128",
19033
+ # },
19034
+ # target_table_config: {
19035
+ # unnest_spec: "TOPLEVEL", # accepts TOPLEVEL, FULL, NOUNNEST
19036
+ # partition_spec: [
19037
+ # {
19038
+ # field_name: "String128",
19039
+ # function_spec: "String128",
19040
+ # },
19041
+ # ],
19042
+ # target_table_name: "String128",
19043
+ # },
19044
+ # })
19045
+ #
19046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/UpdateIntegrationTableProperties AWS API Documentation
19047
+ #
19048
+ # @overload update_integration_table_properties(params = {})
19049
+ # @param [Hash] params ({})
19050
+ def update_integration_table_properties(params = {}, options = {})
19051
+ req = build_request(:update_integration_table_properties, params)
19052
+ req.send_request(options)
19053
+ end
19054
+
17493
19055
  # Updates an existing job definition. The previous job definition is
17494
19056
  # completely overwritten by this information.
17495
19057
  #
@@ -18205,6 +19767,11 @@ module Aws::Glue
18205
19767
 
18206
19768
  # Updates a trigger definition.
18207
19769
  #
19770
+ # Job arguments may be logged. Do not pass plaintext secrets as
19771
+ # arguments. Retrieve secrets from a Glue Connection, Amazon Web
19772
+ # Services Secrets Manager or other secret management mechanism if you
19773
+ # intend to keep them within the Job.
19774
+ #
18208
19775
  # @option params [required, String] :name
18209
19776
  # The name of the trigger to update.
18210
19777
  #
@@ -18407,6 +19974,11 @@ module Aws::Glue
18407
19974
  # A collection of properties to be used as part of each execution of the
18408
19975
  # workflow.
18409
19976
  #
19977
+ # Run properties may be logged. Do not pass plaintext secrets as
19978
+ # properties. Retrieve secrets from a Glue Connection, Amazon Web
19979
+ # Services Secrets Manager or other secret management mechanism if you
19980
+ # intend to use them within the workflow run.
19981
+ #
18410
19982
  # @option params [Integer] :max_concurrent_runs
18411
19983
  # You can use this parameter to prevent unwanted multiple updates to
18412
19984
  # data, to control costs, or in some cases, to prevent exceeding the
@@ -18460,7 +20032,7 @@ module Aws::Glue
18460
20032
  tracer: tracer
18461
20033
  )
18462
20034
  context[:gem_name] = 'aws-sdk-glue'
18463
- context[:gem_version] = '1.203.0'
20035
+ context[:gem_version] = '1.205.0'
18464
20036
  Seahorse::Client::Request.new(handlers, context)
18465
20037
  end
18466
20038