aws-sdk-gluedatabrew 1.15.0 → 1.19.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,6 +27,7 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::GlueDataBrew
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::GlueDataBrew
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::GlueDataBrew
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -295,7 +303,7 @@ module Aws::GlueDataBrew
295
303
  # seconds to wait when opening a HTTP session before raising a
296
304
  # `Timeout::Error`.
297
305
  #
298
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
299
307
  # number of seconds to wait for response data. This value can
300
308
  # safely be set per-request on the session.
301
309
  #
@@ -311,6 +319,9 @@ module Aws::GlueDataBrew
311
319
  # disables this behaviour. This value can safely be set per
312
320
  # request on the session.
313
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
314
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
315
326
  # HTTP debug output will be sent to the `:logger`.
316
327
  #
@@ -454,6 +465,7 @@ module Aws::GlueDataBrew
454
465
  # s3_input_definition: {
455
466
  # bucket: "Bucket", # required
456
467
  # key: "Key",
468
+ # bucket_owner: "BucketOwner",
457
469
  # },
458
470
  # data_catalog_input_definition: {
459
471
  # catalog_id: "CatalogId",
@@ -462,15 +474,21 @@ module Aws::GlueDataBrew
462
474
  # temp_directory: {
463
475
  # bucket: "Bucket", # required
464
476
  # key: "Key",
477
+ # bucket_owner: "BucketOwner",
465
478
  # },
466
479
  # },
467
480
  # database_input_definition: {
468
481
  # glue_connection_name: "GlueConnectionName", # required
469
- # database_table_name: "DatabaseTableName", # required
482
+ # database_table_name: "DatabaseTableName",
470
483
  # temp_directory: {
471
484
  # bucket: "Bucket", # required
472
485
  # key: "Key",
486
+ # bucket_owner: "BucketOwner",
473
487
  # },
488
+ # query_string: "QueryString",
489
+ # },
490
+ # metadata: {
491
+ # source_arn: "Arn",
474
492
  # },
475
493
  # },
476
494
  # path_options: {
@@ -555,14 +573,18 @@ module Aws::GlueDataBrew
555
573
  # The maximum number of times to retry the job after a job run fails.
556
574
  #
557
575
  # @option params [required, Types::S3Location] :output_location
558
- # Represents an Amazon S3 location (bucket name and object key) where
559
- # DataBrew can read input data, or write output from a job.
576
+ # Represents an Amazon S3 location (bucket name, bucket owner, and
577
+ # object key) where DataBrew can read input data, or write output from a
578
+ # job.
560
579
  #
561
580
  # @option params [Types::ProfileConfiguration] :configuration
562
581
  # Configuration for profile jobs. Used to select columns, do
563
582
  # evaluations, and override default parameters of evaluations. When
564
583
  # configuration is null, the profile job will run with default settings.
565
584
  #
585
+ # @option params [Array<Types::ValidationConfiguration>] :validation_configurations
586
+ # List of validation configurations that are applied to the profile job.
587
+ #
566
588
  # @option params [required, String] :role_arn
567
589
  # The Amazon Resource Name (ARN) of the Identity and Access Management
568
590
  # (IAM) role to be assumed when DataBrew runs the job.
@@ -597,6 +619,7 @@ module Aws::GlueDataBrew
597
619
  # output_location: { # required
598
620
  # bucket: "Bucket", # required
599
621
  # key: "Key",
622
+ # bucket_owner: "BucketOwner",
600
623
  # },
601
624
  # configuration: {
602
625
  # dataset_statistics_configuration: {
@@ -637,7 +660,21 @@ module Aws::GlueDataBrew
637
660
  # },
638
661
  # },
639
662
  # ],
663
+ # entity_detector_configuration: {
664
+ # entity_types: ["EntityType"], # required
665
+ # allowed_statistics: [
666
+ # {
667
+ # statistics: ["Statistic"], # required
668
+ # },
669
+ # ],
670
+ # },
640
671
  # },
672
+ # validation_configurations: [
673
+ # {
674
+ # ruleset_arn: "Arn", # required
675
+ # validation_mode: "CHECK_ALL", # accepts CHECK_ALL
676
+ # },
677
+ # ],
641
678
  # role_arn: "Arn", # required
642
679
  # tags: {
643
680
  # "TagKey" => "TagValue",
@@ -862,6 +899,7 @@ module Aws::GlueDataBrew
862
899
  # location: { # required
863
900
  # bucket: "Bucket", # required
864
901
  # key: "Key",
902
+ # bucket_owner: "BucketOwner",
865
903
  # },
866
904
  # overwrite: false,
867
905
  # format_options: {
@@ -880,12 +918,14 @@ module Aws::GlueDataBrew
880
918
  # location: { # required
881
919
  # bucket: "Bucket", # required
882
920
  # key: "Key",
921
+ # bucket_owner: "BucketOwner",
883
922
  # },
884
923
  # },
885
924
  # database_options: {
886
925
  # temp_directory: {
887
926
  # bucket: "Bucket", # required
888
927
  # key: "Key",
928
+ # bucket_owner: "BucketOwner",
889
929
  # },
890
930
  # table_name: "DatabaseTableName", # required
891
931
  # },
@@ -899,6 +939,7 @@ module Aws::GlueDataBrew
899
939
  # temp_directory: {
900
940
  # bucket: "Bucket", # required
