aws-sdk-gluedatabrew 1.13.0 → 1.17.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.
@@ -23,6 +23,30 @@ module Aws::GlueDataBrew
23
23
  include Aws::Structure
24
24
  end
25
25
 
26
+ # Configuration of statistics that are allowed to be run on columns that
27
+ # contain detected entities. When undefined, no statistics will be
28
+ # computed on columns that contain detected entities.
29
+ #
30
+ # @note When making an API call, you may pass AllowedStatistics
31
+ # data as a hash:
32
+ #
33
+ # {
34
+ # statistics: ["Statistic"], # required
35
+ # }
36
+ #
37
+ # @!attribute [rw] statistics
38
+ # One or more column statistics to allow for columns that contain
39
+ # detected entities.
40
+ # @return [Array<String>]
41
+ #
42
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/AllowedStatistics AWS API Documentation
43
+ #
44
+ class AllowedStatistics < Struct.new(
45
+ :statistics)
46
+ SENSITIVE = []
47
+ include Aws::Structure
48
+ end
49
+
26
50
  # @note When making an API call, you may pass BatchDeleteRecipeVersionRequest
27
51
  # data as a hash:
28
52
  #
@@ -240,11 +264,15 @@ module Aws::GlueDataBrew
240
264
  # },
241
265
  # database_input_definition: {
242
266
  # glue_connection_name: "GlueConnectionName", # required
243
- # database_table_name: "DatabaseTableName", # required
267
+ # database_table_name: "DatabaseTableName",
244
268
  # temp_directory: {
245
269
  # bucket: "Bucket", # required
246
270
  # key: "Key",
247
271
  # },
272
+ # query_string: "QueryString",
273
+ # },
274
+ # metadata: {
275
+ # source_arn: "Arn",
248
276
  # },
249
277
  # },
250
278
  # path_options: {
@@ -391,7 +419,21 @@ module Aws::GlueDataBrew
391
419
  # },
392
420
  # },
393
421
  # ],
422
+ # entity_detector_configuration: {
423
+ # entity_types: ["EntityType"], # required
424
+ # allowed_statistics: [
425
+ # {
426
+ # statistics: ["Statistic"], # required
427
+ # },
428
+ # ],
429
+ # },
394
430
  # },
431
+ # validation_configurations: [
432
+ # {
433
+ # ruleset_arn: "Arn", # required
434
+ # validation_mode: "CHECK_ALL", # accepts CHECK_ALL
435
+ # },
436
+ # ],
395
437
  # role_arn: "Arn", # required
396
438
  # tags: {
397
439
  # "TagKey" => "TagValue",
@@ -453,6 +495,11 @@ module Aws::GlueDataBrew
453
495
  # settings.
454
496
  # @return [Types::ProfileConfiguration]
455
497
  #
498
+ # @!attribute [rw] validation_configurations
499
+ # List of validation configurations that are applied to the profile
500
+ # job.
501
+ # @return [Array<Types::ValidationConfiguration>]
502
+ #
456
503
  # @!attribute [rw] role_arn
457
504
  # The Amazon Resource Name (ARN) of the Identity and Access Management
458
505
  # (IAM) role to be assumed when DataBrew runs the job.
@@ -487,6 +534,7 @@ module Aws::GlueDataBrew
487
534
  :max_retries,
488
535
  :output_location,
489
536
  :configuration,
537
+ :validation_configurations,
490
538
  :role_arn,
491
539
  :tags,
492
540
  :timeout,
@@ -829,6 +877,86 @@ module Aws::GlueDataBrew
829
877
  include Aws::Structure
830
878
  end
831
879
 
880
+ # @note When making an API call, you may pass CreateRulesetRequest
881
+ # data as a hash:
882
+ #
883
+ # {
884
+ # name: "RulesetName", # required
885
+ # description: "RulesetDescription",
886
+ # target_arn: "Arn", # required
887
+ # rules: [ # required
888
+ # {
889
+ # name: "RuleName", # required
890
+ # disabled: false,
891
+ # check_expression: "Expression", # required
892
+ # substitution_map: {
893
+ # "ValueReference" => "ConditionValue",
894
+ # },
895
+ # threshold: {
896
+ # value: 1.0, # required
897
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
898
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
899
+ # },
900
+ # column_selectors: [
901
+ # {
902
+ # regex: "ColumnName",
903
+ # name: "ColumnName",
904
+ # },
905
+ # ],
906
+ # },
907
+ # ],
908
+ # tags: {
909
+ # "TagKey" => "TagValue",
910
+ # },
911
+ # }
912
+ #
913
+ # @!attribute [rw] name
914
+ # The name of the ruleset to be created. Valid characters are
915
+ # alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.
916
+ # @return [String]
917
+ #
918
+ # @!attribute [rw] description
919
+ # The description of the ruleset.
920
+ # @return [String]
921
+ #
922
+ # @!attribute [rw] target_arn
923
+ # The Amazon Resource Name (ARN) of a resource (dataset) that the
924
+ # ruleset is associated with.
925
+ # @return [String]
926
+ #
927
+ # @!attribute [rw] rules
928
+ # A list of rules that are defined with the ruleset. A rule includes
929
+ # one or more checks to be validated on a DataBrew dataset.
930
+ # @return [Array<Types::Rule>]
931
+ #
932
+ # @!attribute [rw] tags
933
+ # Metadata tags to apply to the ruleset.
934
+ # @return [Hash<String,String>]
935
+ #
936
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/CreateRulesetRequest AWS API Documentation
937
+ #
938
+ class CreateRulesetRequest < Struct.new(
939
+ :name,
940
+ :description,
941
+ :target_arn,
942
+ :rules,
943
+ :tags)
944
+ SENSITIVE = []
945
+ include Aws::Structure
946
+ end
947
+
948
+ # @!attribute [rw] name
949
+ # The unique name of the created ruleset.
950
+ # @return [String]
951
+ #
952
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/CreateRulesetResponse AWS API Documentation
953
+ #
954
+ class CreateRulesetResponse < Struct.new(
955
+ :name)
956
+ SENSITIVE = []
957
+ include Aws::Structure
958
+ end
959
+
832
960
  # @note When making an API call, you may pass CreateScheduleRequest
833
961
  # data as a hash:
834
962
  #
@@ -1063,11 +1191,12 @@ module Aws::GlueDataBrew
1063
1191
  #
1064
1192
  # {
1065
1193
  # glue_connection_name: "GlueConnectionName", # required
1066
- # database_table_name: "DatabaseTableName", # required
1194
+ # database_table_name: "DatabaseTableName",
1067
1195
  # temp_directory: {
1068
1196
  # bucket: "Bucket", # required
1069
1197
  # key: "Key",
1070
1198
  # },
1199
+ # query_string: "QueryString",
1071
1200
  # }
1072
1201
  #
1073
1202
  # @!attribute [rw] glue_connection_name
@@ -1084,12 +1213,18 @@ module Aws::GlueDataBrew
1084
1213
  # DataBrew can read input data, or write output from a job.
1085
1214
  # @return [Types::S3Location]
1086
1215
  #
1216
+ # @!attribute [rw] query_string
1217
+ # Custom SQL to run against the provided Glue connection. This SQL
1218
+ # will be used as the input for DataBrew projects and jobs.
1219
+ # @return [String]
1220
+ #
1087
1221
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DatabaseInputDefinition AWS API Documentation
1088
1222
  #
1089
1223
  class DatabaseInputDefinition < Struct.new(
1090
1224
  :glue_connection_name,
1091
1225
  :database_table_name,
1092
- :temp_directory)
1226
+ :temp_directory,
1227
+ :query_string)
1093
1228
  SENSITIVE = []
1094
1229
  include Aws::Structure
1095
1230
  end
@@ -1489,6 +1624,37 @@ module Aws::GlueDataBrew
1489
1624
  include Aws::Structure
1490
1625
  end
1491
1626
 
1627
+ # @note When making an API call, you may pass DeleteRulesetRequest
1628
+ # data as a hash:
1629
+ #
1630
+ # {
1631
+ # name: "RulesetName", # required
1632
+ # }
1633
+ #
1634
+ # @!attribute [rw] name
1635
+ # The name of the ruleset to be deleted.
1636
+ # @return [String]
1637
+ #
1638
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DeleteRulesetRequest AWS API Documentation
1639
+ #
1640
+ class DeleteRulesetRequest < Struct.new(
1641
+ :name)
1642
+ SENSITIVE = []
1643
+ include Aws::Structure
1644
+ end
1645
+
1646
+ # @!attribute [rw] name
1647
+ # The name of the deleted ruleset.
1648
+ # @return [String]
1649
+ #
1650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DeleteRulesetResponse AWS API Documentation
1651
+ #
1652
+ class DeleteRulesetResponse < Struct.new(
1653
+ :name)
1654
+ SENSITIVE = []
1655
+ include Aws::Structure
1656
+ end
1657
+
1492
1658
  # @note When making an API call, you may pass DeleteScheduleRequest
1493
1659
  # data as a hash:
1494
1660
  #
@@ -1718,6 +1884,11 @@ module Aws::GlueDataBrew
1718
1884
  # settings.
1719
1885
  # @return [Types::ProfileConfiguration]
1720
1886
  #
1887
+ # @!attribute [rw] validation_configurations
1888
+ # List of validation configurations that are applied to the profile
1889
+ # job.
1890
+ # @return [Array<Types::ValidationConfiguration>]
1891
+ #
1721
1892
  # @!attribute [rw] recipe_reference
1722
1893
  # Represents the name and version of a DataBrew recipe.
1723
1894
  # @return [Types::RecipeReference]
@@ -1765,6 +1936,7 @@ module Aws::GlueDataBrew
1765
1936
  :database_outputs,
1766
1937
  :project_name,
1767
1938
  :profile_configuration,
1939
+ :validation_configurations,
1768
1940
  :recipe_reference,
1769
1941
  :resource_arn,
1770
1942
  :role_arn,
@@ -1833,6 +2005,11 @@ module Aws::GlueDataBrew
1833
2005
  # settings.
1834
2006
  # @return [Types::ProfileConfiguration]
1835
2007
  #
2008
+ # @!attribute [rw] validation_configurations
2009
+ # List of validation configurations that are applied to the profile
2010
+ # job.
2011
+ # @return [Array<Types::ValidationConfiguration>]
2012
+ #
1836
2013
  # @!attribute [rw] run_id
1837
2014
  # The unique identifier of the job run.
1838
2015
  # @return [String]
@@ -1894,6 +2071,7 @@ module Aws::GlueDataBrew
1894
2071
  :execution_time,
1895
2072
  :job_name,
1896
2073
  :profile_configuration,
2074
+ :validation_configurations,
1897
2075
  :run_id,
1898
2076
  :state,
1899
2077
  :log_subscription,
@@ -2116,6 +2294,85 @@ module Aws::GlueDataBrew
2116
2294
  include Aws::Structure
2117
2295
  end
2118
2296
 