901
941
  # key: "Key",
942
+ # bucket_owner: "BucketOwner",
902
943
  # },
903
944
  # table_name: "DatabaseTableName", # required
904
945
  # },
@@ -930,6 +971,76 @@ module Aws::GlueDataBrew
930
971
  req.send_request(options)
931
972
  end
932
973
 
974
+ # Creates a new ruleset that can be used in a profile job to validate
975
+ # the data quality of a dataset.
976
+ #
977
+ # @option params [required, String] :name
978
+ # The name of the ruleset to be created. Valid characters are
979
+ # alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.
980
+ #
981
+ # @option params [String] :description
982
+ # The description of the ruleset.
983
+ #
984
+ # @option params [required, String] :target_arn
985
+ # The Amazon Resource Name (ARN) of a resource (dataset) that the
986
+ # ruleset is associated with.
987
+ #
988
+ # @option params [required, Array<Types::Rule>] :rules
989
+ # A list of rules that are defined with the ruleset. A rule includes one
990
+ # or more checks to be validated on a DataBrew dataset.
991
+ #
992
+ # @option params [Hash<String,String>] :tags
993
+ # Metadata tags to apply to the ruleset.
994
+ #
995
+ # @return [Types::CreateRulesetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
996
+ #
997
+ # * {Types::CreateRulesetResponse#name #name} => String
998
+ #
999
+ # @example Request syntax with placeholder values
1000
+ #
1001
+ # resp = client.create_ruleset({
1002
+ # name: "RulesetName", # required
1003
+ # description: "RulesetDescription",
1004
+ # target_arn: "Arn", # required
1005
+ # rules: [ # required
1006
+ # {
1007
+ # name: "RuleName", # required
1008
+ # disabled: false,
1009
+ # check_expression: "Expression", # required
1010
+ # substitution_map: {
1011
+ # "ValueReference" => "ConditionValue",
1012
+ # },
1013
+ # threshold: {
1014
+ # value: 1.0, # required
1015
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
1016
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
1017
+ # },
1018
+ # column_selectors: [
1019
+ # {
1020
+ # regex: "ColumnName",
1021
+ # name: "ColumnName",
1022
+ # },
1023
+ # ],
1024
+ # },
1025
+ # ],
1026
+ # tags: {
1027
+ # "TagKey" => "TagValue",
1028
+ # },
1029
+ # })
1030
+ #
1031
+ # @example Response structure
1032
+ #
1033
+ # resp.name #=> String
1034
+ #
1035
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/CreateRuleset AWS API Documentation
1036
+ #
1037
+ # @overload create_ruleset(params = {})
1038
+ # @param [Hash] params ({})
1039
+ def create_ruleset(params = {}, options = {})
1040
+ req = build_request(:create_ruleset, params)
1041
+ req.send_request(options)
1042
+ end
1043
+
933
1044
  # Creates a new schedule for one or more DataBrew jobs. Jobs can be run
934
1045
  # at a specific date and time, or at regular intervals.
935
1046
  #
@@ -1100,6 +1211,34 @@ module Aws::GlueDataBrew
1100
1211
  req.send_request(options)
1101
1212
  end
1102
1213
 
1214
+ # Deletes a ruleset.
1215
+ #
1216
+ # @option params [required, String] :name
1217
+ # The name of the ruleset to be deleted.
1218
+ #
1219
+ # @return [Types::DeleteRulesetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1220
+ #
1221
+ # * {Types::DeleteRulesetResponse#name #name} => String
1222
+ #
1223
+ # @example Request syntax with placeholder values
1224
+ #
1225
+ # resp = client.delete_ruleset({
1226
+ # name: "RulesetName", # required
1227
+ # })
1228
+ #
1229
+ # @example Response structure
1230
+ #
1231
+ # resp.name #=> String
1232
+ #
1233
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DeleteRuleset AWS API Documentation
1234
+ #
1235
+ # @overload delete_ruleset(params = {})
1236
+ # @param [Hash] params ({})
1237
+ def delete_ruleset(params = {}, options = {})
1238
+ req = build_request(:delete_ruleset, params)
1239
+ req.send_request(options)
1240
+ end
1241
+
1103
1242
  # Deletes the specified DataBrew schedule.
1104
1243
  #
1105
1244
  # @option params [required, String] :name
@@ -1170,15 +1309,20 @@ module Aws::GlueDataBrew
1170
1309
  # resp.format_options.csv.header_row #=> Boolean
1171
1310
  # resp.input.s3_input_definition.bucket #=> String
1172
1311
  # resp.input.s3_input_definition.key #=> String
1312
+ # resp.input.s3_input_definition.bucket_owner #=> String
1173
1313
  # resp.input.data_catalog_input_definition.catalog_id #=> String
1174
1314
  # resp.input.data_catalog_input_definition.database_name #=> String
1175
1315
  # resp.input.data_catalog_input_definition.table_name #=> String
1176
1316
  # resp.input.data_catalog_input_definition.temp_directory.bucket #=> String
1177
1317
  # resp.input.data_catalog_input_definition.temp_directory.key #=> String
1318
+ # resp.input.data_catalog_input_definition.temp_directory.bucket_owner #=> String
1178
1319
  # resp.input.database_input_definition.glue_connection_name #=> String
1179
1320
  # resp.input.database_input_definition.database_table_name #=> String