2297
+ # @note When making an API call, you may pass DescribeRulesetRequest
2298
+ # data as a hash:
2299
+ #
2300
+ # {
2301
+ # name: "RulesetName", # required
2302
+ # }
2303
+ #
2304
+ # @!attribute [rw] name
2305
+ # The name of the ruleset to be described.
2306
+ # @return [String]
2307
+ #
2308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DescribeRulesetRequest AWS API Documentation
2309
+ #
2310
+ class DescribeRulesetRequest < Struct.new(
2311
+ :name)
2312
+ SENSITIVE = []
2313
+ include Aws::Structure
2314
+ end
2315
+
2316
+ # @!attribute [rw] name
2317
+ # The name of the ruleset.
2318
+ # @return [String]
2319
+ #
2320
+ # @!attribute [rw] description
2321
+ # The description of the ruleset.
2322
+ # @return [String]
2323
+ #
2324
+ # @!attribute [rw] target_arn
2325
+ # The Amazon Resource Name (ARN) of a resource (dataset) that the
2326
+ # ruleset is associated with.
2327
+ # @return [String]
2328
+ #
2329
+ # @!attribute [rw] rules
2330
+ # A list of rules that are defined with the ruleset. A rule includes
2331
+ # one or more checks to be validated on a DataBrew dataset.
2332
+ # @return [Array<Types::Rule>]
2333
+ #
2334
+ # @!attribute [rw] create_date
2335
+ # The date and time that the ruleset was created.
2336
+ # @return [Time]
2337
+ #
2338
+ # @!attribute [rw] created_by
2339
+ # The Amazon Resource Name (ARN) of the user who created the ruleset.
2340
+ # @return [String]
2341
+ #
2342
+ # @!attribute [rw] last_modified_by
2343
+ # The Amazon Resource Name (ARN) of the user who last modified the
2344
+ # ruleset.
2345
+ # @return [String]
2346
+ #
2347
+ # @!attribute [rw] last_modified_date
2348
+ # The modification date and time of the ruleset.
2349
+ # @return [Time]
2350
+ #
2351
+ # @!attribute [rw] resource_arn
2352
+ # The Amazon Resource Name (ARN) for the ruleset.
2353
+ # @return [String]
2354
+ #
2355
+ # @!attribute [rw] tags
2356
+ # Metadata tags that have been applied to the ruleset.
2357
+ # @return [Hash<String,String>]
2358
+ #
2359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/DescribeRulesetResponse AWS API Documentation
2360
+ #
2361
+ class DescribeRulesetResponse < Struct.new(
2362
+ :name,
2363
+ :description,
2364
+ :target_arn,
2365
+ :rules,
2366
+ :create_date,
2367
+ :created_by,
2368
+ :last_modified_by,
2369
+ :last_modified_date,
2370
+ :resource_arn,
2371
+ :tags)
2372
+ SENSITIVE = []
2373
+ include Aws::Structure
2374
+ end
2375
+
2119
2376
  # @note When making an API call, you may pass DescribeScheduleRequest
2120
2377
  # data as a hash:
2121
2378
  #
@@ -2195,6 +2452,81 @@ module Aws::GlueDataBrew
2195
2452
  include Aws::Structure
2196
2453
  end
2197
2454
 
2455
+ # Configuration of entity detection for a profile job. When undefined,
2456
+ # entity detection is disabled.
2457
+ #
2458
+ # @note When making an API call, you may pass EntityDetectorConfiguration
2459
+ # data as a hash:
2460
+ #
2461
+ # {
2462
+ # entity_types: ["EntityType"], # required
2463
+ # allowed_statistics: [
2464
+ # {
2465
+ # statistics: ["Statistic"], # required
2466
+ # },
2467
+ # ],
2468
+ # }
2469
+ #
2470
+ # @!attribute [rw] entity_types
2471
+ # Entity types to detect. Can be any of the following:
2472
+ #
2473
+ # * USA\_SSN
2474
+ #
2475
+ # * EMAIL
2476
+ #
2477
+ # * USA\_ITIN
2478
+ #
2479
+ # * USA\_PASSPORT\_NUMBER
2480
+ #
2481
+ # * PHONE\_NUMBER
2482
+ #
2483
+ # * USA\_DRIVING\_LICENSE
2484
+ #
2485
+ # * BANK\_ACCOUNT
2486
+ #
2487
+ # * CREDIT\_CARD
2488
+ #
2489
+ # * IP\_ADDRESS
2490
+ #
2491
+ # * MAC\_ADDRESS
2492
+ #
2493
+ # * USA\_DEA\_NUMBER
2494
+ #
2495
+ # * USA\_HCPCS\_CODE
2496
+ #
2497
+ # * USA\_NATIONAL\_PROVIDER\_IDENTIFIER
2498
+ #
2499
+ # * USA\_NATIONAL\_DRUG\_CODE
2500
+ #
2501
+ # * USA\_HEALTH\_INSURANCE\_CLAIM\_NUMBER
2502
+ #
2503
+ # * USA\_MEDICARE\_BENEFICIARY\_IDENTIFIER
2504
+ #
2505
+ # * USA\_CPT\_CODE
2506
+ #
2507
+ # * PERSON\_NAME
2508
+ #
2509
+ # * DATE
2510
+ #
2511
+ # The Entity type group USA\_ALL is also supported, and includes all
2512
+ # of the above entity types except PERSON\_NAME and DATE.
2513
+ # @return [Array<String>]
2514
+ #
2515
+ # @!attribute [rw] allowed_statistics
2516
+ # Configuration of statistics that are allowed to be run on columns
2517
+ # that contain detected entities. When undefined, no statistics will
2518
+ # be computed on columns that contain detected entities.
2519
+ # @return [Array<Types::AllowedStatistics>]
2520
+ #
2521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/EntityDetectorConfiguration AWS API Documentation
2522
+ #
2523
+ class EntityDetectorConfiguration < Struct.new(
2524
+ :entity_types,
2525
+ :allowed_statistics)
2526
+ SENSITIVE = []
2527
+ include Aws::Structure
2528
+ end
2529
+
2198
2530
  # Represents a set of options that define how DataBrew will interpret a
2199
2531
  # Microsoft Excel file when creating a dataset from that file.
2200
2532
  #
@@ -2277,7 +2609,7 @@ module Aws::GlueDataBrew
2277
2609
  #
2278
2610
  #
2279
2611
  #
2280
- # [1]: https://docs-aws.amazon.com/databrew/latest/dg/datasets.multiple-files.html#conditions.for.dynamic.datasets
2612
+ # [1]: https://docs.aws.amazon.com/databrew/latest/dg/datasets.multiple-files.html#conditions.for.dynamic.datasets
2281
2613
  #
2282
2614
  # @note When making an API call, you may pass FilterExpression
2283
2615
  # data as a hash:
@@ -2377,11 +2709,15 @@ module Aws::GlueDataBrew
2377
2709
  # },
2378
2710
  # database_input_definition: {
2379
2711
  # glue_connection_name: "GlueConnectionName", # required
2380
- # database_table_name: "DatabaseTableName", # required
2712
+ # database_table_name: "DatabaseTableName",
2381
2713
  # temp_directory: {
2382
2714
  # bucket: "Bucket", # required
2383
2715
  # key: "Key",
2384
2716
  # },
2717
+ # query_string: "QueryString",
2718
+ # },
2719
+ # metadata: {
2720
+ # source_arn: "Arn",
2385
2721
  # },
2386
2722
  # }
2387
2723
  #
@@ -2397,12 +2733,18 @@ module Aws::GlueDataBrew
2397
2733
  # Connection information for dataset input files stored in a database.
2398
2734
  # @return [Types::DatabaseInputDefinition]
2399
2735
  #
2736
+ # @!attribute [rw] metadata
2737
+ # Contains additional resource information needed for specific
2738
+ # datasets.
2739
+ # @return [Types::Metadata]
2740
+ #
2400
2741
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/Input AWS API Documentation
2401
2742
  #
2402
2743
  class Input < Struct.new(
2403
2744
  :s3_input_definition,
2404
2745
  :data_catalog_input_definition,
2405
- :database_input_definition)
2746
+ :database_input_definition,
2747
+ :metadata)
2406
2748
  SENSITIVE = []
2407
2749
  include Aws::Structure
2408
2750
  end
@@ -2540,6 +2882,11 @@ module Aws::GlueDataBrew
2540
2882
  # parameter.
2541
2883
  # @return [Types::JobSample]
2542
2884
  #
2885
+ # @!attribute [rw] validation_configurations
2886
+ # List of validation configurations that are applied to the profile
2887
+ # job.
2888
+ # @return [Array<Types::ValidationConfiguration>]
2889
+ #
2543
2890
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/Job AWS API Documentation
2544
2891
  #
2545
2892
  class Job < Struct.new(
@@ -2565,7 +2912,8 @@ module Aws::GlueDataBrew
2565
2912
  :role_arn,
2566
2913
  :timeout,
2567
2914
  :tags,
2568
- :job_sample)
2915
+ :job_sample,
2916
+ :validation_configurations)
2569
2917
  SENSITIVE = []
2570
2918
  include Aws::Structure
2571
2919
  end
@@ -2650,6 +2998,11 @@ module Aws::GlueDataBrew
2650
2998
  # parameter.
2651
2999
  # @return [Types::JobSample]
2652
3000
  #
3001
+ # @!attribute [rw] validation_configurations
3002
+ # List of validation configurations that are applied to the profile
3003
+ # job run.
3004
+ # @return [Array<Types::ValidationConfiguration>]
3005
+ #
2653
3006
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/JobRun AWS API Documentation
2654
3007
  #
2655
3008
  class JobRun < Struct.new(
@@ -2669,7 +3022,8 @@ module Aws::GlueDataBrew
2669
3022
  :recipe_reference,
2670
3023
  :started_by,
2671
3024
  :started_on,
2672
- :job_sample)
3025
+ :job_sample,
3026
+ :validation_configurations)
2673
3027
  SENSITIVE = []
2674
3028
  include Aws::Structure
2675
3029
  end
@@ -3041,6 +3395,60 @@ module Aws::GlueDataBrew
3041
3395
  include Aws::Structure
3042
3396
  end
3043
3397
 