1180
1321
  # resp.input.database_input_definition.temp_directory.bucket #=> String
1181
1322
  # resp.input.database_input_definition.temp_directory.key #=> String
1323
+ # resp.input.database_input_definition.temp_directory.bucket_owner #=> String
1324
+ # resp.input.database_input_definition.query_string #=> String
1325
+ # resp.input.metadata.source_arn #=> String
1182
1326
  # resp.last_modified_date #=> Time
1183
1327
  # resp.last_modified_by #=> String
1184
1328
  # resp.source #=> String, one of "S3", "DATA-CATALOG", "DATABASE"
@@ -1235,6 +1379,7 @@ module Aws::GlueDataBrew
1235
1379
  # * {Types::DescribeJobResponse#database_outputs #database_outputs} => Array&lt;Types::DatabaseOutput&gt;
1236
1380
  # * {Types::DescribeJobResponse#project_name #project_name} => String
1237
1381
  # * {Types::DescribeJobResponse#profile_configuration #profile_configuration} => Types::ProfileConfiguration
1382
+ # * {Types::DescribeJobResponse#validation_configurations #validation_configurations} => Array&lt;Types::ValidationConfiguration&gt;
1238
1383
  # * {Types::DescribeJobResponse#recipe_reference #recipe_reference} => Types::RecipeReference
1239
1384
  # * {Types::DescribeJobResponse#resource_arn #resource_arn} => String
1240
1385
  # * {Types::DescribeJobResponse#role_arn #role_arn} => String
@@ -1269,6 +1414,7 @@ module Aws::GlueDataBrew
1269
1414
  # resp.outputs[0].partition_columns[0] #=> String
1270
1415
  # resp.outputs[0].location.bucket #=> String
1271
1416
  # resp.outputs[0].location.key #=> String
1417
+ # resp.outputs[0].location.bucket_owner #=> String
1272
1418
  # resp.outputs[0].overwrite #=> Boolean
1273
1419
  # resp.outputs[0].format_options.csv.delimiter #=> String
1274
1420
  # resp.data_catalog_outputs #=> Array
@@ -1277,14 +1423,17 @@ module Aws::GlueDataBrew
1277
1423
  # resp.data_catalog_outputs[0].table_name #=> String
1278
1424
  # resp.data_catalog_outputs[0].s3_options.location.bucket #=> String
1279
1425
  # resp.data_catalog_outputs[0].s3_options.location.key #=> String
1426
+ # resp.data_catalog_outputs[0].s3_options.location.bucket_owner #=> String
1280
1427
  # resp.data_catalog_outputs[0].database_options.temp_directory.bucket #=> String
1281
1428
  # resp.data_catalog_outputs[0].database_options.temp_directory.key #=> String
1429
+ # resp.data_catalog_outputs[0].database_options.temp_directory.bucket_owner #=> String
1282
1430
  # resp.data_catalog_outputs[0].database_options.table_name #=> String
1283
1431
  # resp.data_catalog_outputs[0].overwrite #=> Boolean
1284
1432
  # resp.database_outputs #=> Array
1285
1433
  # resp.database_outputs[0].glue_connection_name #=> String
1286
1434
  # resp.database_outputs[0].database_options.temp_directory.bucket #=> String
1287
1435
  # resp.database_outputs[0].database_options.temp_directory.key #=> String
1436
+ # resp.database_outputs[0].database_options.temp_directory.bucket_owner #=> String
1288
1437
  # resp.database_outputs[0].database_options.table_name #=> String
1289
1438
  # resp.database_outputs[0].database_output_mode #=> String, one of "NEW_TABLE"
1290
1439
  # resp.project_name #=> String
@@ -1307,6 +1456,14 @@ module Aws::GlueDataBrew
1307
1456
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].statistic #=> String
1308
1457
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].parameters #=> Hash
1309
1458
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].parameters["ParameterName"] #=> String
1459
+ # resp.profile_configuration.entity_detector_configuration.entity_types #=> Array
1460
+ # resp.profile_configuration.entity_detector_configuration.entity_types[0] #=> String
1461
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics #=> Array
1462
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics[0].statistics #=> Array
1463
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics[0].statistics[0] #=> String
1464
+ # resp.validation_configurations #=> Array
1465
+ # resp.validation_configurations[0].ruleset_arn #=> String
1466
+ # resp.validation_configurations[0].validation_mode #=> String, one of "CHECK_ALL"
1310
1467
  # resp.recipe_reference.name #=> String
1311
1468
  # resp.recipe_reference.recipe_version #=> String
1312
1469
  # resp.resource_arn #=> String
@@ -1343,6 +1500,7 @@ module Aws::GlueDataBrew
1343
1500
  # * {Types::DescribeJobRunResponse#execution_time #execution_time} => Integer
1344
1501
  # * {Types::DescribeJobRunResponse#job_name #job_name} => String
1345
1502
  # * {Types::DescribeJobRunResponse#profile_configuration #profile_configuration} => Types::ProfileConfiguration
1503
+ # * {Types::DescribeJobRunResponse#validation_configurations #validation_configurations} => Array&lt;Types::ValidationConfiguration&gt;
1346
1504
  # * {Types::DescribeJobRunResponse#run_id #run_id} => String
1347
1505
  # * {Types::DescribeJobRunResponse#state #state} => String
1348
1506
  # * {Types::DescribeJobRunResponse#log_subscription #log_subscription} => String
@@ -1389,6 +1547,14 @@ module Aws::GlueDataBrew
1389
1547
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].statistic #=> String
1390
1548
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].parameters #=> Hash
1391
1549
  # resp.profile_configuration.column_statistics_configurations[0].statistics.overrides[0].parameters["ParameterName"] #=> String
1550
+ # resp.profile_configuration.entity_detector_configuration.entity_types #=> Array
1551
+ # resp.profile_configuration.entity_detector_configuration.entity_types[0] #=> String
1552
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics #=> Array
1553
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics[0].statistics #=> Array
1554
+ # resp.profile_configuration.entity_detector_configuration.allowed_statistics[0].statistics[0] #=> String
1555
+ # resp.validation_configurations #=> Array
1556
+ # resp.validation_configurations[0].ruleset_arn #=> String
1557
+ # resp.validation_configurations[0].validation_mode #=> String, one of "CHECK_ALL"
1392
1558
  # resp.run_id #=> String
1393
1559
  # resp.state #=> String, one of "STARTING", "RUNNING", "STOPPING", "STOPPED", "SUCCEEDED", "FAILED", "TIMEOUT"
1394
1560
  # resp.log_subscription #=> String, one of "ENABLE", "DISABLE"
@@ -1400,6 +1566,7 @@ module Aws::GlueDataBrew
1400
1566
  # resp.outputs[0].partition_columns[0] #=> String
1401
1567
  # resp.outputs[0].location.bucket #=> String
1402
1568
  # resp.outputs[0].location.key #=> String
1569
+ # resp.outputs[0].location.bucket_owner #=> String
1403
1570
  # resp.outputs[0].overwrite #=> Boolean
1404
1571
  # resp.outputs[0].format_options.csv.delimiter #=> String
1405
1572
  # resp.data_catalog_outputs #=> Array
@@ -1408,14 +1575,17 @@ module Aws::GlueDataBrew
1408
1575
  # resp.data_catalog_outputs[0].table_name #=> String
1409
1576
  # resp.data_catalog_outputs[0].s3_options.location.bucket #=> String
1410
1577
  # resp.data_catalog_outputs[0].s3_options.location.key #=> String
1578
+ # resp.data_catalog_outputs[0].s3_options.location.bucket_owner #=> String
1411
1579
  # resp.data_catalog_outputs[0].database_options.temp_directory.bucket #=> String
1412
1580
  # resp.data_catalog_outputs[0].database_options.temp_directory.key #=> String
1581
+ # resp.data_catalog_outputs[0].database_options.temp_directory.bucket_owner #=> String
1413
1582
  # resp.data_catalog_outputs[0].database_options.table_name #=> String
1414
1583
  # resp.data_catalog_outputs[0].overwrite #=> Boolean
1415
1584
  # resp.database_outputs #=> Array
1416
1585
  # resp.database_outputs[0].glue_connection_name #=> String
1417
1586
  # resp.database_outputs[0].database_options.temp_directory.bucket #=> String
1418
1587
  # resp.database_outputs[0].database_options.temp_directory.key #=> String
1588
+ # resp.database_outputs[0].database_options.temp_directory.bucket_owner #=> String
1419
1589
  # resp.database_outputs[0].database_options.table_name #=> String
1420
1590
  # resp.database_outputs[0].database_output_mode #=> String, one of "NEW_TABLE"
1421
1591
  # resp.recipe_reference.name #=> String
@@ -1556,6 +1726,64 @@ module Aws::GlueDataBrew
1556
1726
  req.send_request(options)
1557
1727
  end
1558
1728
 
1729
+ # Retrieves detailed information about the ruleset.
1730
+ #
1731
+ # @option params [required, String] :name
1732
+ # The name of the ruleset to be described.
1733
+ #
1734
+ # @return [Types::DescribeRulesetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1735
+ #
1736
+ # * {Types::DescribeRulesetResponse#name #name} => String
1737
+ # * {Types::DescribeRulesetResponse#description #description} => String
1738
+ # * {Types::DescribeRulesetResponse#target_arn #target_arn} => String
1739
+ # * {Types::DescribeRulesetResponse#rules #rules} => Array&lt;Types::Rule&gt;
1740
+ # * {Types::DescribeRulesetResponse#create_date #create_date} => Time
1741
+ # * {Types::DescribeRulesetResponse#created_by #created_by} => String
1742
+ # * {Types::DescribeRulesetResponse#last_modified_by #last_modified_by} => String
1743
+ # * {Types::DescribeRulesetResponse#last_modified_date #last_modified_date} => Time
1744
+ # * {Types::DescribeRulesetResponse#resource_arn #resource_arn} => String
1745
+ # * {Types::DescribeRulesetResponse#tags #tags} => Hash&lt;String,String&gt;
1746
+ #
1747
+ # @example Request syntax with placeholder values
1748
+ #
1749
+ # resp = client.describe_ruleset({
1750
+ # name: "RulesetName", # required
1751
+ # })
1752
+ #
1753
+ # @example Response structure
1754
+ #
1755
+ # resp.name #=> String
1756
+ # resp.description #=> String
1757
+ # resp.target_arn #=> String
1758
+ # resp.rules #=> Array
1759
+ # resp.rules[0].name #=> String
1760
+ # resp.rules[0].disabled #=> Boolean
1761
+ # resp.rules[0].check_expression #=> String
1762
+ # resp.rules[0].substitution_map #=> Hash
1763
+ # resp.rules[0].substitution_map["ValueReference"] #=> String
1764
+ # resp.rules[0].threshold.value #=> Float
1765
+ # resp.rules[0].threshold.type #=> String, one of "GREATER_THAN_OR_EQUAL", "LESS_THAN_OR_EQUAL", "GREATER_THAN", "LESS_THAN"
1766
+ # resp.rules[0].threshold.unit #=> String, one of "COUNT", "PERCENTAGE"
1767
+ # resp.rules[0].column_selectors #=> Array
1768
+ # resp.rules[0].column_selectors[0].regex #=> String
1769
+ # resp.rules[0].column_selectors[0].name #=> String
1770
+ # resp.create_date #=> Time
1771
+ # resp.created_by #=> String
1772
+ # resp.last_modified_by #=> String
1773
+ # resp.last_modified_date #=> Time
1774
+ # resp.resource_arn #=> String
1775
+ # resp.tags #=> Hash
1776
+ # resp.tags["TagKey"] #=> String
1777
+ #
1778
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DescribeRuleset AWS API Documentation
1779
+ #
1780
+ # @overload describe_ruleset(params = {})
1781
+ # @param [Hash] params ({})
1782
+ def describe_ruleset(params = {}, options = {})
1783
+ req = build_request(:describe_ruleset, params)
1784
+ req.send_request(options)
1785
+ end
1786
+
1559
1787
  # Returns the definition of a specific DataBrew schedule.