3398
+ # @note When making an API call, you may pass ListRulesetsRequest
3399
+ # data as a hash:
3400
+ #
3401
+ # {
3402
+ # target_arn: "Arn",
3403
+ # max_results: 1,
3404
+ # next_token: "NextToken",
3405
+ # }
3406
+ #
3407
+ # @!attribute [rw] target_arn
3408
+ # The Amazon Resource Name (ARN) of a resource (dataset). Using this
3409
+ # parameter indicates to return only those rulesets that are
3410
+ # associated with the specified resource.
3411
+ # @return [String]
3412
+ #
3413
+ # @!attribute [rw] max_results
3414
+ # The maximum number of results to return in this request.
3415
+ # @return [Integer]
3416
+ #
3417
+ # @!attribute [rw] next_token
3418
+ # A token generated by DataBrew that specifies where to continue
3419
+ # pagination if a previous request was truncated. To get the next set
3420
+ # of pages, pass in the NextToken value from the response object of
3421
+ # the previous page call.
3422
+ # @return [String]
3423
+ #
3424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ListRulesetsRequest AWS API Documentation
3425
+ #
3426
+ class ListRulesetsRequest < Struct.new(
3427
+ :target_arn,
3428
+ :max_results,
3429
+ :next_token)
3430
+ SENSITIVE = []
3431
+ include Aws::Structure
3432
+ end
3433
+
3434
+ # @!attribute [rw] rulesets
3435
+ # A list of RulesetItem. RulesetItem contains meta data of a ruleset.
3436
+ # @return [Array<Types::RulesetItem>]
3437
+ #
3438
+ # @!attribute [rw] next_token
3439
+ # A token that you can use in a subsequent call to retrieve the next
3440
+ # set of results.
3441
+ # @return [String]
3442
+ #
3443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ListRulesetsResponse AWS API Documentation
3444
+ #
3445
+ class ListRulesetsResponse < Struct.new(
3446
+ :rulesets,
3447
+ :next_token)
3448
+ SENSITIVE = []
3449
+ include Aws::Structure
3450
+ end
3451
+
3044
3452
  # @note When making an API call, you may pass ListSchedulesRequest
3045
3453
  # data as a hash:
3046
3454
  #
@@ -3123,6 +3531,28 @@ module Aws::GlueDataBrew
3123
3531
  include Aws::Structure
3124
3532
  end
3125
3533
 
3534
+ # Contains additional resource information needed for specific datasets.
3535
+ #
3536
+ # @note When making an API call, you may pass Metadata
3537
+ # data as a hash:
3538
+ #
3539
+ # {
3540
+ # source_arn: "Arn",
3541
+ # }
3542
+ #
3543
+ # @!attribute [rw] source_arn
3544
+ # The Amazon Resource Name (ARN) associated with the dataset.
3545
+ # Currently, DataBrew only supports ARNs from Amazon AppFlow.
3546
+ # @return [String]
3547
+ #
3548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/Metadata AWS API Documentation
3549
+ #
3550
+ class Metadata < Struct.new(
3551
+ :source_arn)
3552
+ SENSITIVE = []
3553
+ include Aws::Structure
3554
+ end
3555
+
3126
3556
  # Represents options that specify how and where in Amazon S3 DataBrew
3127
3557
  # writes the output generated by recipe jobs or profile jobs.
3128
3558
  #
@@ -3321,6 +3751,14 @@ module Aws::GlueDataBrew
3321
3751
  # },
3322
3752
  # },
3323
3753
  # ],
3754
+ # entity_detector_configuration: {
3755
+ # entity_types: ["EntityType"], # required
3756
+ # allowed_statistics: [
3757
+ # {
3758
+ # statistics: ["Statistic"], # required
3759
+ # },
3760
+ # ],
3761
+ # },
3324
3762
  # }
3325
3763
  #
3326
3764
  # @!attribute [rw] dataset_statistics_configuration
@@ -3344,12 +3782,18 @@ module Aws::GlueDataBrew
3344
3782
  # profile all supported columns and run all supported evaluations.
3345
3783
  # @return [Array<Types::ColumnStatisticsConfiguration>]
3346
3784
  #
3785
+ # @!attribute [rw] entity_detector_configuration
3786
+ # Configuration of entity detection for a profile job. When undefined,
3787
+ # entity detection is disabled.
3788
+ # @return [Types::EntityDetectorConfiguration]
3789
+ #
3347
3790
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ProfileConfiguration AWS API Documentation
3348
3791
  #
3349
3792
  class ProfileConfiguration < Struct.new(
3350
3793
  :dataset_statistics_configuration,
3351
3794
  :profile_columns,
3352
- :column_statistics_configurations)
3795
+ :column_statistics_configurations,
3796
+ :entity_detector_configuration)
3353
3797
  SENSITIVE = []
3354
3798
  include Aws::Structure
3355
3799
  end
@@ -3708,6 +4152,158 @@ module Aws::GlueDataBrew
3708
4152
  include Aws::Structure
3709
4153
  end
3710
4154
 