1560
1788
  #
1561
1789
  # @option params [required, String] :name
@@ -1643,15 +1871,20 @@ module Aws::GlueDataBrew
1643
1871
  # resp.datasets[0].format_options.csv.header_row #=> Boolean
1644
1872
  # resp.datasets[0].input.s3_input_definition.bucket #=> String
1645
1873
  # resp.datasets[0].input.s3_input_definition.key #=> String
1874
+ # resp.datasets[0].input.s3_input_definition.bucket_owner #=> String
1646
1875
  # resp.datasets[0].input.data_catalog_input_definition.catalog_id #=> String
1647
1876
  # resp.datasets[0].input.data_catalog_input_definition.database_name #=> String
1648
1877
  # resp.datasets[0].input.data_catalog_input_definition.table_name #=> String
1649
1878
  # resp.datasets[0].input.data_catalog_input_definition.temp_directory.bucket #=> String
1650
1879
  # resp.datasets[0].input.data_catalog_input_definition.temp_directory.key #=> String
1880
+ # resp.datasets[0].input.data_catalog_input_definition.temp_directory.bucket_owner #=> String
1651
1881
  # resp.datasets[0].input.database_input_definition.glue_connection_name #=> String
1652
1882
  # resp.datasets[0].input.database_input_definition.database_table_name #=> String
1653
1883
  # resp.datasets[0].input.database_input_definition.temp_directory.bucket #=> String
1654
1884
  # resp.datasets[0].input.database_input_definition.temp_directory.key #=> String
1885
+ # resp.datasets[0].input.database_input_definition.temp_directory.bucket_owner #=> String
1886
+ # resp.datasets[0].input.database_input_definition.query_string #=> String
1887
+ # resp.datasets[0].input.metadata.source_arn #=> String
1655
1888
  # resp.datasets[0].last_modified_date #=> Time
1656
1889
  # resp.datasets[0].last_modified_by #=> String
1657
1890
  # resp.datasets[0].source #=> String, one of "S3", "DATA-CATALOG", "DATABASE"
@@ -1732,6 +1965,7 @@ module Aws::GlueDataBrew
1732
1965
  # resp.job_runs[0].outputs[0].partition_columns[0] #=> String
1733
1966
  # resp.job_runs[0].outputs[0].location.bucket #=> String
1734
1967
  # resp.job_runs[0].outputs[0].location.key #=> String
1968
+ # resp.job_runs[0].outputs[0].location.bucket_owner #=> String
1735
1969
  # resp.job_runs[0].outputs[0].overwrite #=> Boolean
1736
1970
  # resp.job_runs[0].outputs[0].format_options.csv.delimiter #=> String
1737
1971
  # resp.job_runs[0].data_catalog_outputs #=> Array
@@ -1740,14 +1974,17 @@ module Aws::GlueDataBrew
1740
1974
  # resp.job_runs[0].data_catalog_outputs[0].table_name #=> String
1741
1975
  # resp.job_runs[0].data_catalog_outputs[0].s3_options.location.bucket #=> String
1742
1976
  # resp.job_runs[0].data_catalog_outputs[0].s3_options.location.key #=> String
1977
+ # resp.job_runs[0].data_catalog_outputs[0].s3_options.location.bucket_owner #=> String
1743
1978
  # resp.job_runs[0].data_catalog_outputs[0].database_options.temp_directory.bucket #=> String
1744
1979
  # resp.job_runs[0].data_catalog_outputs[0].database_options.temp_directory.key #=> String
1980
+ # resp.job_runs[0].data_catalog_outputs[0].database_options.temp_directory.bucket_owner #=> String
1745
1981
  # resp.job_runs[0].data_catalog_outputs[0].database_options.table_name #=> String
1746
1982
  # resp.job_runs[0].data_catalog_outputs[0].overwrite #=> Boolean
1747
1983
  # resp.job_runs[0].database_outputs #=> Array
1748
1984
  # resp.job_runs[0].database_outputs[0].glue_connection_name #=> String
1749
1985
  # resp.job_runs[0].database_outputs[0].database_options.temp_directory.bucket #=> String
1750
1986
  # resp.job_runs[0].database_outputs[0].database_options.temp_directory.key #=> String
1987
+ # resp.job_runs[0].database_outputs[0].database_options.temp_directory.bucket_owner #=> String
1751
1988
  # resp.job_runs[0].database_outputs[0].database_options.table_name #=> String
1752
1989
  # resp.job_runs[0].database_outputs[0].database_output_mode #=> String, one of "NEW_TABLE"
1753
1990
  # resp.job_runs[0].recipe_reference.name #=> String
@@ -1756,6 +1993,9 @@ module Aws::GlueDataBrew
1756
1993
  # resp.job_runs[0].started_on #=> Time
1757
1994
  # resp.job_runs[0].job_sample.mode #=> String, one of "FULL_DATASET", "CUSTOM_ROWS"
1758
1995
  # resp.job_runs[0].job_sample.size #=> Integer
1996
+ # resp.job_runs[0].validation_configurations #=> Array
1997
+ # resp.job_runs[0].validation_configurations[0].ruleset_arn #=> String
1998
+ # resp.job_runs[0].validation_configurations[0].validation_mode #=> String, one of "CHECK_ALL"
1759
1999
  # resp.next_token #=> String
1760
2000
  #
1761
2001
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ListJobRuns AWS API Documentation
@@ -1825,6 +2065,7 @@ module Aws::GlueDataBrew
1825
2065
  # resp.jobs[0].outputs[0].partition_columns[0] #=> String
1826
2066
  # resp.jobs[0].outputs[0].location.bucket #=> String
1827
2067
  # resp.jobs[0].outputs[0].location.key #=> String
2068
+ # resp.jobs[0].outputs[0].location.bucket_owner #=> String
1828
2069
  # resp.jobs[0].outputs[0].overwrite #=> Boolean
1829
2070
  # resp.jobs[0].outputs[0].format_options.csv.delimiter #=> String
1830
2071
  # resp.jobs[0].data_catalog_outputs #=> Array
@@ -1833,14 +2074,17 @@ module Aws::GlueDataBrew
1833
2074
  # resp.jobs[0].data_catalog_outputs[0].table_name #=> String
1834
2075
  # resp.jobs[0].data_catalog_outputs[0].s3_options.location.bucket #=> String
1835
2076
  # resp.jobs[0].data_catalog_outputs[0].s3_options.location.key #=> String
2077
+ # resp.jobs[0].data_catalog_outputs[0].s3_options.location.bucket_owner #=> String
1836
2078
  # resp.jobs[0].data_catalog_outputs[0].database_options.temp_directory.bucket #=> String
1837
2079
  # resp.jobs[0].data_catalog_outputs[0].database_options.temp_directory.key #=> String
2080
+ # resp.jobs[0].data_catalog_outputs[0].database_options.temp_directory.bucket_owner #=> String
1838
2081
  # resp.jobs[0].data_catalog_outputs[0].database_options.table_name #=> String
1839
2082
  # resp.jobs[0].data_catalog_outputs[0].overwrite #=> Boolean
1840
2083
  # resp.jobs[0].database_outputs #=> Array
1841
2084
  # resp.jobs[0].database_outputs[0].glue_connection_name #=> String
1842
2085
  # resp.jobs[0].database_outputs[0].database_options.temp_directory.bucket #=> String
1843
2086
  # resp.jobs[0].database_outputs[0].database_options.temp_directory.key #=> String
2087
+ # resp.jobs[0].database_outputs[0].database_options.temp_directory.bucket_owner #=> String
1844
2088
  # resp.jobs[0].database_outputs[0].database_options.table_name #=> String
1845
2089
  # resp.jobs[0].database_outputs[0].database_output_mode #=> String, one of "NEW_TABLE"
1846
2090
  # resp.jobs[0].project_name #=> String
@@ -1853,6 +2097,9 @@ module Aws::GlueDataBrew
1853
2097
  # resp.jobs[0].tags["TagKey"] #=> String
1854
2098
  # resp.jobs[0].job_sample.mode #=> String, one of "FULL_DATASET", "CUSTOM_ROWS"
1855
2099
  # resp.jobs[0].job_sample.size #=> Integer
2100
+ # resp.jobs[0].validation_configurations #=> Array
2101
+ # resp.jobs[0].validation_configurations[0].ruleset_arn #=> String
2102
+ # resp.jobs[0].validation_configurations[0].validation_mode #=> String, one of "CHECK_ALL"
1856
2103
  # resp.next_token #=> String
1857
2104
  #
1858
2105
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ListJobs AWS API Documentation
@@ -2046,6 +2293,64 @@ module Aws::GlueDataBrew
2046
2293
  req.send_request(options)
2047
2294
  end
2048
2295
 