4155
+ # Represents a single data quality requirement that should be validated
4156
+ # in the scope of this dataset.
4157
+ #
4158
+ # @note When making an API call, you may pass Rule
4159
+ # data as a hash:
4160
+ #
4161
+ # {
4162
+ # name: "RuleName", # required
4163
+ # disabled: false,
4164
+ # check_expression: "Expression", # required
4165
+ # substitution_map: {
4166
+ # "ValueReference" => "ConditionValue",
4167
+ # },
4168
+ # threshold: {
4169
+ # value: 1.0, # required
4170
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
4171
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
4172
+ # },
4173
+ # column_selectors: [
4174
+ # {
4175
+ # regex: "ColumnName",
4176
+ # name: "ColumnName",
4177
+ # },
4178
+ # ],
4179
+ # }
4180
+ #
4181
+ # @!attribute [rw] name
4182
+ # The name of the rule.
4183
+ # @return [String]
4184
+ #
4185
+ # @!attribute [rw] disabled
4186
+ # A value that specifies whether the rule is disabled. Once a rule is
4187
+ # disabled, a profile job will not validate it during a job run.
4188
+ # Default value is false.
4189
+ # @return [Boolean]
4190
+ #
4191
+ # @!attribute [rw] check_expression
4192
+ # The expression which includes column references, condition names
4193
+ # followed by variable references, possibly grouped and combined with
4194
+ # other conditions. For example, `(:col1 starts_with :prefix1 or :col1
4195
+ # starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1
4196
+ # ends_with :suffix2)`. Column and value references are substitution
4197
+ # variables that should start with the ':' symbol. Depending on the
4198
+ # context, substitution variables' values can be either an actual
4199
+ # value or a column name. These values are defined in the
4200
+ # SubstitutionMap. If a CheckExpression starts with a column
4201
+ # reference, then ColumnSelectors in the rule should be null. If
4202
+ # ColumnSelectors has been defined, then there should be no columnn
4203
+ # reference in the left side of a condition, for example, `is_between
4204
+ # :val1 and :val2`.
4205
+ # @return [String]
4206
+ #
4207
+ # @!attribute [rw] substitution_map
4208
+ # The map of substitution variable names to their values used in a
4209
+ # check expression. Variable names should start with a ':' (colon).
4210
+ # Variable values can either be actual values or column names. To
4211
+ # differentiate between the two, column names should be enclosed in
4212
+ # backticks, for example, `` ":col1": "`Column A`". ``
4213
+ # @return [Hash<String,String>]
4214
+ #
4215
+ # @!attribute [rw] threshold
4216
+ # The threshold used with a non-aggregate check expression.
4217
+ # Non-aggregate check expressions will be applied to each row in a
4218
+ # specific column, and the threshold will be used to determine whether
4219
+ # the validation succeeds.
4220
+ # @return [Types::Threshold]
4221
+ #
4222
+ # @!attribute [rw] column_selectors
4223
+ # List of column selectors. Selectors can be used to select columns
4224
+ # using a name or regular expression from the dataset. Rule will be
4225
+ # applied to selected columns.
4226
+ # @return [Array<Types::ColumnSelector>]
4227
+ #
4228
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/Rule AWS API Documentation
4229
+ #
4230
+ class Rule < Struct.new(
4231
+ :name,
4232
+ :disabled,
4233
+ :check_expression,
4234
+ :substitution_map,
4235
+ :threshold,
4236
+ :column_selectors)
4237
+ SENSITIVE = []
4238
+ include Aws::Structure
4239
+ end
4240
+
4241
+ # Contains metadata about the ruleset.
4242
+ #
4243
+ # @!attribute [rw] account_id
4244
+ # The ID of the Amazon Web Services account that owns the ruleset.
4245
+ # @return [String]
4246
+ #
4247
+ # @!attribute [rw] created_by
4248
+ # The Amazon Resource Name (ARN) of the user who created the ruleset.
4249
+ # @return [String]
4250
+ #
4251
+ # @!attribute [rw] create_date
4252
+ # The date and time that the ruleset was created.
4253
+ # @return [Time]
4254
+ #
4255
+ # @!attribute [rw] description
4256
+ # The description of the ruleset.
4257
+ # @return [String]
4258
+ #
4259
+ # @!attribute [rw] last_modified_by
4260
+ # The Amazon Resource Name (ARN) of the user who last modified the
4261
+ # ruleset.
4262
+ # @return [String]
4263
+ #
4264
+ # @!attribute [rw] last_modified_date
4265
+ # The modification date and time of the ruleset.
4266
+ # @return [Time]
4267
+ #
4268
+ # @!attribute [rw] name
4269
+ # The name of the ruleset.
4270
+ # @return [String]
4271
+ #
4272
+ # @!attribute [rw] resource_arn
4273
+ # The Amazon Resource Name (ARN) for the ruleset.
4274
+ # @return [String]
4275
+ #
4276
+ # @!attribute [rw] rule_count
4277
+ # The number of rules that are defined in the ruleset.
4278
+ # @return [Integer]
4279
+ #
4280
+ # @!attribute [rw] tags
4281
+ # Metadata tags that have been applied to the ruleset.
4282
+ # @return [Hash<String,String>]
4283
+ #
4284
+ # @!attribute [rw] target_arn
4285
+ # The Amazon Resource Name (ARN) of a resource (dataset) that the
4286
+ # ruleset is associated with.
4287
+ # @return [String]
4288
+ #
4289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/RulesetItem AWS API Documentation
4290
+ #
4291
+ class RulesetItem < Struct.new(
4292
+ :account_id,
4293
+ :created_by,
4294
+ :create_date,
4295
+ :description,
4296
+ :last_modified_by,
4297
+ :last_modified_date,
4298
+ :name,
4299
+ :resource_arn,
4300
+ :rule_count,
4301
+ :tags,
4302
+ :target_arn)
4303
+ SENSITIVE = []
4304
+ include Aws::Structure
4305
+ end
4306
+
3711
4307
  # Represents an Amazon S3 location (bucket name and object key) where
3712
4308
  # DataBrew can read input data, or write output from a job.
3713
4309
  #
@@ -3882,6 +4478,9 @@ module Aws::GlueDataBrew
3882
4478
  # start_column_index: 1, # required
3883
4479
  # column_range: 1,
3884
4480
  # hidden_columns: ["ColumnName"],
4481
+ # start_row_index: 1,
4482
+ # row_range: 1,
4483
+ # analytics: "ENABLE", # accepts ENABLE, DISABLE
3885
4484
  # },
3886
4485
  # }
3887
4486
  #
@@ -3923,7 +4522,7 @@ module Aws::GlueDataBrew
3923
4522
  :step_index,
3924
4523
  :client_session_id,
3925
4524
  :view_frame)
3926
- SENSITIVE = []
4525
+ SENSITIVE = [:client_session_id]
3927
4526
  include Aws::Structure
3928
4527
  end
3929
4528
 