2296
+ # List all rulesets available in the current account or rulesets
2297
+ # associated with a specific resource (dataset).
2298
+ #
2299
+ # @option params [String] :target_arn
2300
+ # The Amazon Resource Name (ARN) of a resource (dataset). Using this
2301
+ # parameter indicates to return only those rulesets that are associated
2302
+ # with the specified resource.
2303
+ #
2304
+ # @option params [Integer] :max_results
2305
+ # The maximum number of results to return in this request.
2306
+ #
2307
+ # @option params [String] :next_token
2308
+ # A token generated by DataBrew that specifies where to continue
2309
+ # pagination if a previous request was truncated. To get the next set of
2310
+ # pages, pass in the NextToken value from the response object of the
2311
+ # previous page call.
2312
+ #
2313
+ # @return [Types::ListRulesetsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2314
+ #
2315
+ # * {Types::ListRulesetsResponse#rulesets #rulesets} => Array&lt;Types::RulesetItem&gt;
2316
+ # * {Types::ListRulesetsResponse#next_token #next_token} => String
2317
+ #
2318
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2319
+ #
2320
+ # @example Request syntax with placeholder values
2321
+ #
2322
+ # resp = client.list_rulesets({
2323
+ # target_arn: "Arn",
2324
+ # max_results: 1,
2325
+ # next_token: "NextToken",
2326
+ # })
2327
+ #
2328
+ # @example Response structure
2329
+ #
2330
+ # resp.rulesets #=> Array
2331
+ # resp.rulesets[0].account_id #=> String
2332
+ # resp.rulesets[0].created_by #=> String
2333
+ # resp.rulesets[0].create_date #=> Time
2334
+ # resp.rulesets[0].description #=> String
2335
+ # resp.rulesets[0].last_modified_by #=> String
2336
+ # resp.rulesets[0].last_modified_date #=> Time
2337
+ # resp.rulesets[0].name #=> String
2338
+ # resp.rulesets[0].resource_arn #=> String
2339
+ # resp.rulesets[0].rule_count #=> Integer
2340
+ # resp.rulesets[0].tags #=> Hash
2341
+ # resp.rulesets[0].tags["TagKey"] #=> String
2342
+ # resp.rulesets[0].target_arn #=> String
2343
+ # resp.next_token #=> String
2344
+ #
2345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ListRulesets AWS API Documentation
2346
+ #
2347
+ # @overload list_rulesets(params = {})
2348
+ # @param [Hash] params ({})
2349
+ def list_rulesets(params = {}, options = {})
2350
+ req = build_request(:list_rulesets, params)
2351
+ req.send_request(options)
2352
+ end
2353
+
2049
2354
  # Lists the DataBrew schedules that are defined.
2050
2355
  #
2051
2356
  # @option params [String] :job_name
@@ -2219,6 +2524,9 @@ module Aws::GlueDataBrew
2219
2524
  # start_column_index: 1, # required
2220
2525
  # column_range: 1,
2221
2526
  # hidden_columns: ["ColumnName"],
2527
+ # start_row_index: 1,
2528
+ # row_range: 1,
2529
+ # analytics: "ENABLE", # accepts ENABLE, DISABLE
2222
2530
  # },
2223
2531
  # })
2224
2532
  #
@@ -2439,6 +2747,7 @@ module Aws::GlueDataBrew
2439
2747
  # s3_input_definition: {
2440
2748
  # bucket: "Bucket", # required
2441
2749
  # key: "Key",
2750
+ # bucket_owner: "BucketOwner",
2442
2751
  # },
2443
2752
  # data_catalog_input_definition: {
2444
2753
  # catalog_id: "CatalogId",
@@ -2447,15 +2756,21 @@ module Aws::GlueDataBrew
2447
2756
  # temp_directory: {
2448
2757
  # bucket: "Bucket", # required
2449
2758
  # key: "Key",
2759
+ # bucket_owner: "BucketOwner",
2450
2760
  # },
2451
2761
  # },
2452
2762
  # database_input_definition: {
2453
2763
  # glue_connection_name: "GlueConnectionName", # required
2454
- # database_table_name: "DatabaseTableName", # required
2764
+ # database_table_name: "DatabaseTableName",
2455
2765
  # temp_directory: {
2456
2766
  # bucket: "Bucket", # required
2457
2767
  # key: "Key",
2768
+ # bucket_owner: "BucketOwner",
2458
2769
  # },
2770
+ # query_string: "QueryString",
2771
+ # },
2772
+ # metadata: {
2773
+ # source_arn: "Arn",
2459
2774
  # },
2460
2775
  # },
2461
2776
  # path_options: {
@@ -2537,8 +2852,12 @@ module Aws::GlueDataBrew
2537
2852
  # The maximum number of times to retry the job after a job run fails.
2538
2853
  #
2539
2854
  # @option params [required, Types::S3Location] :output_location
2540
- # Represents an Amazon S3 location (bucket name and object key) where
2541
- # DataBrew can read input data, or write output from a job.
2855
+ # Represents an Amazon S3 location (bucket name, bucket owner, and
2856
+ # object key) where DataBrew can read input data, or write output from a
2857
+ # job.
2858
+ #
2859
+ # @option params [Array<Types::ValidationConfiguration>] :validation_configurations
2860
+ # List of validation configurations that are applied to the profile job.
2542
2861
  #
2543
2862
  # @option params [required, String] :role_arn
2544
2863
  # The Amazon Resource Name (ARN) of the Identity and Access Management
@@ -2601,6 +2920,14 @@ module Aws::GlueDataBrew
2601
2920
  # },