@@ -4032,7 +4631,7 @@ module Aws::GlueDataBrew
4032
4631
  class StartProjectSessionResponse < Struct.new(
4033
4632
  :name,
4034
4633
  :client_session_id)
4035
- SENSITIVE = []
4634
+ SENSITIVE = [:client_session_id]
4036
4635
  include Aws::Structure
4037
4636
  end
4038
4637
 
@@ -4172,6 +4771,44 @@ module Aws::GlueDataBrew
4172
4771
  #
4173
4772
  class TagResourceResponse < Aws::EmptyStructure; end
4174
4773
 
4774
+ # The threshold used with a non-aggregate check expression. The
4775
+ # non-aggregate check expression will be applied to each row in a
4776
+ # specific column. Then the threshold will be used to determine whether
4777
+ # the validation succeeds.
4778
+ #
4779
+ # @note When making an API call, you may pass Threshold
4780
+ # data as a hash:
4781
+ #
4782
+ # {
4783
+ # value: 1.0, # required
4784
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
4785
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
4786
+ # }
4787
+ #
4788
+ # @!attribute [rw] value
4789
+ # The value of a threshold.
4790
+ # @return [Float]
4791
+ #
4792
+ # @!attribute [rw] type
4793
+ # The type of a threshold. Used for comparison of an actual count of
4794
+ # rows that satisfy the rule to the threshold value.
4795
+ # @return [String]
4796
+ #
4797
+ # @!attribute [rw] unit
4798
+ # Unit of threshold value. Can be either a COUNT or PERCENTAGE of the
4799
+ # full sample size used for validation.
4800
+ # @return [String]
4801
+ #
4802
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/Threshold AWS API Documentation
4803
+ #
4804
+ class Threshold < Struct.new(
4805
+ :value,
4806
+ :type,
4807
+ :unit)
4808
+ SENSITIVE = []
4809
+ include Aws::Structure
4810
+ end
4811
+
4175
4812
  # @note When making an API call, you may pass UntagResourceRequest
4176
4813
  # data as a hash:
4177
4814
  #
@@ -4238,11 +4875,15 @@ module Aws::GlueDataBrew
4238
4875
  # },
4239
4876
  # database_input_definition: {
4240
4877
  # glue_connection_name: "GlueConnectionName", # required
4241
- # database_table_name: "DatabaseTableName", # required
4878
+ # database_table_name: "DatabaseTableName",
4242
4879
  # temp_directory: {
4243
4880
  # bucket: "Bucket", # required
4244
4881
  # key: "Key",
4245
4882
  # },
4883
+ # query_string: "QueryString",
4884
+ # },
4885
+ # metadata: {
4886
+ # source_arn: "Arn",
4246
4887
  # },
4247
4888
  # },
4248
4889
  # path_options: {
@@ -4369,6 +5010,14 @@ module Aws::GlueDataBrew
4369
5010
  # },
4370
5011
  # },
4371
5012
  # ],
5013
+ # entity_detector_configuration: {
5014
+ # entity_types: ["EntityType"], # required
5015
+ # allowed_statistics: [
5016
+ # {
5017
+ # statistics: ["Statistic"], # required
5018
+ # },
5019
+ # ],
5020
+ # },
4372
5021
  # },
4373
5022
  # encryption_key_arn: "EncryptionKeyArn",
4374
5023
  # encryption_mode: "SSE-KMS", # accepts SSE-KMS, SSE-S3
@@ -4380,6 +5029,12 @@ module Aws::GlueDataBrew
4380
5029
  # bucket: "Bucket", # required
4381
5030
  # key: "Key",
4382
5031
  # },
5032
+ # validation_configurations: [
5033
+ # {
5034
+ # ruleset_arn: "Arn", # required
5035
+ # validation_mode: "CHECK_ALL", # accepts CHECK_ALL
5036
+ # },
5037
+ # ],
4383
5038
  # role_arn: "Arn", # required
4384
5039
  # timeout: 1,
4385
5040
  # job_sample: {
@@ -4432,6 +5087,11 @@ module Aws::GlueDataBrew
4432
5087
  # DataBrew can read input data, or write output from a job.
4433
5088
  # @return [Types::S3Location]
4434
5089
  #
5090
+ # @!attribute [rw] validation_configurations
5091
+ # List of validation configurations that are applied to the profile
5092
+ # job.
5093
+ # @return [Array<Types::ValidationConfiguration>]
5094
+ #
4435
5095
  # @!attribute [rw] role_arn
4436
5096
  # The Amazon Resource Name (ARN) of the Identity and Access Management
4437
5097
  # (IAM) role to be assumed when DataBrew runs the job.
@@ -4461,6 +5121,7 @@ module Aws::GlueDataBrew
4461
5121
  :max_capacity,
4462
5122
  :max_retries,
4463
5123
  :output_location,
5124
+ :validation_configurations,
4464
5125
  :role_arn,
4465
5126
  :timeout,
4466
5127
  :job_sample)
@@ -4746,6 +5407,70 @@ module Aws::GlueDataBrew
4746
5407
  include Aws::Structure
4747
5408
  end
4748
5409
 