2602
2921
  # },
2603
2922
  # ],
2923
+ # entity_detector_configuration: {
2924
+ # entity_types: ["EntityType"], # required
2925
+ # allowed_statistics: [
2926
+ # {
2927
+ # statistics: ["Statistic"], # required
2928
+ # },
2929
+ # ],
2930
+ # },
2604
2931
  # },
2605
2932
  # encryption_key_arn: "EncryptionKeyArn",
2606
2933
  # encryption_mode: "SSE-KMS", # accepts SSE-KMS, SSE-S3
@@ -2611,7 +2938,14 @@ module Aws::GlueDataBrew
2611
2938
  # output_location: { # required
2612
2939
  # bucket: "Bucket", # required
2613
2940
  # key: "Key",
2941
+ # bucket_owner: "BucketOwner",
2614
2942
  # },
2943
+ # validation_configurations: [
2944
+ # {
2945
+ # ruleset_arn: "Arn", # required
2946
+ # validation_mode: "CHECK_ALL", # accepts CHECK_ALL
2947
+ # },
2948
+ # ],
2615
2949
  # role_arn: "Arn", # required
2616
2950
  # timeout: 1,
2617
2951
  # job_sample: {
@@ -2797,6 +3131,7 @@ module Aws::GlueDataBrew
2797
3131
  # location: { # required
2798
3132
  # bucket: "Bucket", # required
2799
3133
  # key: "Key",
3134
+ # bucket_owner: "BucketOwner",
2800
3135
  # },
2801
3136
  # overwrite: false,
2802
3137
  # format_options: {
@@ -2815,12 +3150,14 @@ module Aws::GlueDataBrew
2815
3150
  # location: { # required
2816
3151
  # bucket: "Bucket", # required
2817
3152
  # key: "Key",
3153
+ # bucket_owner: "BucketOwner",
2818
3154
  # },
2819
3155
  # },
2820
3156
  # database_options: {
2821
3157
  # temp_directory: {
2822
3158
  # bucket: "Bucket", # required
2823
3159
  # key: "Key",
3160
+ # bucket_owner: "BucketOwner",
2824
3161
  # },
2825
3162
  # table_name: "DatabaseTableName", # required
2826
3163
  # },
@@ -2834,6 +3171,7 @@ module Aws::GlueDataBrew
2834
3171
  # temp_directory: {
2835
3172
  # bucket: "Bucket", # required
2836
3173
  # key: "Key",
3174
+ # bucket_owner: "BucketOwner",
2837
3175
  # },
2838
3176
  # table_name: "DatabaseTableName", # required
2839
3177
  # },
@@ -2857,6 +3195,63 @@ module Aws::GlueDataBrew
2857
3195
  req.send_request(options)
2858
3196
  end
2859
3197
 
3198
+ # Updates specified ruleset.
3199
+ #
3200
+ # @option params [required, String] :name
3201
+ # The name of the ruleset to be updated.
3202
+ #
3203
+ # @option params [String] :description
3204
+ # The description of the ruleset.
3205
+ #
3206
+ # @option params [required, Array<Types::Rule>] :rules
3207
+ # A list of rules that are defined with the ruleset. A rule includes one
3208
+ # or more checks to be validated on a DataBrew dataset.
3209
+ #
3210
+ # @return [Types::UpdateRulesetResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3211
+ #
3212
+ # * {Types::UpdateRulesetResponse#name #name} => String
3213
+ #
3214
+ # @example Request syntax with placeholder values
3215
+ #
3216
+ # resp = client.update_ruleset({
3217
+ # name: "RulesetName", # required
3218
+ # description: "RulesetDescription",
3219
+ # rules: [ # required
3220
+ # {
3221
+ # name: "RuleName", # required
3222
+ # disabled: false,
3223
+ # check_expression: "Expression", # required
3224
+ # substitution_map: {
3225
+ # "ValueReference" => "ConditionValue",
3226
+ # },
3227
+ # threshold: {
3228
+ # value: 1.0, # required
3229
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
3230
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
3231
+ # },
3232
+ # column_selectors: [
3233
+ # {
3234
+ # regex: "ColumnName",
3235
+ # name: "ColumnName",
3236
+ # },
3237
+ # ],
3238
+ # },
3239
+ # ],
3240
+ # })
3241
+ #
3242
+ # @example Response structure
3243
+ #
3244
+ # resp.name #=> String
3245
+ #
3246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/UpdateRuleset AWS API Documentation
3247
+ #
3248
+ # @overload update_ruleset(params = {})
3249
+ # @param [Hash] params ({})
3250
+ def update_ruleset(params = {}, options = {})
3251
+ req = build_request(:update_ruleset, params)
3252
+ req.send_request(options)
3253
+ end
3254
+
2860
3255
  # Modifies the definition of an existing DataBrew schedule.
2861
3256
  #
2862
3257
  # @option params [Array<String>] :job_names
@@ -2912,7 +3307,7 @@ module Aws::GlueDataBrew
2912
3307
  params: params,
2913
3308
  config: config)
2914
3309
  context[:gem_name] = 'aws-sdk-gluedatabrew'
2915
- context[:gem_version] = '1.15.0'
3310
+ context[:gem_version] = '1.19.0'
2916
3311
  Seahorse::Client::Request.new(handlers, context)
2917
3312
  end
2918
3313