5410
+ # @note When making an API call, you may pass UpdateRulesetRequest
5411
+ # data as a hash:
5412
+ #
5413
+ # {
5414
+ # name: "RulesetName", # required
5415
+ # description: "RulesetDescription",
5416
+ # rules: [ # required
5417
+ # {
5418
+ # name: "RuleName", # required
5419
+ # disabled: false,
5420
+ # check_expression: "Expression", # required
5421
+ # substitution_map: {
5422
+ # "ValueReference" => "ConditionValue",
5423
+ # },
5424
+ # threshold: {
5425
+ # value: 1.0, # required
5426
+ # type: "GREATER_THAN_OR_EQUAL", # accepts GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, GREATER_THAN, LESS_THAN
5427
+ # unit: "COUNT", # accepts COUNT, PERCENTAGE
5428
+ # },
5429
+ # column_selectors: [
5430
+ # {
5431
+ # regex: "ColumnName",
5432
+ # name: "ColumnName",
5433
+ # },
5434
+ # ],
5435
+ # },
5436
+ # ],
5437
+ # }
5438
+ #
5439
+ # @!attribute [rw] name
5440
+ # The name of the ruleset to be updated.
5441
+ # @return [String]
5442
+ #
5443
+ # @!attribute [rw] description
5444
+ # The description of the ruleset.
5445
+ # @return [String]
5446
+ #
5447
+ # @!attribute [rw] rules
5448
+ # A list of rules that are defined with the ruleset. A rule includes
5449
+ # one or more checks to be validated on a DataBrew dataset.
5450
+ # @return [Array<Types::Rule>]
5451
+ #
5452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/UpdateRulesetRequest AWS API Documentation
5453
+ #
5454
+ class UpdateRulesetRequest < Struct.new(
5455
+ :name,
5456
+ :description,
5457
+ :rules)
5458
+ SENSITIVE = []
5459
+ include Aws::Structure
5460
+ end
5461
+
5462
+ # @!attribute [rw] name
5463
+ # The name of the updated ruleset.
5464
+ # @return [String]
5465
+ #
5466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/UpdateRulesetResponse AWS API Documentation
5467
+ #
5468
+ class UpdateRulesetResponse < Struct.new(
5469
+ :name)
5470
+ SENSITIVE = []
5471
+ include Aws::Structure
5472
+ end
5473
+
4749
5474
  # @note When making an API call, you may pass UpdateScheduleRequest
4750
5475
  # data as a hash:
4751
5476
  #
@@ -4795,6 +5520,40 @@ module Aws::GlueDataBrew
4795
5520
  include Aws::Structure
4796
5521
  end
4797
5522
 
5523
+ # Configuration for data quality validation. Used to select the Rulesets
5524
+ # and Validation Mode to be used in the profile job. When
5525
+ # ValidationConfiguration is null, the profile job will run without data
5526
+ # quality validation.
5527
+ #
5528
+ # @note When making an API call, you may pass ValidationConfiguration
5529
+ # data as a hash:
5530
+ #
5531
+ # {
5532
+ # ruleset_arn: "Arn", # required
5533
+ # validation_mode: "CHECK_ALL", # accepts CHECK_ALL
5534
+ # }
5535
+ #
5536
+ # @!attribute [rw] ruleset_arn
5537
+ # The Amazon Resource Name (ARN) for the ruleset to be validated in
5538
+ # the profile job. The TargetArn of the selected ruleset should be the
5539
+ # same as the Amazon Resource Name (ARN) of the dataset that is
5540
+ # associated with the profile job.
5541
+ # @return [String]
5542
+ #
5543
+ # @!attribute [rw] validation_mode
5544
+ # Mode of data quality validation. Default mode is “CHECK\_ALL” which
5545
+ # verifies all rules defined in the selected ruleset.
5546
+ # @return [String]
5547
+ #
5548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ValidationConfiguration AWS API Documentation
5549
+ #
5550
+ class ValidationConfiguration < Struct.new(
5551
+ :ruleset_arn,
5552
+ :validation_mode)
5553
+ SENSITIVE = []
5554
+ include Aws::Structure
5555
+ end
5556
+
4798
5557
  # The input parameters for this request failed validation.
4799
5558
  #
4800
5559
  # @!attribute [rw] message
@@ -4817,6 +5576,9 @@ module Aws::GlueDataBrew
4817
5576
  # start_column_index: 1, # required
4818
5577
  # column_range: 1,
4819
5578
  # hidden_columns: ["ColumnName"],
5579
+ # start_row_index: 1,
5580
+ # row_range: 1,
5581
+ # analytics: "ENABLE", # accepts ENABLE, DISABLE
4820
5582
  # }
4821
5583
  #
4822
5584
  # @!attribute [rw] start_column_index
@@ -4834,12 +5596,30 @@ module Aws::GlueDataBrew
4834
5596
  # A list of columns to hide in the view frame.
4835
5597
  # @return [Array<String>]
4836
5598
  #
5599
+ # @!attribute [rw] start_row_index
5600
+ # The starting index for the range of rows to return in the view
5601
+ # frame.
5602
+ # @return [Integer]
5603
+ #
5604
+ # @!attribute [rw] row_range
5605
+ # The number of rows to include in the view frame, beginning with the
5606
+ # `StartRowIndex` value.
5607
+ # @return [Integer]
5608
+ #
5609
+ # @!attribute [rw] analytics
5610
+ # Controls if analytics computation is enabled or disabled. Enabled by
5611
+ # default.
5612
+ # @return [String]
5613
+ #
4837
5614
  # @see http://docs.aws.amazon.com/goto/WebAPI/databrew-2017-07-25/ViewFrame AWS API Documentation
4838
5615
  #
4839
5616
  class ViewFrame < Struct.new(
4840
5617
  :start_column_index,
4841
5618
  :column_range,
4842
- :hidden_columns)
5619
+ :hidden_columns,
5620
+ :start_row_index,
5621
+ :row_range,
5622
+ :analytics)
4843
5623
  SENSITIVE = []
4844
5624
  include Aws::Structure
4845
5625
  end