AWS Glue DataBrew

2021/11/18 - AWS Glue DataBrew - 5 new 11 updated api methods

Changes  This SDK release adds the following new features: 1) PII detection in profile jobs, 2) Data quality rules, enabling validation of data quality in profile jobs, 3) SQL query-based datasets for Amazon Redshift and Snowflake data sources, and 4) Connecting DataBrew datasets with Amazon AppFlow flows.

DescribeRuleset (new) Link ¶

Retrieves detailed information about the ruleset.

See also: AWS API Documentation

Request Syntax

client.describe_ruleset(
    Name='string'
)
type Name

string

param Name

[REQUIRED]

The name of the ruleset to be described.

rtype

dict

returns

Response Syntax

{
    'Name': 'string',
    'Description': 'string',
    'TargetArn': 'string',
    'Rules': [
        {
            'Name': 'string',
            'Disabled': True|False,
            'CheckExpression': 'string',
            'SubstitutionMap': {
                'string': 'string'
            },
            'Threshold': {
                'Value': 123.0,
                'Type': 'GREATER_THAN_OR_EQUAL'|'LESS_THAN_OR_EQUAL'|'GREATER_THAN'|'LESS_THAN',
                'Unit': 'COUNT'|'PERCENTAGE'
            },
            'ColumnSelectors': [
                {
                    'Regex': 'string',
                    'Name': 'string'
                },
            ]
        },
    ],
    'CreateDate': datetime(2015, 1, 1),
    'CreatedBy': 'string',
    'LastModifiedBy': 'string',
    'LastModifiedDate': datetime(2015, 1, 1),
    'ResourceArn': 'string',
    'Tags': {
        'string': 'string'
    }
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the ruleset.

    • Description (string) --

      The description of the ruleset.

    • TargetArn (string) --

      The Amazon Resource Name (ARN) of a resource (dataset) that the ruleset is associated with.

    • Rules (list) --

      A list of rules that are defined with the ruleset. A rule includes one or more checks to be validated on a DataBrew dataset.

      • (dict) --

        Represents a single data quality requirement that should be validated in the scope of this dataset.

        • Name (string) --

          The name of the rule.

        • Disabled (boolean) --

          A value that specifies whether the rule is disabled. Once a rule is disabled, a profile job will not validate it during a job run. Default value is false.

        • CheckExpression (string) --

          The expression which includes column references, condition names followed by variable references, possibly grouped and combined with other conditions. For example, (:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1 ends_with :suffix2) . Column and value references are substitution variables that should start with the ':' symbol. Depending on the context, substitution variables' values can be either an actual value or a column name. These values are defined in the SubstitutionMap. If a CheckExpression starts with a column reference, then ColumnSelectors in the rule should be null. If ColumnSelectors has been defined, then there should be no columnn reference in the left side of a condition, for example, is_between :val1 and :val2 .

        • SubstitutionMap (dict) --

          The map of substitution variable names to their values used in a check expression. Variable names should start with a ':' (colon). Variable values can either be actual values or column names. To differentiate between the two, column names should be enclosed in backticks, for example, ":col1": "`Column A`".

          • (string) --

            • (string) --

        • Threshold (dict) --

          The threshold used with a non-aggregate check expression. Non-aggregate check expressions will be applied to each row in a specific column, and the threshold will be used to determine whether the validation succeeds.

          • Value (float) --

            The value of a threshold.

          • Type (string) --

            The type of a threshold. Used for comparison of an actual count of rows that satisfy the rule to the threshold value.

          • Unit (string) --

            Unit of threshold value. Can be either a COUNT or PERCENTAGE of the full sample size used for validation.

        • ColumnSelectors (list) --

          List of column selectors. Selectors can be used to select columns using a name or regular expression from the dataset. Rule will be applied to selected columns.

          • (dict) --

            Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

            • Regex (string) --

              A regular expression for selecting a column from a dataset.

            • Name (string) --

              The name of a column from a dataset.

    • CreateDate (datetime) --

      The date and time that the ruleset was created.

    • CreatedBy (string) --

      The Amazon Resource Name (ARN) of the user who created the ruleset.

    • LastModifiedBy (string) --

      The Amazon Resource Name (ARN) of the user who last modified the ruleset.

    • LastModifiedDate (datetime) --

      The modification date and time of the ruleset.

    • ResourceArn (string) --

      The Amazon Resource Name (ARN) for the ruleset.

    • Tags (dict) --

      Metadata tags that have been applied to the ruleset.

      • (string) --

        • (string) --

ListRulesets (new) Link ¶

List all rulesets available in the current account or rulesets associated with a specific resource (dataset).

See also: AWS API Documentation

Request Syntax

client.list_rulesets(
    TargetArn='string',
    MaxResults=123,
    NextToken='string'
)
type TargetArn

string

param TargetArn

The Amazon Resource Name (ARN) of a resource (dataset). Using this parameter indicates to return only those rulesets that are associated with the specified resource.

type MaxResults

integer

param MaxResults

The maximum number of results to return in this request.

type NextToken

string

param NextToken

A token generated by DataBrew that specifies where to continue pagination if a previous request was truncated. To get the next set of pages, pass in the NextToken value from the response object of the previous page call.

rtype

dict

returns

Response Syntax

{
    'Rulesets': [
        {
            'AccountId': 'string',
            'CreatedBy': 'string',
            'CreateDate': datetime(2015, 1, 1),
            'Description': 'string',
            'LastModifiedBy': 'string',
            'LastModifiedDate': datetime(2015, 1, 1),
            'Name': 'string',
            'ResourceArn': 'string',
            'RuleCount': 123,
            'Tags': {
                'string': 'string'
            },
            'TargetArn': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Rulesets (list) --

      A list of RulesetItem. RulesetItem contains meta data of a ruleset.

      • (dict) --

        Contains metadata about the ruleset.

        • AccountId (string) --

          The ID of the Amazon Web Services account that owns the ruleset.

        • CreatedBy (string) --

          The Amazon Resource Name (ARN) of the user who created the ruleset.

        • CreateDate (datetime) --

          The date and time that the ruleset was created.

        • Description (string) --

          The description of the ruleset.

        • LastModifiedBy (string) --

          The Amazon Resource Name (ARN) of the user who last modified the ruleset.

        • LastModifiedDate (datetime) --

          The modification date and time of the ruleset.

        • Name (string) --

          The name of the ruleset.

        • ResourceArn (string) --

          The Amazon Resource Name (ARN) for the ruleset.

        • RuleCount (integer) --

          The number of rules that are defined in the ruleset.

        • Tags (dict) --

          Metadata tags that have been applied to the ruleset.

          • (string) --

            • (string) --

        • TargetArn (string) --

          The Amazon Resource Name (ARN) of a resource (dataset) that the ruleset is associated with.

    • NextToken (string) --

      A token that you can use in a subsequent call to retrieve the next set of results.

UpdateRuleset (new) Link ¶

Updates specified ruleset.

See also: AWS API Documentation

Request Syntax

client.update_ruleset(
    Name='string',
    Description='string',
    Rules=[
        {
            'Name': 'string',
            'Disabled': True|False,
            'CheckExpression': 'string',
            'SubstitutionMap': {
                'string': 'string'
            },
            'Threshold': {
                'Value': 123.0,
                'Type': 'GREATER_THAN_OR_EQUAL'|'LESS_THAN_OR_EQUAL'|'GREATER_THAN'|'LESS_THAN',
                'Unit': 'COUNT'|'PERCENTAGE'
            },
            'ColumnSelectors': [
                {
                    'Regex': 'string',
                    'Name': 'string'
                },
            ]
        },
    ]
)
type Name

string

param Name

[REQUIRED]

The name of the ruleset to be updated.

type Description

string

param Description

The description of the ruleset.

type Rules

list

param Rules

[REQUIRED]

A list of rules that are defined with the ruleset. A rule includes one or more checks to be validated on a DataBrew dataset.

  • (dict) --

    Represents a single data quality requirement that should be validated in the scope of this dataset.

    • Name (string) -- [REQUIRED]

      The name of the rule.

    • Disabled (boolean) --

      A value that specifies whether the rule is disabled. Once a rule is disabled, a profile job will not validate it during a job run. Default value is false.

    • CheckExpression (string) -- [REQUIRED]

      The expression which includes column references, condition names followed by variable references, possibly grouped and combined with other conditions. For example, (:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1 ends_with :suffix2) . Column and value references are substitution variables that should start with the ':' symbol. Depending on the context, substitution variables' values can be either an actual value or a column name. These values are defined in the SubstitutionMap. If a CheckExpression starts with a column reference, then ColumnSelectors in the rule should be null. If ColumnSelectors has been defined, then there should be no columnn reference in the left side of a condition, for example, is_between :val1 and :val2 .

    • SubstitutionMap (dict) --

      The map of substitution variable names to their values used in a check expression. Variable names should start with a ':' (colon). Variable values can either be actual values or column names. To differentiate between the two, column names should be enclosed in backticks, for example, ":col1": "`Column A`".

      • (string) --

        • (string) --

    • Threshold (dict) --

      The threshold used with a non-aggregate check expression. Non-aggregate check expressions will be applied to each row in a specific column, and the threshold will be used to determine whether the validation succeeds.

      • Value (float) -- [REQUIRED]

        The value of a threshold.

      • Type (string) --

        The type of a threshold. Used for comparison of an actual count of rows that satisfy the rule to the threshold value.

      • Unit (string) --

        Unit of threshold value. Can be either a COUNT or PERCENTAGE of the full sample size used for validation.

    • ColumnSelectors (list) --

      List of column selectors. Selectors can be used to select columns using a name or regular expression from the dataset. Rule will be applied to selected columns.

      • (dict) --

        Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

        • Regex (string) --

          A regular expression for selecting a column from a dataset.

        • Name (string) --

          The name of a column from a dataset.

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the updated ruleset.

CreateRuleset (new) Link ¶

Creates a new ruleset that can be used in a profile job to validate the data quality of a dataset.

See also: AWS API Documentation

Request Syntax

client.create_ruleset(
    Name='string',
    Description='string',
    TargetArn='string',
    Rules=[
        {
            'Name': 'string',
            'Disabled': True|False,
            'CheckExpression': 'string',
            'SubstitutionMap': {
                'string': 'string'
            },
            'Threshold': {
                'Value': 123.0,
                'Type': 'GREATER_THAN_OR_EQUAL'|'LESS_THAN_OR_EQUAL'|'GREATER_THAN'|'LESS_THAN',
                'Unit': 'COUNT'|'PERCENTAGE'
            },
            'ColumnSelectors': [
                {
                    'Regex': 'string',
                    'Name': 'string'
                },
            ]
        },
    ],
    Tags={
        'string': 'string'
    }
)
type Name

string

param Name

[REQUIRED]

The name of the ruleset to be created. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

type Description

string

param Description

The description of the ruleset.

type TargetArn

string

param TargetArn

[REQUIRED]

The Amazon Resource Name (ARN) of a resource (dataset) that the ruleset is associated with.

type Rules

list

param Rules

[REQUIRED]

A list of rules that are defined with the ruleset. A rule includes one or more checks to be validated on a DataBrew dataset.

  • (dict) --

    Represents a single data quality requirement that should be validated in the scope of this dataset.

    • Name (string) -- [REQUIRED]

      The name of the rule.

    • Disabled (boolean) --

      A value that specifies whether the rule is disabled. Once a rule is disabled, a profile job will not validate it during a job run. Default value is false.

    • CheckExpression (string) -- [REQUIRED]

      The expression which includes column references, condition names followed by variable references, possibly grouped and combined with other conditions. For example, (:col1 starts_with :prefix1 or :col1 starts_with :prefix2) and (:col1 ends_with :suffix1 or :col1 ends_with :suffix2) . Column and value references are substitution variables that should start with the ':' symbol. Depending on the context, substitution variables' values can be either an actual value or a column name. These values are defined in the SubstitutionMap. If a CheckExpression starts with a column reference, then ColumnSelectors in the rule should be null. If ColumnSelectors has been defined, then there should be no columnn reference in the left side of a condition, for example, is_between :val1 and :val2 .

    • SubstitutionMap (dict) --

      The map of substitution variable names to their values used in a check expression. Variable names should start with a ':' (colon). Variable values can either be actual values or column names. To differentiate between the two, column names should be enclosed in backticks, for example, ":col1": "`Column A`".

      • (string) --

        • (string) --

    • Threshold (dict) --

      The threshold used with a non-aggregate check expression. Non-aggregate check expressions will be applied to each row in a specific column, and the threshold will be used to determine whether the validation succeeds.

      • Value (float) -- [REQUIRED]

        The value of a threshold.

      • Type (string) --

        The type of a threshold. Used for comparison of an actual count of rows that satisfy the rule to the threshold value.

      • Unit (string) --

        Unit of threshold value. Can be either a COUNT or PERCENTAGE of the full sample size used for validation.

    • ColumnSelectors (list) --

      List of column selectors. Selectors can be used to select columns using a name or regular expression from the dataset. Rule will be applied to selected columns.

      • (dict) --

        Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

        • Regex (string) --

          A regular expression for selecting a column from a dataset.

        • Name (string) --

          The name of a column from a dataset.

type Tags

dict

param Tags

Metadata tags to apply to the ruleset.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The unique name of the created ruleset.

DeleteRuleset (new) Link ¶

Deletes a ruleset.

See also: AWS API Documentation

Request Syntax

client.delete_ruleset(
    Name='string'
)
type Name

string

param Name

[REQUIRED]

The name of the ruleset to be deleted.

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the deleted ruleset.

CreateDataset (updated) Link ¶
Changes (request)
{'Input': {'DatabaseInputDefinition': {'QueryString': 'string'},
           'Metadata': {'SourceArn': 'string'}}}

Creates a new DataBrew dataset.

See also: AWS API Documentation

Request Syntax

client.create_dataset(
    Name='string',
    Format='CSV'|'JSON'|'PARQUET'|'EXCEL',
    FormatOptions={
        'Json': {
            'MultiLine': True|False
        },
        'Excel': {
            'SheetNames': [
                'string',
            ],
            'SheetIndexes': [
                123,
            ],
            'HeaderRow': True|False
        },
        'Csv': {
            'Delimiter': 'string',
            'HeaderRow': True|False
        }
    },
    Input={
        'S3InputDefinition': {
            'Bucket': 'string',
            'Key': 'string'
        },
        'DataCatalogInputDefinition': {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'TableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            }
        },
        'DatabaseInputDefinition': {
            'GlueConnectionName': 'string',
            'DatabaseTableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            },
            'QueryString': 'string'
        },
        'Metadata': {
            'SourceArn': 'string'
        }
    },
    PathOptions={
        'LastModifiedDateCondition': {
            'Expression': 'string',
            'ValuesMap': {
                'string': 'string'
            }
        },
        'FilesLimit': {
            'MaxFiles': 123,
            'OrderedBy': 'LAST_MODIFIED_DATE',
            'Order': 'DESCENDING'|'ASCENDING'
        },
        'Parameters': {
            'string': {
                'Name': 'string',
                'Type': 'Datetime'|'Number'|'String',
                'DatetimeOptions': {
                    'Format': 'string',
                    'TimezoneOffset': 'string',
                    'LocaleCode': 'string'
                },
                'CreateColumn': True|False,
                'Filter': {
                    'Expression': 'string',
                    'ValuesMap': {
                        'string': 'string'
                    }
                }
            }
        }
    },
    Tags={
        'string': 'string'
    }
)
type Name

string

param Name

[REQUIRED]

The name of the dataset to be created. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

type Format

string

param Format

The file format of a dataset that is created from an Amazon S3 file or folder.

type FormatOptions

dict

param FormatOptions

Represents a set of options that define the structure of either comma-separated value (CSV), Excel, or JSON input.

  • Json (dict) --

    Options that define how JSON input is to be interpreted by DataBrew.

    • MultiLine (boolean) --

      A value that specifies whether JSON input contains embedded new line characters.

  • Excel (dict) --

    Options that define how Excel input is to be interpreted by DataBrew.

    • SheetNames (list) --

      One or more named sheets in the Excel file that will be included in the dataset.

      • (string) --

    • SheetIndexes (list) --

      One or more sheet numbers in the Excel file that will be included in the dataset.

      • (integer) --

    • HeaderRow (boolean) --

      A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

  • Csv (dict) --

    Options that define how CSV input is to be interpreted by DataBrew.

    • Delimiter (string) --

      A single character that specifies the delimiter being used in the CSV file.

    • HeaderRow (boolean) --

      A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

type Input

dict

param Input

[REQUIRED]

Represents information on how DataBrew can find data, in either the Glue Data Catalog or Amazon S3.

  • S3InputDefinition (dict) --

    The Amazon S3 location where the data is stored.

    • Bucket (string) -- [REQUIRED]

      The Amazon S3 bucket name.

    • Key (string) --

      The unique name of the object in the bucket.

  • DataCatalogInputDefinition (dict) --

    The Glue Data Catalog parameters for the data.

    • CatalogId (string) --

      The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

    • DatabaseName (string) -- [REQUIRED]

      The name of a database in the Data Catalog.

    • TableName (string) -- [REQUIRED]

      The name of a database table in the Data Catalog. This table corresponds to a DataBrew dataset.

    • TempDirectory (dict) --

      Represents an Amazon location where DataBrew can store intermediate results.

      • Bucket (string) -- [REQUIRED]

        The Amazon S3 bucket name.

      • Key (string) --

        The unique name of the object in the bucket.

  • DatabaseInputDefinition (dict) --

    Connection information for dataset input files stored in a database.

    • GlueConnectionName (string) -- [REQUIRED]

      The Glue Connection that stores the connection information for the target database.

    • DatabaseTableName (string) --

      The table within the target database.

    • TempDirectory (dict) --

      Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

      • Bucket (string) -- [REQUIRED]

        The Amazon S3 bucket name.

      • Key (string) --

        The unique name of the object in the bucket.

    • QueryString (string) --

      Custom SQL to run against the provided Glue connection. This SQL will be used as the input for DataBrew projects and jobs.

  • Metadata (dict) --

    Contains additional resource information needed for specific datasets.

    • SourceArn (string) --

      The Amazon Resource Name (ARN) associated with the dataset. Currently, DataBrew only supports ARNs from Amazon AppFlow.

type PathOptions

dict

param PathOptions

A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.

  • LastModifiedDateCondition (dict) --

    If provided, this structure defines a date range for matching Amazon S3 objects based on their LastModifiedDate attribute in Amazon S3.

    • Expression (string) -- [REQUIRED]

      The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

    • ValuesMap (dict) -- [REQUIRED]

      The map of substitution variable names to their values used in this filter expression.

      • (string) --

        • (string) --

  • FilesLimit (dict) --

    If provided, this structure imposes a limit on a number of files that should be selected.

    • MaxFiles (integer) -- [REQUIRED]

      The number of Amazon S3 files to select.

    • OrderedBy (string) --

      A criteria to use for Amazon S3 files sorting before their selection. By default uses LAST_MODIFIED_DATE as a sorting criteria. Currently it's the only allowed value.

    • Order (string) --

      A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Anotherpossible value is ASCENDING.

  • Parameters (dict) --

    A structure that maps names of parameters used in the Amazon S3 path of a dataset to their definitions.

    • (string) --

      • (dict) --

        Represents a dataset paramater that defines type and conditions for a parameter in the Amazon S3 path of the dataset.

        • Name (string) -- [REQUIRED]

          The name of the parameter that is used in the dataset's Amazon S3 path.

        • Type (string) -- [REQUIRED]

          The type of the dataset parameter, can be one of a 'String', 'Number' or 'Datetime'.

        • DatetimeOptions (dict) --

          Additional parameter options such as a format and a timezone. Required for datetime parameters.

          • Format (string) -- [REQUIRED]

            Required option, that defines the datetime format used for a date parameter in the Amazon S3 path. Should use only supported datetime specifiers and separation characters, all literal a-z or A-Z characters should be escaped with single quotes. E.g. "MM.dd.yyyy-'at'-HH:mm".

          • TimezoneOffset (string) --

            Optional value for a timezone offset of the datetime parameter value in the Amazon S3 path. Shouldn't be used if Format for this parameter includes timezone fields. If no offset specified, UTC is assumed.

          • LocaleCode (string) --

            Optional value for a non-US locale code, needed for correct interpretation of some date formats.

        • CreateColumn (boolean) --

          Optional boolean value that defines whether the captured value of this parameter should be used to create a new column in a dataset.

        • Filter (dict) --

          The optional filter expression structure to apply additional matching criteria to the parameter.

          • Expression (string) -- [REQUIRED]

            The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

          • ValuesMap (dict) -- [REQUIRED]

            The map of substitution variable names to their values used in this filter expression.

            • (string) --

              • (string) --

type Tags

dict

param Tags

Metadata tags to apply to this dataset.

  • (string) --

    • (string) --

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the dataset that you created.

CreateProfileJob (updated) Link ¶
Changes (request)
{'Configuration': {'EntityDetectorConfiguration': {'AllowedStatistics': [{'Statistics': ['string']}],
                                                   'EntityTypes': ['string']}},
 'ValidationConfigurations': [{'RulesetArn': 'string',
                               'ValidationMode': 'CHECK_ALL'}]}

Creates a new job to analyze a dataset and create its data profile.

See also: AWS API Documentation

Request Syntax

client.create_profile_job(
    DatasetName='string',
    EncryptionKeyArn='string',
    EncryptionMode='SSE-KMS'|'SSE-S3',
    Name='string',
    LogSubscription='ENABLE'|'DISABLE',
    MaxCapacity=123,
    MaxRetries=123,
    OutputLocation={
        'Bucket': 'string',
        'Key': 'string'
    },
    Configuration={
        'DatasetStatisticsConfiguration': {
            'IncludedStatistics': [
                'string',
            ],
            'Overrides': [
                {
                    'Statistic': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ]
        },
        'ProfileColumns': [
            {
                'Regex': 'string',
                'Name': 'string'
            },
        ],
        'ColumnStatisticsConfigurations': [
            {
                'Selectors': [
                    {
                        'Regex': 'string',
                        'Name': 'string'
                    },
                ],
                'Statistics': {
                    'IncludedStatistics': [
                        'string',
                    ],
                    'Overrides': [
                        {
                            'Statistic': 'string',
                            'Parameters': {
                                'string': 'string'
                            }
                        },
                    ]
                }
            },
        ],
        'EntityDetectorConfiguration': {
            'EntityTypes': [
                'string',
            ],
            'AllowedStatistics': [
                {
                    'Statistics': [
                        'string',
                    ]
                },
            ]
        }
    },
    ValidationConfigurations=[
        {
            'RulesetArn': 'string',
            'ValidationMode': 'CHECK_ALL'
        },
    ],
    RoleArn='string',
    Tags={
        'string': 'string'
    },
    Timeout=123,
    JobSample={
        'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
        'Size': 123
    }
)
type DatasetName

string

param DatasetName

[REQUIRED]

The name of the dataset that this job is to act upon.

type EncryptionKeyArn

string

param EncryptionKeyArn

The Amazon Resource Name (ARN) of an encryption key that is used to protect the job.

type EncryptionMode

string

param EncryptionMode

The encryption mode for the job, which can be one of the following:

  • SSE-KMS - SSE-KMS - Server-side encryption with KMS-managed keys.

  • SSE-S3 - Server-side encryption with keys managed by Amazon S3.

type Name

string

param Name

[REQUIRED]

The name of the job to be created. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

type LogSubscription

string

param LogSubscription

Enables or disables Amazon CloudWatch logging for the job. If logging is enabled, CloudWatch writes one log stream for each job run.

type MaxCapacity

integer

param MaxCapacity

The maximum number of nodes that DataBrew can use when the job processes data.

type MaxRetries

integer

param MaxRetries

The maximum number of times to retry the job after a job run fails.

type OutputLocation

dict

param OutputLocation

[REQUIRED]

Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

  • Bucket (string) -- [REQUIRED]

    The Amazon S3 bucket name.

  • Key (string) --

    The unique name of the object in the bucket.

type Configuration

dict

param Configuration

Configuration for profile jobs. Used to select columns, do evaluations, and override default parameters of evaluations. When configuration is null, the profile job will run with default settings.

  • DatasetStatisticsConfiguration (dict) --

    Configuration for inter-column evaluations. Configuration can be used to select evaluations and override parameters of evaluations. When configuration is undefined, the profile job will run all supported inter-column evaluations.

    • IncludedStatistics (list) --

      List of included evaluations. When the list is undefined, all supported evaluations will be included.

      • (string) --

    • Overrides (list) --

      List of overrides for evaluations.

      • (dict) --

        Override of a particular evaluation for a profile job.

        • Statistic (string) -- [REQUIRED]

          The name of an evaluation

        • Parameters (dict) -- [REQUIRED]

          A map that includes overrides of an evaluation’s parameters.

          • (string) --

            • (string) --

  • ProfileColumns (list) --

    List of column selectors. ProfileColumns can be used to select columns from the dataset. When ProfileColumns is undefined, the profile job will profile all supported columns.

    • (dict) --

      Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

      • Regex (string) --

        A regular expression for selecting a column from a dataset.

      • Name (string) --

        The name of a column from a dataset.

  • ColumnStatisticsConfigurations (list) --

    List of configurations for column evaluations. ColumnStatisticsConfigurations are used to select evaluations and override parameters of evaluations for particular columns. When ColumnStatisticsConfigurations is undefined, the profile job will profile all supported columns and run all supported evaluations.

    • (dict) --

      Configuration for column evaluations for a profile job. ColumnStatisticsConfiguration can be used to select evaluations and override parameters of evaluations for particular columns.

      • Selectors (list) --

        List of column selectors. Selectors can be used to select columns from the dataset. When selectors are undefined, configuration will be applied to all supported columns.

        • (dict) --

          Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

          • Regex (string) --

            A regular expression for selecting a column from a dataset.

          • Name (string) --

            The name of a column from a dataset.

      • Statistics (dict) -- [REQUIRED]

        Configuration for evaluations. Statistics can be used to select evaluations and override parameters of evaluations.

        • IncludedStatistics (list) --

          List of included evaluations. When the list is undefined, all supported evaluations will be included.

          • (string) --

        • Overrides (list) --

          List of overrides for evaluations.

          • (dict) --

            Override of a particular evaluation for a profile job.

            • Statistic (string) -- [REQUIRED]

              The name of an evaluation

            • Parameters (dict) -- [REQUIRED]

              A map that includes overrides of an evaluation’s parameters.

              • (string) --

                • (string) --

  • EntityDetectorConfiguration (dict) --

    Configuration of entity detection for a profile job. When undefined, entity detection is disabled.

    • EntityTypes (list) -- [REQUIRED]

      Entity types to detect. Can be any of the following:

      • USA_SSN

      • EMAIL

      • USA_ITIN

      • USA_PASSPORT_NUMBER

      • PHONE_NUMBER

      • USA_DRIVING_LICENSE

      • BANK_ACCOUNT

      • CREDIT_CARD

      • IP_ADDRESS

      • MAC_ADDRESS

      • USA_DEA_NUMBER

      • USA_HCPCS_CODE

      • USA_NATIONAL_PROVIDER_IDENTIFIER

      • USA_NATIONAL_DRUG_CODE

      • USA_HEALTH_INSURANCE_CLAIM_NUMBER

      • USA_MEDICARE_BENEFICIARY_IDENTIFIER

      • USA_CPT_CODE

      • PERSON_NAME

      • DATE

      The Entity type group USA_ALL is also supported, and includes all of the above entity types except PERSON_NAME and DATE.

      • (string) --

    • AllowedStatistics (list) --

      Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

      • (dict) --

        Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

        • Statistics (list) -- [REQUIRED]

          One or more column statistics to allow for columns that contain detected entities.

          • (string) --

type ValidationConfigurations

list

param ValidationConfigurations

List of validation configurations that are applied to the profile job.

  • (dict) --

    Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

    • RulesetArn (string) -- [REQUIRED]

      The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

    • ValidationMode (string) --

      Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

type RoleArn

string

param RoleArn

[REQUIRED]

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be assumed when DataBrew runs the job.

type Tags

dict

param Tags

Metadata tags to apply to this job.

  • (string) --

    • (string) --

type Timeout

integer

param Timeout

The job's timeout in minutes. A job that attempts to run longer than this timeout period ends with a status of TIMEOUT .

type JobSample

dict

param JobSample

Sample configuration for profile jobs only. Determines the number of rows on which the profile job will be executed. If a JobSample value is not provided, the default value will be used. The default value is CUSTOM_ROWS for the mode parameter and 20000 for the size parameter.

  • Mode (string) --

    A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

    • FULL_DATASET - The profile job is run on the entire dataset.

    • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

  • Size (integer) --

    The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

    Long.MAX_VALUE = 9223372036854775807

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the job that was created.

DescribeDataset (updated) Link ¶
Changes (response)
{'Input': {'DatabaseInputDefinition': {'QueryString': 'string'},
           'Metadata': {'SourceArn': 'string'}}}

Returns the definition of a specific DataBrew dataset.

See also: AWS API Documentation

Request Syntax

client.describe_dataset(
    Name='string'
)
type Name

string

param Name

[REQUIRED]

The name of the dataset to be described.

rtype

dict

returns

Response Syntax

{
    'CreatedBy': 'string',
    'CreateDate': datetime(2015, 1, 1),
    'Name': 'string',
    'Format': 'CSV'|'JSON'|'PARQUET'|'EXCEL',
    'FormatOptions': {
        'Json': {
            'MultiLine': True|False
        },
        'Excel': {
            'SheetNames': [
                'string',
            ],
            'SheetIndexes': [
                123,
            ],
            'HeaderRow': True|False
        },
        'Csv': {
            'Delimiter': 'string',
            'HeaderRow': True|False
        }
    },
    'Input': {
        'S3InputDefinition': {
            'Bucket': 'string',
            'Key': 'string'
        },
        'DataCatalogInputDefinition': {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'TableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            }
        },
        'DatabaseInputDefinition': {
            'GlueConnectionName': 'string',
            'DatabaseTableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            },
            'QueryString': 'string'
        },
        'Metadata': {
            'SourceArn': 'string'
        }
    },
    'LastModifiedDate': datetime(2015, 1, 1),
    'LastModifiedBy': 'string',
    'Source': 'S3'|'DATA-CATALOG'|'DATABASE',
    'PathOptions': {
        'LastModifiedDateCondition': {
            'Expression': 'string',
            'ValuesMap': {
                'string': 'string'
            }
        },
        'FilesLimit': {
            'MaxFiles': 123,
            'OrderedBy': 'LAST_MODIFIED_DATE',
            'Order': 'DESCENDING'|'ASCENDING'
        },
        'Parameters': {
            'string': {
                'Name': 'string',
                'Type': 'Datetime'|'Number'|'String',
                'DatetimeOptions': {
                    'Format': 'string',
                    'TimezoneOffset': 'string',
                    'LocaleCode': 'string'
                },
                'CreateColumn': True|False,
                'Filter': {
                    'Expression': 'string',
                    'ValuesMap': {
                        'string': 'string'
                    }
                }
            }
        }
    },
    'Tags': {
        'string': 'string'
    },
    'ResourceArn': 'string'
}

Response Structure

  • (dict) --

    • CreatedBy (string) --

      The identifier (user name) of the user who created the dataset.

    • CreateDate (datetime) --

      The date and time that the dataset was created.

    • Name (string) --

      The name of the dataset.

    • Format (string) --

      The file format of a dataset that is created from an Amazon S3 file or folder.

    • FormatOptions (dict) --

      Represents a set of options that define the structure of either comma-separated value (CSV), Excel, or JSON input.

      • Json (dict) --

        Options that define how JSON input is to be interpreted by DataBrew.

        • MultiLine (boolean) --

          A value that specifies whether JSON input contains embedded new line characters.

      • Excel (dict) --

        Options that define how Excel input is to be interpreted by DataBrew.

        • SheetNames (list) --

          One or more named sheets in the Excel file that will be included in the dataset.

          • (string) --

        • SheetIndexes (list) --

          One or more sheet numbers in the Excel file that will be included in the dataset.

          • (integer) --

        • HeaderRow (boolean) --

          A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

      • Csv (dict) --

        Options that define how CSV input is to be interpreted by DataBrew.

        • Delimiter (string) --

          A single character that specifies the delimiter being used in the CSV file.

        • HeaderRow (boolean) --

          A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

    • Input (dict) --

      Represents information on how DataBrew can find data, in either the Glue Data Catalog or Amazon S3.

      • S3InputDefinition (dict) --

        The Amazon S3 location where the data is stored.

        • Bucket (string) --

          The Amazon S3 bucket name.

        • Key (string) --

          The unique name of the object in the bucket.

      • DataCatalogInputDefinition (dict) --

        The Glue Data Catalog parameters for the data.

        • CatalogId (string) --

          The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

        • DatabaseName (string) --

          The name of a database in the Data Catalog.

        • TableName (string) --

          The name of a database table in the Data Catalog. This table corresponds to a DataBrew dataset.

        • TempDirectory (dict) --

          Represents an Amazon location where DataBrew can store intermediate results.

          • Bucket (string) --

            The Amazon S3 bucket name.

          • Key (string) --

            The unique name of the object in the bucket.

      • DatabaseInputDefinition (dict) --

        Connection information for dataset input files stored in a database.

        • GlueConnectionName (string) --

          The Glue Connection that stores the connection information for the target database.

        • DatabaseTableName (string) --

          The table within the target database.

        • TempDirectory (dict) --

          Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

          • Bucket (string) --

            The Amazon S3 bucket name.

          • Key (string) --

            The unique name of the object in the bucket.

        • QueryString (string) --

          Custom SQL to run against the provided Glue connection. This SQL will be used as the input for DataBrew projects and jobs.

      • Metadata (dict) --

        Contains additional resource information needed for specific datasets.

        • SourceArn (string) --

          The Amazon Resource Name (ARN) associated with the dataset. Currently, DataBrew only supports ARNs from Amazon AppFlow.

    • LastModifiedDate (datetime) --

      The date and time that the dataset was last modified.

    • LastModifiedBy (string) --

      The identifier (user name) of the user who last modified the dataset.

    • Source (string) --

      The location of the data for this dataset, Amazon S3 or the Glue Data Catalog.

    • PathOptions (dict) --

      A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.

      • LastModifiedDateCondition (dict) --

        If provided, this structure defines a date range for matching Amazon S3 objects based on their LastModifiedDate attribute in Amazon S3.

        • Expression (string) --

          The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

        • ValuesMap (dict) --

          The map of substitution variable names to their values used in this filter expression.

          • (string) --

            • (string) --

      • FilesLimit (dict) --

        If provided, this structure imposes a limit on a number of files that should be selected.

        • MaxFiles (integer) --

          The number of Amazon S3 files to select.

        • OrderedBy (string) --

          A criteria to use for Amazon S3 files sorting before their selection. By default uses LAST_MODIFIED_DATE as a sorting criteria. Currently it's the only allowed value.

        • Order (string) --

          A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Anotherpossible value is ASCENDING.

      • Parameters (dict) --

        A structure that maps names of parameters used in the Amazon S3 path of a dataset to their definitions.

        • (string) --

          • (dict) --

            Represents a dataset paramater that defines type and conditions for a parameter in the Amazon S3 path of the dataset.

            • Name (string) --

              The name of the parameter that is used in the dataset's Amazon S3 path.

            • Type (string) --

              The type of the dataset parameter, can be one of a 'String', 'Number' or 'Datetime'.

            • DatetimeOptions (dict) --

              Additional parameter options such as a format and a timezone. Required for datetime parameters.

              • Format (string) --

                Required option, that defines the datetime format used for a date parameter in the Amazon S3 path. Should use only supported datetime specifiers and separation characters, all literal a-z or A-Z characters should be escaped with single quotes. E.g. "MM.dd.yyyy-'at'-HH:mm".

              • TimezoneOffset (string) --

                Optional value for a timezone offset of the datetime parameter value in the Amazon S3 path. Shouldn't be used if Format for this parameter includes timezone fields. If no offset specified, UTC is assumed.

              • LocaleCode (string) --

                Optional value for a non-US locale code, needed for correct interpretation of some date formats.

            • CreateColumn (boolean) --

              Optional boolean value that defines whether the captured value of this parameter should be used to create a new column in a dataset.

            • Filter (dict) --

              The optional filter expression structure to apply additional matching criteria to the parameter.

              • Expression (string) --

                The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

              • ValuesMap (dict) --

                The map of substitution variable names to their values used in this filter expression.

                • (string) --

                  • (string) --

    • Tags (dict) --

      Metadata tags associated with this dataset.

      • (string) --

        • (string) --

    • ResourceArn (string) --

      The Amazon Resource Name (ARN) of the dataset.

DescribeJob (updated) Link ¶
Changes (response)
{'ProfileConfiguration': {'EntityDetectorConfiguration': {'AllowedStatistics': [{'Statistics': ['string']}],
                                                          'EntityTypes': ['string']}},
 'ValidationConfigurations': [{'RulesetArn': 'string',
                               'ValidationMode': 'CHECK_ALL'}]}

Returns the definition of a specific DataBrew job.

See also: AWS API Documentation

Request Syntax

client.describe_job(
    Name='string'
)
type Name

string

param Name

[REQUIRED]

The name of the job to be described.

rtype

dict

returns

Response Syntax

{
    'CreateDate': datetime(2015, 1, 1),
    'CreatedBy': 'string',
    'DatasetName': 'string',
    'EncryptionKeyArn': 'string',
    'EncryptionMode': 'SSE-KMS'|'SSE-S3',
    'Name': 'string',
    'Type': 'PROFILE'|'RECIPE',
    'LastModifiedBy': 'string',
    'LastModifiedDate': datetime(2015, 1, 1),
    'LogSubscription': 'ENABLE'|'DISABLE',
    'MaxCapacity': 123,
    'MaxRetries': 123,
    'Outputs': [
        {
            'CompressionFormat': 'GZIP'|'LZ4'|'SNAPPY'|'BZIP2'|'DEFLATE'|'LZO'|'BROTLI'|'ZSTD'|'ZLIB',
            'Format': 'CSV'|'JSON'|'PARQUET'|'GLUEPARQUET'|'AVRO'|'ORC'|'XML'|'TABLEAUHYPER',
            'PartitionColumns': [
                'string',
            ],
            'Location': {
                'Bucket': 'string',
                'Key': 'string'
            },
            'Overwrite': True|False,
            'FormatOptions': {
                'Csv': {
                    'Delimiter': 'string'
                }
            }
        },
    ],
    'DataCatalogOutputs': [
        {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'TableName': 'string',
            'S3Options': {
                'Location': {
                    'Bucket': 'string',
                    'Key': 'string'
                }
            },
            'DatabaseOptions': {
                'TempDirectory': {
                    'Bucket': 'string',
                    'Key': 'string'
                },
                'TableName': 'string'
            },
            'Overwrite': True|False
        },
    ],
    'DatabaseOutputs': [
        {
            'GlueConnectionName': 'string',
            'DatabaseOptions': {
                'TempDirectory': {
                    'Bucket': 'string',
                    'Key': 'string'
                },
                'TableName': 'string'
            },
            'DatabaseOutputMode': 'NEW_TABLE'
        },
    ],
    'ProjectName': 'string',
    'ProfileConfiguration': {
        'DatasetStatisticsConfiguration': {
            'IncludedStatistics': [
                'string',
            ],
            'Overrides': [
                {
                    'Statistic': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ]
        },
        'ProfileColumns': [
            {
                'Regex': 'string',
                'Name': 'string'
            },
        ],
        'ColumnStatisticsConfigurations': [
            {
                'Selectors': [
                    {
                        'Regex': 'string',
                        'Name': 'string'
                    },
                ],
                'Statistics': {
                    'IncludedStatistics': [
                        'string',
                    ],
                    'Overrides': [
                        {
                            'Statistic': 'string',
                            'Parameters': {
                                'string': 'string'
                            }
                        },
                    ]
                }
            },
        ],
        'EntityDetectorConfiguration': {
            'EntityTypes': [
                'string',
            ],
            'AllowedStatistics': [
                {
                    'Statistics': [
                        'string',
                    ]
                },
            ]
        }
    },
    'ValidationConfigurations': [
        {
            'RulesetArn': 'string',
            'ValidationMode': 'CHECK_ALL'
        },
    ],
    'RecipeReference': {
        'Name': 'string',
        'RecipeVersion': 'string'
    },
    'ResourceArn': 'string',
    'RoleArn': 'string',
    'Tags': {
        'string': 'string'
    },
    'Timeout': 123,
    'JobSample': {
        'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
        'Size': 123
    }
}

Response Structure

  • (dict) --

    • CreateDate (datetime) --

      The date and time that the job was created.

    • CreatedBy (string) --

      The identifier (user name) of the user associated with the creation of the job.

    • DatasetName (string) --

      The dataset that the job acts upon.

    • EncryptionKeyArn (string) --

      The Amazon Resource Name (ARN) of an encryption key that is used to protect the job.

    • EncryptionMode (string) --

      The encryption mode for the job, which can be one of the following:

      • SSE-KMS - Server-side encryption with keys managed by KMS.

      • SSE-S3 - Server-side encryption with keys managed by Amazon S3.

    • Name (string) --

      The name of the job.

    • Type (string) --

      The job type, which must be one of the following:

      • PROFILE - The job analyzes the dataset to determine its size, data types, data distribution, and more.

      • RECIPE - The job applies one or more transformations to a dataset.

    • LastModifiedBy (string) --

      The identifier (user name) of the user who last modified the job.

    • LastModifiedDate (datetime) --

      The date and time that the job was last modified.

    • LogSubscription (string) --

      Indicates whether Amazon CloudWatch logging is enabled for this job.

    • MaxCapacity (integer) --

      The maximum number of compute nodes that DataBrew can consume when the job processes data.

    • MaxRetries (integer) --

      The maximum number of times to retry the job after a job run fails.

    • Outputs (list) --

      One or more artifacts that represent the output from running the job.

      • (dict) --

        Represents options that specify how and where in Amazon S3 DataBrew writes the output generated by recipe jobs or profile jobs.

        • CompressionFormat (string) --

          The compression algorithm used to compress the output text of the job.

        • Format (string) --

          The data format of the output of the job.

        • PartitionColumns (list) --

          The names of one or more partition columns for the output of the job.

          • (string) --

        • Location (dict) --

          The location in Amazon S3 where the job writes its output.

          • Bucket (string) --

            The Amazon S3 bucket name.

          • Key (string) --

            The unique name of the object in the bucket.

        • Overwrite (boolean) --

          A value that, if true, means that any data in the location specified for output is overwritten with new output.

        • FormatOptions (dict) --

          Represents options that define how DataBrew formats job output files.

          • Csv (dict) --

            Represents a set of options that define the structure of comma-separated value (CSV) job output.

            • Delimiter (string) --

              A single character that specifies the delimiter used to create CSV job output.

    • DataCatalogOutputs (list) --

      One or more artifacts that represent the Glue Data Catalog output from running the job.

      • (dict) --

        Represents options that specify how and where in the Glue Data Catalog DataBrew writes the output generated by recipe jobs.

        • CatalogId (string) --

          The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

        • DatabaseName (string) --

          The name of a database in the Data Catalog.

        • TableName (string) --

          The name of a table in the Data Catalog.

        • S3Options (dict) --

          Represents options that specify how and where DataBrew writes the Amazon S3 output generated by recipe jobs.

          • Location (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can write output from a job.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

        • DatabaseOptions (dict) --

          Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

          • TempDirectory (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

          • TableName (string) --

            A prefix for the name of a table DataBrew will create in the database.

        • Overwrite (boolean) --

          A value that, if true, means that any data in the location specified for output is overwritten with new output. Not supported with DatabaseOptions.

    • DatabaseOutputs (list) --

      Represents a list of JDBC database output objects which defines the output destination for a DataBrew recipe job to write into.

      • (dict) --

        Represents a JDBC database output object which defines the output destination for a DataBrew recipe job to write into.

        • GlueConnectionName (string) --

          The Glue connection that stores the connection information for the target database.

        • DatabaseOptions (dict) --

          Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

          • TempDirectory (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

          • TableName (string) --

            A prefix for the name of a table DataBrew will create in the database.

        • DatabaseOutputMode (string) --

          The output mode to write into the database. Currently supported option: NEW_TABLE.

    • ProjectName (string) --

      The DataBrew project associated with this job.

    • ProfileConfiguration (dict) --

      Configuration for profile jobs. Used to select columns, do evaluations, and override default parameters of evaluations. When configuration is null, the profile job will run with default settings.

      • DatasetStatisticsConfiguration (dict) --

        Configuration for inter-column evaluations. Configuration can be used to select evaluations and override parameters of evaluations. When configuration is undefined, the profile job will run all supported inter-column evaluations.

        • IncludedStatistics (list) --

          List of included evaluations. When the list is undefined, all supported evaluations will be included.

          • (string) --

        • Overrides (list) --

          List of overrides for evaluations.

          • (dict) --

            Override of a particular evaluation for a profile job.

            • Statistic (string) --

              The name of an evaluation

            • Parameters (dict) --

              A map that includes overrides of an evaluation’s parameters.

              • (string) --

                • (string) --

      • ProfileColumns (list) --

        List of column selectors. ProfileColumns can be used to select columns from the dataset. When ProfileColumns is undefined, the profile job will profile all supported columns.

        • (dict) --

          Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

          • Regex (string) --

            A regular expression for selecting a column from a dataset.

          • Name (string) --

            The name of a column from a dataset.

      • ColumnStatisticsConfigurations (list) --

        List of configurations for column evaluations. ColumnStatisticsConfigurations are used to select evaluations and override parameters of evaluations for particular columns. When ColumnStatisticsConfigurations is undefined, the profile job will profile all supported columns and run all supported evaluations.

        • (dict) --

          Configuration for column evaluations for a profile job. ColumnStatisticsConfiguration can be used to select evaluations and override parameters of evaluations for particular columns.

          • Selectors (list) --

            List of column selectors. Selectors can be used to select columns from the dataset. When selectors are undefined, configuration will be applied to all supported columns.

            • (dict) --

              Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

              • Regex (string) --

                A regular expression for selecting a column from a dataset.

              • Name (string) --

                The name of a column from a dataset.

          • Statistics (dict) --

            Configuration for evaluations. Statistics can be used to select evaluations and override parameters of evaluations.

            • IncludedStatistics (list) --

              List of included evaluations. When the list is undefined, all supported evaluations will be included.

              • (string) --

            • Overrides (list) --

              List of overrides for evaluations.

              • (dict) --

                Override of a particular evaluation for a profile job.

                • Statistic (string) --

                  The name of an evaluation

                • Parameters (dict) --

                  A map that includes overrides of an evaluation’s parameters.

                  • (string) --

                    • (string) --

      • EntityDetectorConfiguration (dict) --

        Configuration of entity detection for a profile job. When undefined, entity detection is disabled.

        • EntityTypes (list) --

          Entity types to detect. Can be any of the following:

          • USA_SSN

          • EMAIL

          • USA_ITIN

          • USA_PASSPORT_NUMBER

          • PHONE_NUMBER

          • USA_DRIVING_LICENSE

          • BANK_ACCOUNT

          • CREDIT_CARD

          • IP_ADDRESS

          • MAC_ADDRESS

          • USA_DEA_NUMBER

          • USA_HCPCS_CODE

          • USA_NATIONAL_PROVIDER_IDENTIFIER

          • USA_NATIONAL_DRUG_CODE

          • USA_HEALTH_INSURANCE_CLAIM_NUMBER

          • USA_MEDICARE_BENEFICIARY_IDENTIFIER

          • USA_CPT_CODE

          • PERSON_NAME

          • DATE

          The Entity type group USA_ALL is also supported, and includes all of the above entity types except PERSON_NAME and DATE.

          • (string) --

        • AllowedStatistics (list) --

          Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

          • (dict) --

            Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

            • Statistics (list) --

              One or more column statistics to allow for columns that contain detected entities.

              • (string) --

    • ValidationConfigurations (list) --

      List of validation configurations that are applied to the profile job.

      • (dict) --

        Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

        • RulesetArn (string) --

          The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

        • ValidationMode (string) --

          Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

    • RecipeReference (dict) --

      Represents the name and version of a DataBrew recipe.

      • Name (string) --

        The name of the recipe.

      • RecipeVersion (string) --

        The identifier for the version for the recipe.

    • ResourceArn (string) --

      The Amazon Resource Name (ARN) of the job.

    • RoleArn (string) --

      The ARN of the Identity and Access Management (IAM) role to be assumed when DataBrew runs the job.

    • Tags (dict) --

      Metadata tags associated with this job.

      • (string) --

        • (string) --

    • Timeout (integer) --

      The job's timeout in minutes. A job that attempts to run longer than this timeout period ends with a status of TIMEOUT .

    • JobSample (dict) --

      Sample configuration for profile jobs only. Determines the number of rows on which the profile job will be executed.

      • Mode (string) --

        A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

        • FULL_DATASET - The profile job is run on the entire dataset.

        • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

      • Size (integer) --

        The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

        Long.MAX_VALUE = 9223372036854775807

DescribeJobRun (updated) Link ¶
Changes (response)
{'ProfileConfiguration': {'EntityDetectorConfiguration': {'AllowedStatistics': [{'Statistics': ['string']}],
                                                          'EntityTypes': ['string']}},
 'ValidationConfigurations': [{'RulesetArn': 'string',
                               'ValidationMode': 'CHECK_ALL'}]}

Represents one run of a DataBrew job.

See also: AWS API Documentation

Request Syntax

client.describe_job_run(
    Name='string',
    RunId='string'
)
type Name

string

param Name

[REQUIRED]

The name of the job being processed during this run.

type RunId

string

param RunId

[REQUIRED]

The unique identifier of the job run.

rtype

dict

returns

Response Syntax

{
    'Attempt': 123,
    'CompletedOn': datetime(2015, 1, 1),
    'DatasetName': 'string',
    'ErrorMessage': 'string',
    'ExecutionTime': 123,
    'JobName': 'string',
    'ProfileConfiguration': {
        'DatasetStatisticsConfiguration': {
            'IncludedStatistics': [
                'string',
            ],
            'Overrides': [
                {
                    'Statistic': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ]
        },
        'ProfileColumns': [
            {
                'Regex': 'string',
                'Name': 'string'
            },
        ],
        'ColumnStatisticsConfigurations': [
            {
                'Selectors': [
                    {
                        'Regex': 'string',
                        'Name': 'string'
                    },
                ],
                'Statistics': {
                    'IncludedStatistics': [
                        'string',
                    ],
                    'Overrides': [
                        {
                            'Statistic': 'string',
                            'Parameters': {
                                'string': 'string'
                            }
                        },
                    ]
                }
            },
        ],
        'EntityDetectorConfiguration': {
            'EntityTypes': [
                'string',
            ],
            'AllowedStatistics': [
                {
                    'Statistics': [
                        'string',
                    ]
                },
            ]
        }
    },
    'ValidationConfigurations': [
        {
            'RulesetArn': 'string',
            'ValidationMode': 'CHECK_ALL'
        },
    ],
    'RunId': 'string',
    'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
    'LogSubscription': 'ENABLE'|'DISABLE',
    'LogGroupName': 'string',
    'Outputs': [
        {
            'CompressionFormat': 'GZIP'|'LZ4'|'SNAPPY'|'BZIP2'|'DEFLATE'|'LZO'|'BROTLI'|'ZSTD'|'ZLIB',
            'Format': 'CSV'|'JSON'|'PARQUET'|'GLUEPARQUET'|'AVRO'|'ORC'|'XML'|'TABLEAUHYPER',
            'PartitionColumns': [
                'string',
            ],
            'Location': {
                'Bucket': 'string',
                'Key': 'string'
            },
            'Overwrite': True|False,
            'FormatOptions': {
                'Csv': {
                    'Delimiter': 'string'
                }
            }
        },
    ],
    'DataCatalogOutputs': [
        {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'TableName': 'string',
            'S3Options': {
                'Location': {
                    'Bucket': 'string',
                    'Key': 'string'
                }
            },
            'DatabaseOptions': {
                'TempDirectory': {
                    'Bucket': 'string',
                    'Key': 'string'
                },
                'TableName': 'string'
            },
            'Overwrite': True|False
        },
    ],
    'DatabaseOutputs': [
        {
            'GlueConnectionName': 'string',
            'DatabaseOptions': {
                'TempDirectory': {
                    'Bucket': 'string',
                    'Key': 'string'
                },
                'TableName': 'string'
            },
            'DatabaseOutputMode': 'NEW_TABLE'
        },
    ],
    'RecipeReference': {
        'Name': 'string',
        'RecipeVersion': 'string'
    },
    'StartedBy': 'string',
    'StartedOn': datetime(2015, 1, 1),
    'JobSample': {
        'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
        'Size': 123
    }
}

Response Structure

  • (dict) --

    • Attempt (integer) --

      The number of times that DataBrew has attempted to run the job.

    • CompletedOn (datetime) --

      The date and time when the job completed processing.

    • DatasetName (string) --

      The name of the dataset for the job to process.

    • ErrorMessage (string) --

      A message indicating an error (if any) that was encountered when the job ran.

    • ExecutionTime (integer) --

      The amount of time, in seconds, during which the job run consumed resources.

    • JobName (string) --

      The name of the job being processed during this run.

    • ProfileConfiguration (dict) --

      Configuration for profile jobs. Used to select columns, do evaluations, and override default parameters of evaluations. When configuration is null, the profile job will run with default settings.

      • DatasetStatisticsConfiguration (dict) --

        Configuration for inter-column evaluations. Configuration can be used to select evaluations and override parameters of evaluations. When configuration is undefined, the profile job will run all supported inter-column evaluations.

        • IncludedStatistics (list) --

          List of included evaluations. When the list is undefined, all supported evaluations will be included.

          • (string) --

        • Overrides (list) --

          List of overrides for evaluations.

          • (dict) --

            Override of a particular evaluation for a profile job.

            • Statistic (string) --

              The name of an evaluation

            • Parameters (dict) --

              A map that includes overrides of an evaluation’s parameters.

              • (string) --

                • (string) --

      • ProfileColumns (list) --

        List of column selectors. ProfileColumns can be used to select columns from the dataset. When ProfileColumns is undefined, the profile job will profile all supported columns.

        • (dict) --

          Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

          • Regex (string) --

            A regular expression for selecting a column from a dataset.

          • Name (string) --

            The name of a column from a dataset.

      • ColumnStatisticsConfigurations (list) --

        List of configurations for column evaluations. ColumnStatisticsConfigurations are used to select evaluations and override parameters of evaluations for particular columns. When ColumnStatisticsConfigurations is undefined, the profile job will profile all supported columns and run all supported evaluations.

        • (dict) --

          Configuration for column evaluations for a profile job. ColumnStatisticsConfiguration can be used to select evaluations and override parameters of evaluations for particular columns.

          • Selectors (list) --

            List of column selectors. Selectors can be used to select columns from the dataset. When selectors are undefined, configuration will be applied to all supported columns.

            • (dict) --

              Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

              • Regex (string) --

                A regular expression for selecting a column from a dataset.

              • Name (string) --

                The name of a column from a dataset.

          • Statistics (dict) --

            Configuration for evaluations. Statistics can be used to select evaluations and override parameters of evaluations.

            • IncludedStatistics (list) --

              List of included evaluations. When the list is undefined, all supported evaluations will be included.

              • (string) --

            • Overrides (list) --

              List of overrides for evaluations.

              • (dict) --

                Override of a particular evaluation for a profile job.

                • Statistic (string) --

                  The name of an evaluation

                • Parameters (dict) --

                  A map that includes overrides of an evaluation’s parameters.

                  • (string) --

                    • (string) --

      • EntityDetectorConfiguration (dict) --

        Configuration of entity detection for a profile job. When undefined, entity detection is disabled.

        • EntityTypes (list) --

          Entity types to detect. Can be any of the following:

          • USA_SSN

          • EMAIL

          • USA_ITIN

          • USA_PASSPORT_NUMBER

          • PHONE_NUMBER

          • USA_DRIVING_LICENSE

          • BANK_ACCOUNT

          • CREDIT_CARD

          • IP_ADDRESS

          • MAC_ADDRESS

          • USA_DEA_NUMBER

          • USA_HCPCS_CODE

          • USA_NATIONAL_PROVIDER_IDENTIFIER

          • USA_NATIONAL_DRUG_CODE

          • USA_HEALTH_INSURANCE_CLAIM_NUMBER

          • USA_MEDICARE_BENEFICIARY_IDENTIFIER

          • USA_CPT_CODE

          • PERSON_NAME

          • DATE

          The Entity type group USA_ALL is also supported, and includes all of the above entity types except PERSON_NAME and DATE.

          • (string) --

        • AllowedStatistics (list) --

          Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

          • (dict) --

            Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

            • Statistics (list) --

              One or more column statistics to allow for columns that contain detected entities.

              • (string) --

    • ValidationConfigurations (list) --

      List of validation configurations that are applied to the profile job.

      • (dict) --

        Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

        • RulesetArn (string) --

          The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

        • ValidationMode (string) --

          Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

    • RunId (string) --

      The unique identifier of the job run.

    • State (string) --

      The current state of the job run entity itself.

    • LogSubscription (string) --

      The current status of Amazon CloudWatch logging for the job run.

    • LogGroupName (string) --

      The name of an Amazon CloudWatch log group, where the job writes diagnostic messages when it runs.

    • Outputs (list) --

      One or more output artifacts from a job run.

      • (dict) --

        Represents options that specify how and where in Amazon S3 DataBrew writes the output generated by recipe jobs or profile jobs.

        • CompressionFormat (string) --

          The compression algorithm used to compress the output text of the job.

        • Format (string) --

          The data format of the output of the job.

        • PartitionColumns (list) --

          The names of one or more partition columns for the output of the job.

          • (string) --

        • Location (dict) --

          The location in Amazon S3 where the job writes its output.

          • Bucket (string) --

            The Amazon S3 bucket name.

          • Key (string) --

            The unique name of the object in the bucket.

        • Overwrite (boolean) --

          A value that, if true, means that any data in the location specified for output is overwritten with new output.

        • FormatOptions (dict) --

          Represents options that define how DataBrew formats job output files.

          • Csv (dict) --

            Represents a set of options that define the structure of comma-separated value (CSV) job output.

            • Delimiter (string) --

              A single character that specifies the delimiter used to create CSV job output.

    • DataCatalogOutputs (list) --

      One or more artifacts that represent the Glue Data Catalog output from running the job.

      • (dict) --

        Represents options that specify how and where in the Glue Data Catalog DataBrew writes the output generated by recipe jobs.

        • CatalogId (string) --

          The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

        • DatabaseName (string) --

          The name of a database in the Data Catalog.

        • TableName (string) --

          The name of a table in the Data Catalog.

        • S3Options (dict) --

          Represents options that specify how and where DataBrew writes the Amazon S3 output generated by recipe jobs.

          • Location (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can write output from a job.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

        • DatabaseOptions (dict) --

          Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

          • TempDirectory (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

          • TableName (string) --

            A prefix for the name of a table DataBrew will create in the database.

        • Overwrite (boolean) --

          A value that, if true, means that any data in the location specified for output is overwritten with new output. Not supported with DatabaseOptions.

    • DatabaseOutputs (list) --

      Represents a list of JDBC database output objects which defines the output destination for a DataBrew recipe job to write into.

      • (dict) --

        Represents a JDBC database output object which defines the output destination for a DataBrew recipe job to write into.

        • GlueConnectionName (string) --

          The Glue connection that stores the connection information for the target database.

        • DatabaseOptions (dict) --

          Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

          • TempDirectory (dict) --

            Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

          • TableName (string) --

            A prefix for the name of a table DataBrew will create in the database.

        • DatabaseOutputMode (string) --

          The output mode to write into the database. Currently supported option: NEW_TABLE.

    • RecipeReference (dict) --

      Represents the name and version of a DataBrew recipe.

      • Name (string) --

        The name of the recipe.

      • RecipeVersion (string) --

        The identifier for the version for the recipe.

    • StartedBy (string) --

      The Amazon Resource Name (ARN) of the user who started the job run.

    • StartedOn (datetime) --

      The date and time when the job run began.

    • JobSample (dict) --

      Sample configuration for profile jobs only. Determines the number of rows on which the profile job will be executed. If a JobSample value is not provided, the default value will be used. The default value is CUSTOM_ROWS for the mode parameter and 20000 for the size parameter.

      • Mode (string) --

        A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

        • FULL_DATASET - The profile job is run on the entire dataset.

        • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

      • Size (integer) --

        The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

        Long.MAX_VALUE = 9223372036854775807

ListDatasets (updated) Link ¶
Changes (response)
{'Datasets': {'Input': {'DatabaseInputDefinition': {'QueryString': 'string'},
                        'Metadata': {'SourceArn': 'string'}}}}

Lists all of the DataBrew datasets.

See also: AWS API Documentation

Request Syntax

client.list_datasets(
    MaxResults=123,
    NextToken='string'
)
type MaxResults

integer

param MaxResults

The maximum number of results to return in this request.

type NextToken

string

param NextToken

The token returned by a previous call to retrieve the next set of results.

rtype

dict

returns

Response Syntax

{
    'Datasets': [
        {
            'AccountId': 'string',
            'CreatedBy': 'string',
            'CreateDate': datetime(2015, 1, 1),
            'Name': 'string',
            'Format': 'CSV'|'JSON'|'PARQUET'|'EXCEL',
            'FormatOptions': {
                'Json': {
                    'MultiLine': True|False
                },
                'Excel': {
                    'SheetNames': [
                        'string',
                    ],
                    'SheetIndexes': [
                        123,
                    ],
                    'HeaderRow': True|False
                },
                'Csv': {
                    'Delimiter': 'string',
                    'HeaderRow': True|False
                }
            },
            'Input': {
                'S3InputDefinition': {
                    'Bucket': 'string',
                    'Key': 'string'
                },
                'DataCatalogInputDefinition': {
                    'CatalogId': 'string',
                    'DatabaseName': 'string',
                    'TableName': 'string',
                    'TempDirectory': {
                        'Bucket': 'string',
                        'Key': 'string'
                    }
                },
                'DatabaseInputDefinition': {
                    'GlueConnectionName': 'string',
                    'DatabaseTableName': 'string',
                    'TempDirectory': {
                        'Bucket': 'string',
                        'Key': 'string'
                    },
                    'QueryString': 'string'
                },
                'Metadata': {
                    'SourceArn': 'string'
                }
            },
            'LastModifiedDate': datetime(2015, 1, 1),
            'LastModifiedBy': 'string',
            'Source': 'S3'|'DATA-CATALOG'|'DATABASE',
            'PathOptions': {
                'LastModifiedDateCondition': {
                    'Expression': 'string',
                    'ValuesMap': {
                        'string': 'string'
                    }
                },
                'FilesLimit': {
                    'MaxFiles': 123,
                    'OrderedBy': 'LAST_MODIFIED_DATE',
                    'Order': 'DESCENDING'|'ASCENDING'
                },
                'Parameters': {
                    'string': {
                        'Name': 'string',
                        'Type': 'Datetime'|'Number'|'String',
                        'DatetimeOptions': {
                            'Format': 'string',
                            'TimezoneOffset': 'string',
                            'LocaleCode': 'string'
                        },
                        'CreateColumn': True|False,
                        'Filter': {
                            'Expression': 'string',
                            'ValuesMap': {
                                'string': 'string'
                            }
                        }
                    }
                }
            },
            'Tags': {
                'string': 'string'
            },
            'ResourceArn': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Datasets (list) --

      A list of datasets that are defined.

      • (dict) --

        Represents a dataset that can be processed by DataBrew.

        • AccountId (string) --

          The ID of the Amazon Web Services account that owns the dataset.

        • CreatedBy (string) --

          The Amazon Resource Name (ARN) of the user who created the dataset.

        • CreateDate (datetime) --

          The date and time that the dataset was created.

        • Name (string) --

          The unique name of the dataset.

        • Format (string) --

          The file format of a dataset that is created from an Amazon S3 file or folder.

        • FormatOptions (dict) --

          A set of options that define how DataBrew interprets the data in the dataset.

          • Json (dict) --

            Options that define how JSON input is to be interpreted by DataBrew.

            • MultiLine (boolean) --

              A value that specifies whether JSON input contains embedded new line characters.

          • Excel (dict) --

            Options that define how Excel input is to be interpreted by DataBrew.

            • SheetNames (list) --

              One or more named sheets in the Excel file that will be included in the dataset.

              • (string) --

            • SheetIndexes (list) --

              One or more sheet numbers in the Excel file that will be included in the dataset.

              • (integer) --

            • HeaderRow (boolean) --

              A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

          • Csv (dict) --

            Options that define how CSV input is to be interpreted by DataBrew.

            • Delimiter (string) --

              A single character that specifies the delimiter being used in the CSV file.

            • HeaderRow (boolean) --

              A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

        • Input (dict) --

          Information on how DataBrew can find the dataset, in either the Glue Data Catalog or Amazon S3.

          • S3InputDefinition (dict) --

            The Amazon S3 location where the data is stored.

            • Bucket (string) --

              The Amazon S3 bucket name.

            • Key (string) --

              The unique name of the object in the bucket.

          • DataCatalogInputDefinition (dict) --

            The Glue Data Catalog parameters for the data.

            • CatalogId (string) --

              The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

            • DatabaseName (string) --

              The name of a database in the Data Catalog.

            • TableName (string) --

              The name of a database table in the Data Catalog. This table corresponds to a DataBrew dataset.

            • TempDirectory (dict) --

              Represents an Amazon location where DataBrew can store intermediate results.

              • Bucket (string) --

                The Amazon S3 bucket name.

              • Key (string) --

                The unique name of the object in the bucket.

          • DatabaseInputDefinition (dict) --

            Connection information for dataset input files stored in a database.

            • GlueConnectionName (string) --

              The Glue Connection that stores the connection information for the target database.

            • DatabaseTableName (string) --

              The table within the target database.

            • TempDirectory (dict) --

              Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

              • Bucket (string) --

                The Amazon S3 bucket name.

              • Key (string) --

                The unique name of the object in the bucket.

            • QueryString (string) --

              Custom SQL to run against the provided Glue connection. This SQL will be used as the input for DataBrew projects and jobs.

          • Metadata (dict) --

            Contains additional resource information needed for specific datasets.

            • SourceArn (string) --

              The Amazon Resource Name (ARN) associated with the dataset. Currently, DataBrew only supports ARNs from Amazon AppFlow.

        • LastModifiedDate (datetime) --

          The last modification date and time of the dataset.

        • LastModifiedBy (string) --

          The Amazon Resource Name (ARN) of the user who last modified the dataset.

        • Source (string) --

          The location of the data for the dataset, either Amazon S3 or the Glue Data Catalog.

        • PathOptions (dict) --

          A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.

          • LastModifiedDateCondition (dict) --

            If provided, this structure defines a date range for matching Amazon S3 objects based on their LastModifiedDate attribute in Amazon S3.

            • Expression (string) --

              The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

            • ValuesMap (dict) --

              The map of substitution variable names to their values used in this filter expression.

              • (string) --

                • (string) --

          • FilesLimit (dict) --

            If provided, this structure imposes a limit on a number of files that should be selected.

            • MaxFiles (integer) --

              The number of Amazon S3 files to select.

            • OrderedBy (string) --

              A criteria to use for Amazon S3 files sorting before their selection. By default uses LAST_MODIFIED_DATE as a sorting criteria. Currently it's the only allowed value.

            • Order (string) --

              A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Anotherpossible value is ASCENDING.

          • Parameters (dict) --

            A structure that maps names of parameters used in the Amazon S3 path of a dataset to their definitions.

            • (string) --

              • (dict) --

                Represents a dataset paramater that defines type and conditions for a parameter in the Amazon S3 path of the dataset.

                • Name (string) --

                  The name of the parameter that is used in the dataset's Amazon S3 path.

                • Type (string) --

                  The type of the dataset parameter, can be one of a 'String', 'Number' or 'Datetime'.

                • DatetimeOptions (dict) --

                  Additional parameter options such as a format and a timezone. Required for datetime parameters.

                  • Format (string) --

                    Required option, that defines the datetime format used for a date parameter in the Amazon S3 path. Should use only supported datetime specifiers and separation characters, all literal a-z or A-Z characters should be escaped with single quotes. E.g. "MM.dd.yyyy-'at'-HH:mm".

                  • TimezoneOffset (string) --

                    Optional value for a timezone offset of the datetime parameter value in the Amazon S3 path. Shouldn't be used if Format for this parameter includes timezone fields. If no offset specified, UTC is assumed.

                  • LocaleCode (string) --

                    Optional value for a non-US locale code, needed for correct interpretation of some date formats.

                • CreateColumn (boolean) --

                  Optional boolean value that defines whether the captured value of this parameter should be used to create a new column in a dataset.

                • Filter (dict) --

                  The optional filter expression structure to apply additional matching criteria to the parameter.

                  • Expression (string) --

                    The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

                  • ValuesMap (dict) --

                    The map of substitution variable names to their values used in this filter expression.

                    • (string) --

                      • (string) --

        • Tags (dict) --

          Metadata tags that have been applied to the dataset.

          • (string) --

            • (string) --

        • ResourceArn (string) --

          The unique Amazon Resource Name (ARN) for the dataset.

    • NextToken (string) --

      A token that you can use in a subsequent call to retrieve the next set of results.

ListJobRuns (updated) Link ¶
Changes (response)
{'JobRuns': {'ValidationConfigurations': [{'RulesetArn': 'string',
                                           'ValidationMode': 'CHECK_ALL'}]}}

Lists all of the previous runs of a particular DataBrew job.

See also: AWS API Documentation

Request Syntax

client.list_job_runs(
    Name='string',
    MaxResults=123,
    NextToken='string'
)
type Name

string

param Name

[REQUIRED]

The name of the job.

type MaxResults

integer

param MaxResults

The maximum number of results to return in this request.

type NextToken

string

param NextToken

The token returned by a previous call to retrieve the next set of results.

rtype

dict

returns

Response Syntax

{
    'JobRuns': [
        {
            'Attempt': 123,
            'CompletedOn': datetime(2015, 1, 1),
            'DatasetName': 'string',
            'ErrorMessage': 'string',
            'ExecutionTime': 123,
            'JobName': 'string',
            'RunId': 'string',
            'State': 'STARTING'|'RUNNING'|'STOPPING'|'STOPPED'|'SUCCEEDED'|'FAILED'|'TIMEOUT',
            'LogSubscription': 'ENABLE'|'DISABLE',
            'LogGroupName': 'string',
            'Outputs': [
                {
                    'CompressionFormat': 'GZIP'|'LZ4'|'SNAPPY'|'BZIP2'|'DEFLATE'|'LZO'|'BROTLI'|'ZSTD'|'ZLIB',
                    'Format': 'CSV'|'JSON'|'PARQUET'|'GLUEPARQUET'|'AVRO'|'ORC'|'XML'|'TABLEAUHYPER',
                    'PartitionColumns': [
                        'string',
                    ],
                    'Location': {
                        'Bucket': 'string',
                        'Key': 'string'
                    },
                    'Overwrite': True|False,
                    'FormatOptions': {
                        'Csv': {
                            'Delimiter': 'string'
                        }
                    }
                },
            ],
            'DataCatalogOutputs': [
                {
                    'CatalogId': 'string',
                    'DatabaseName': 'string',
                    'TableName': 'string',
                    'S3Options': {
                        'Location': {
                            'Bucket': 'string',
                            'Key': 'string'
                        }
                    },
                    'DatabaseOptions': {
                        'TempDirectory': {
                            'Bucket': 'string',
                            'Key': 'string'
                        },
                        'TableName': 'string'
                    },
                    'Overwrite': True|False
                },
            ],
            'DatabaseOutputs': [
                {
                    'GlueConnectionName': 'string',
                    'DatabaseOptions': {
                        'TempDirectory': {
                            'Bucket': 'string',
                            'Key': 'string'
                        },
                        'TableName': 'string'
                    },
                    'DatabaseOutputMode': 'NEW_TABLE'
                },
            ],
            'RecipeReference': {
                'Name': 'string',
                'RecipeVersion': 'string'
            },
            'StartedBy': 'string',
            'StartedOn': datetime(2015, 1, 1),
            'JobSample': {
                'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
                'Size': 123
            },
            'ValidationConfigurations': [
                {
                    'RulesetArn': 'string',
                    'ValidationMode': 'CHECK_ALL'
                },
            ]
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • JobRuns (list) --

      A list of job runs that have occurred for the specified job.

      • (dict) --

        Represents one run of a DataBrew job.

        • Attempt (integer) --

          The number of times that DataBrew has attempted to run the job.

        • CompletedOn (datetime) --

          The date and time when the job completed processing.

        • DatasetName (string) --

          The name of the dataset for the job to process.

        • ErrorMessage (string) --

          A message indicating an error (if any) that was encountered when the job ran.

        • ExecutionTime (integer) --

          The amount of time, in seconds, during which a job run consumed resources.

        • JobName (string) --

          The name of the job being processed during this run.

        • RunId (string) --

          The unique identifier of the job run.

        • State (string) --

          The current state of the job run entity itself.

        • LogSubscription (string) --

          The current status of Amazon CloudWatch logging for the job run.

        • LogGroupName (string) --

          The name of an Amazon CloudWatch log group, where the job writes diagnostic messages when it runs.

        • Outputs (list) --

          One or more output artifacts from a job run.

          • (dict) --

            Represents options that specify how and where in Amazon S3 DataBrew writes the output generated by recipe jobs or profile jobs.

            • CompressionFormat (string) --

              The compression algorithm used to compress the output text of the job.

            • Format (string) --

              The data format of the output of the job.

            • PartitionColumns (list) --

              The names of one or more partition columns for the output of the job.

              • (string) --

            • Location (dict) --

              The location in Amazon S3 where the job writes its output.

              • Bucket (string) --

                The Amazon S3 bucket name.

              • Key (string) --

                The unique name of the object in the bucket.

            • Overwrite (boolean) --

              A value that, if true, means that any data in the location specified for output is overwritten with new output.

            • FormatOptions (dict) --

              Represents options that define how DataBrew formats job output files.

              • Csv (dict) --

                Represents a set of options that define the structure of comma-separated value (CSV) job output.

                • Delimiter (string) --

                  A single character that specifies the delimiter used to create CSV job output.

        • DataCatalogOutputs (list) --

          One or more artifacts that represent the Glue Data Catalog output from running the job.

          • (dict) --

            Represents options that specify how and where in the Glue Data Catalog DataBrew writes the output generated by recipe jobs.

            • CatalogId (string) --

              The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

            • DatabaseName (string) --

              The name of a database in the Data Catalog.

            • TableName (string) --

              The name of a table in the Data Catalog.

            • S3Options (dict) --

              Represents options that specify how and where DataBrew writes the Amazon S3 output generated by recipe jobs.

              • Location (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can write output from a job.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

            • DatabaseOptions (dict) --

              Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

              • TempDirectory (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

              • TableName (string) --

                A prefix for the name of a table DataBrew will create in the database.

            • Overwrite (boolean) --

              A value that, if true, means that any data in the location specified for output is overwritten with new output. Not supported with DatabaseOptions.

        • DatabaseOutputs (list) --

          Represents a list of JDBC database output objects which defines the output destination for a DataBrew recipe job to write into.

          • (dict) --

            Represents a JDBC database output object which defines the output destination for a DataBrew recipe job to write into.

            • GlueConnectionName (string) --

              The Glue connection that stores the connection information for the target database.

            • DatabaseOptions (dict) --

              Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

              • TempDirectory (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

              • TableName (string) --

                A prefix for the name of a table DataBrew will create in the database.

            • DatabaseOutputMode (string) --

              The output mode to write into the database. Currently supported option: NEW_TABLE.

        • RecipeReference (dict) --

          The set of steps processed by the job.

          • Name (string) --

            The name of the recipe.

          • RecipeVersion (string) --

            The identifier for the version for the recipe.

        • StartedBy (string) --

          The Amazon Resource Name (ARN) of the user who initiated the job run.

        • StartedOn (datetime) --

          The date and time when the job run began.

        • JobSample (dict) --

          A sample configuration for profile jobs only, which determines the number of rows on which the profile job is run. If a JobSample value isn't provided, the default is used. The default value is CUSTOM_ROWS for the mode parameter and 20,000 for the size parameter.

          • Mode (string) --

            A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

            • FULL_DATASET - The profile job is run on the entire dataset.

            • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

          • Size (integer) --

            The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

            Long.MAX_VALUE = 9223372036854775807

        • ValidationConfigurations (list) --

          List of validation configurations that are applied to the profile job run.

          • (dict) --

            Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

            • RulesetArn (string) --

              The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

            • ValidationMode (string) --

              Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

    • NextToken (string) --

      A token that you can use in a subsequent call to retrieve the next set of results.

ListJobs (updated) Link ¶
Changes (response)
{'Jobs': {'ValidationConfigurations': [{'RulesetArn': 'string',
                                        'ValidationMode': 'CHECK_ALL'}]}}

Lists all of the DataBrew jobs that are defined.

See also: AWS API Documentation

Request Syntax

client.list_jobs(
    DatasetName='string',
    MaxResults=123,
    NextToken='string',
    ProjectName='string'
)
type DatasetName

string

param DatasetName

The name of a dataset. Using this parameter indicates to return only those jobs that act on the specified dataset.

type MaxResults

integer

param MaxResults

The maximum number of results to return in this request.

type NextToken

string

param NextToken

A token generated by DataBrew that specifies where to continue pagination if a previous request was truncated. To get the next set of pages, pass in the NextToken value from the response object of the previous page call.

type ProjectName

string

param ProjectName

The name of a project. Using this parameter indicates to return only those jobs that are associated with the specified project.

rtype

dict

returns

Response Syntax

{
    'Jobs': [
        {
            'AccountId': 'string',
            'CreatedBy': 'string',
            'CreateDate': datetime(2015, 1, 1),
            'DatasetName': 'string',
            'EncryptionKeyArn': 'string',
            'EncryptionMode': 'SSE-KMS'|'SSE-S3',
            'Name': 'string',
            'Type': 'PROFILE'|'RECIPE',
            'LastModifiedBy': 'string',
            'LastModifiedDate': datetime(2015, 1, 1),
            'LogSubscription': 'ENABLE'|'DISABLE',
            'MaxCapacity': 123,
            'MaxRetries': 123,
            'Outputs': [
                {
                    'CompressionFormat': 'GZIP'|'LZ4'|'SNAPPY'|'BZIP2'|'DEFLATE'|'LZO'|'BROTLI'|'ZSTD'|'ZLIB',
                    'Format': 'CSV'|'JSON'|'PARQUET'|'GLUEPARQUET'|'AVRO'|'ORC'|'XML'|'TABLEAUHYPER',
                    'PartitionColumns': [
                        'string',
                    ],
                    'Location': {
                        'Bucket': 'string',
                        'Key': 'string'
                    },
                    'Overwrite': True|False,
                    'FormatOptions': {
                        'Csv': {
                            'Delimiter': 'string'
                        }
                    }
                },
            ],
            'DataCatalogOutputs': [
                {
                    'CatalogId': 'string',
                    'DatabaseName': 'string',
                    'TableName': 'string',
                    'S3Options': {
                        'Location': {
                            'Bucket': 'string',
                            'Key': 'string'
                        }
                    },
                    'DatabaseOptions': {
                        'TempDirectory': {
                            'Bucket': 'string',
                            'Key': 'string'
                        },
                        'TableName': 'string'
                    },
                    'Overwrite': True|False
                },
            ],
            'DatabaseOutputs': [
                {
                    'GlueConnectionName': 'string',
                    'DatabaseOptions': {
                        'TempDirectory': {
                            'Bucket': 'string',
                            'Key': 'string'
                        },
                        'TableName': 'string'
                    },
                    'DatabaseOutputMode': 'NEW_TABLE'
                },
            ],
            'ProjectName': 'string',
            'RecipeReference': {
                'Name': 'string',
                'RecipeVersion': 'string'
            },
            'ResourceArn': 'string',
            'RoleArn': 'string',
            'Timeout': 123,
            'Tags': {
                'string': 'string'
            },
            'JobSample': {
                'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
                'Size': 123
            },
            'ValidationConfigurations': [
                {
                    'RulesetArn': 'string',
                    'ValidationMode': 'CHECK_ALL'
                },
            ]
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • Jobs (list) --

      A list of jobs that are defined.

      • (dict) --

        Represents all of the attributes of a DataBrew job.

        • AccountId (string) --

          The ID of the Amazon Web Services account that owns the job.

        • CreatedBy (string) --

          The Amazon Resource Name (ARN) of the user who created the job.

        • CreateDate (datetime) --

          The date and time that the job was created.

        • DatasetName (string) --

          A dataset that the job is to process.

        • EncryptionKeyArn (string) --

          The Amazon Resource Name (ARN) of an encryption key that is used to protect the job output. For more information, see Encrypting data written by DataBrew jobs

        • EncryptionMode (string) --

          The encryption mode for the job, which can be one of the following:

          • SSE-KMS - Server-side encryption with keys managed by KMS.

          • SSE-S3 - Server-side encryption with keys managed by Amazon S3.

        • Name (string) --

          The unique name of the job.

        • Type (string) --

          The job type of the job, which must be one of the following:

          • PROFILE - A job to analyze a dataset, to determine its size, data types, data distribution, and more.

          • RECIPE - A job to apply one or more transformations to a dataset.

        • LastModifiedBy (string) --

          The Amazon Resource Name (ARN) of the user who last modified the job.

        • LastModifiedDate (datetime) --

          The modification date and time of the job.

        • LogSubscription (string) --

          The current status of Amazon CloudWatch logging for the job.

        • MaxCapacity (integer) --

          The maximum number of nodes that can be consumed when the job processes data.

        • MaxRetries (integer) --

          The maximum number of times to retry the job after a job run fails.

        • Outputs (list) --

          One or more artifacts that represent output from running the job.

          • (dict) --

            Represents options that specify how and where in Amazon S3 DataBrew writes the output generated by recipe jobs or profile jobs.

            • CompressionFormat (string) --

              The compression algorithm used to compress the output text of the job.

            • Format (string) --

              The data format of the output of the job.

            • PartitionColumns (list) --

              The names of one or more partition columns for the output of the job.

              • (string) --

            • Location (dict) --

              The location in Amazon S3 where the job writes its output.

              • Bucket (string) --

                The Amazon S3 bucket name.

              • Key (string) --

                The unique name of the object in the bucket.

            • Overwrite (boolean) --

              A value that, if true, means that any data in the location specified for output is overwritten with new output.

            • FormatOptions (dict) --

              Represents options that define how DataBrew formats job output files.

              • Csv (dict) --

                Represents a set of options that define the structure of comma-separated value (CSV) job output.

                • Delimiter (string) --

                  A single character that specifies the delimiter used to create CSV job output.

        • DataCatalogOutputs (list) --

          One or more artifacts that represent the Glue Data Catalog output from running the job.

          • (dict) --

            Represents options that specify how and where in the Glue Data Catalog DataBrew writes the output generated by recipe jobs.

            • CatalogId (string) --

              The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

            • DatabaseName (string) --

              The name of a database in the Data Catalog.

            • TableName (string) --

              The name of a table in the Data Catalog.

            • S3Options (dict) --

              Represents options that specify how and where DataBrew writes the Amazon S3 output generated by recipe jobs.

              • Location (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can write output from a job.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

            • DatabaseOptions (dict) --

              Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

              • TempDirectory (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

              • TableName (string) --

                A prefix for the name of a table DataBrew will create in the database.

            • Overwrite (boolean) --

              A value that, if true, means that any data in the location specified for output is overwritten with new output. Not supported with DatabaseOptions.

        • DatabaseOutputs (list) --

          Represents a list of JDBC database output objects which defines the output destination for a DataBrew recipe job to write into.

          • (dict) --

            Represents a JDBC database output object which defines the output destination for a DataBrew recipe job to write into.

            • GlueConnectionName (string) --

              The Glue connection that stores the connection information for the target database.

            • DatabaseOptions (dict) --

              Represents options that specify how and where DataBrew writes the database output generated by recipe jobs.

              • TempDirectory (dict) --

                Represents an Amazon S3 location (bucket name and object key) where DataBrew can store intermediate results.

                • Bucket (string) --

                  The Amazon S3 bucket name.

                • Key (string) --

                  The unique name of the object in the bucket.

              • TableName (string) --

                A prefix for the name of a table DataBrew will create in the database.

            • DatabaseOutputMode (string) --

              The output mode to write into the database. Currently supported option: NEW_TABLE.

        • ProjectName (string) --

          The name of the project that the job is associated with.

        • RecipeReference (dict) --

          A set of steps that the job runs.

          • Name (string) --

            The name of the recipe.

          • RecipeVersion (string) --

            The identifier for the version for the recipe.

        • ResourceArn (string) --

          The unique Amazon Resource Name (ARN) for the job.

        • RoleArn (string) --

          The Amazon Resource Name (ARN) of the role to be assumed for this job.

        • Timeout (integer) --

          The job's timeout in minutes. A job that attempts to run longer than this timeout period ends with a status of TIMEOUT .

        • Tags (dict) --

          Metadata tags that have been applied to the job.

          • (string) --

            • (string) --

        • JobSample (dict) --

          A sample configuration for profile jobs only, which determines the number of rows on which the profile job is run. If a JobSample value isn't provided, the default value is used. The default value is CUSTOM_ROWS for the mode parameter and 20,000 for the size parameter.

          • Mode (string) --

            A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

            • FULL_DATASET - The profile job is run on the entire dataset.

            • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

          • Size (integer) --

            The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

            Long.MAX_VALUE = 9223372036854775807

        • ValidationConfigurations (list) --

          List of validation configurations that are applied to the profile job.

          • (dict) --

            Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

            • RulesetArn (string) --

              The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

            • ValidationMode (string) --

              Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

    • NextToken (string) --

      A token that you can use in a subsequent call to retrieve the next set of results.

SendProjectSessionAction (updated) Link ¶
Changes (request)
{'ViewFrame': {'Analytics': 'ENABLE | DISABLE',
               'RowRange': 'integer',
               'StartRowIndex': 'integer'}}

Performs a recipe step within an interactive DataBrew session that's currently open.

See also: AWS API Documentation

Request Syntax

client.send_project_session_action(
    Preview=True|False,
    Name='string',
    RecipeStep={
        'Action': {
            'Operation': 'string',
            'Parameters': {
                'string': 'string'
            }
        },
        'ConditionExpressions': [
            {
                'Condition': 'string',
                'Value': 'string',
                'TargetColumn': 'string'
            },
        ]
    },
    StepIndex=123,
    ClientSessionId='string',
    ViewFrame={
        'StartColumnIndex': 123,
        'ColumnRange': 123,
        'HiddenColumns': [
            'string',
        ],
        'StartRowIndex': 123,
        'RowRange': 123,
        'Analytics': 'ENABLE'|'DISABLE'
    }
)
type Preview

boolean

param Preview

If true, the result of the recipe step will be returned, but not applied.

type Name

string

param Name

[REQUIRED]

The name of the project to apply the action to.

type RecipeStep

dict

param RecipeStep

Represents a single step from a DataBrew recipe to be performed.

  • Action (dict) -- [REQUIRED]

    The particular action to be performed in the recipe step.

    • Operation (string) -- [REQUIRED]

      The name of a valid DataBrew transformation to be performed on the data.

    • Parameters (dict) --

      Contextual parameters for the transformation.

      • (string) --

        • (string) --

  • ConditionExpressions (list) --

    One or more conditions that must be met for the recipe step to succeed.

    Note

    All of the conditions in the array must be met. In other words, all of the conditions must be combined using a logical AND operation.

    • (dict) --

      Represents an individual condition that evaluates to true or false.

      Conditions are used with recipe actions. The action is only performed for column values where the condition evaluates to true.

      If a recipe requires more than one condition, then the recipe must specify multiple ConditionExpression elements. Each condition is applied to the rows in a dataset first, before the recipe action is performed.

      • Condition (string) -- [REQUIRED]

        A specific condition to apply to a recipe action. For more information, see Recipe structure in the Glue DataBrew Developer Guide .

      • Value (string) --

        A value that the condition must evaluate to for the condition to succeed.

      • TargetColumn (string) -- [REQUIRED]

        A column to apply this condition to.

type StepIndex

integer

param StepIndex

The index from which to preview a step. This index is used to preview the result of steps that have already been applied, so that the resulting view frame is from earlier in the view frame stack.

type ClientSessionId

string

param ClientSessionId

A unique identifier for an interactive session that's currently open and ready for work. The action will be performed on this session.

type ViewFrame

dict

param ViewFrame

Represents the data being transformed during an action.

  • StartColumnIndex (integer) -- [REQUIRED]

    The starting index for the range of columns to return in the view frame.

  • ColumnRange (integer) --

    The number of columns to include in the view frame, beginning with the StartColumnIndex value and ignoring any columns in the HiddenColumns list.

  • HiddenColumns (list) --

    A list of columns to hide in the view frame.

    • (string) --

  • StartRowIndex (integer) --

    The starting index for the range of rows to return in the view frame.

  • RowRange (integer) --

    The number of rows to include in the view frame, beginning with the StartRowIndex value.

  • Analytics (string) --

    Controls if analytics computation is enabled or disabled. Enabled by default.

rtype

dict

returns

Response Syntax

{
    'Result': 'string',
    'Name': 'string',
    'ActionId': 123
}

Response Structure

  • (dict) --

    • Result (string) --

      A message indicating the result of performing the action.

    • Name (string) --

      The name of the project that was affected by the action.

    • ActionId (integer) --

      A unique identifier for the action that was performed.

UpdateDataset (updated) Link ¶
Changes (request)
{'Input': {'DatabaseInputDefinition': {'QueryString': 'string'},
           'Metadata': {'SourceArn': 'string'}}}

Modifies the definition of an existing DataBrew dataset.

See also: AWS API Documentation

Request Syntax

client.update_dataset(
    Name='string',
    Format='CSV'|'JSON'|'PARQUET'|'EXCEL',
    FormatOptions={
        'Json': {
            'MultiLine': True|False
        },
        'Excel': {
            'SheetNames': [
                'string',
            ],
            'SheetIndexes': [
                123,
            ],
            'HeaderRow': True|False
        },
        'Csv': {
            'Delimiter': 'string',
            'HeaderRow': True|False
        }
    },
    Input={
        'S3InputDefinition': {
            'Bucket': 'string',
            'Key': 'string'
        },
        'DataCatalogInputDefinition': {
            'CatalogId': 'string',
            'DatabaseName': 'string',
            'TableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            }
        },
        'DatabaseInputDefinition': {
            'GlueConnectionName': 'string',
            'DatabaseTableName': 'string',
            'TempDirectory': {
                'Bucket': 'string',
                'Key': 'string'
            },
            'QueryString': 'string'
        },
        'Metadata': {
            'SourceArn': 'string'
        }
    },
    PathOptions={
        'LastModifiedDateCondition': {
            'Expression': 'string',
            'ValuesMap': {
                'string': 'string'
            }
        },
        'FilesLimit': {
            'MaxFiles': 123,
            'OrderedBy': 'LAST_MODIFIED_DATE',
            'Order': 'DESCENDING'|'ASCENDING'
        },
        'Parameters': {
            'string': {
                'Name': 'string',
                'Type': 'Datetime'|'Number'|'String',
                'DatetimeOptions': {
                    'Format': 'string',
                    'TimezoneOffset': 'string',
                    'LocaleCode': 'string'
                },
                'CreateColumn': True|False,
                'Filter': {
                    'Expression': 'string',
                    'ValuesMap': {
                        'string': 'string'
                    }
                }
            }
        }
    }
)
type Name

string

param Name

[REQUIRED]

The name of the dataset to be updated.

type Format

string

param Format

The file format of a dataset that is created from an Amazon S3 file or folder.

type FormatOptions

dict

param FormatOptions

Represents a set of options that define the structure of either comma-separated value (CSV), Excel, or JSON input.

  • Json (dict) --

    Options that define how JSON input is to be interpreted by DataBrew.

    • MultiLine (boolean) --

      A value that specifies whether JSON input contains embedded new line characters.

  • Excel (dict) --

    Options that define how Excel input is to be interpreted by DataBrew.

    • SheetNames (list) --

      One or more named sheets in the Excel file that will be included in the dataset.

      • (string) --

    • SheetIndexes (list) --

      One or more sheet numbers in the Excel file that will be included in the dataset.

      • (integer) --

    • HeaderRow (boolean) --

      A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

  • Csv (dict) --

    Options that define how CSV input is to be interpreted by DataBrew.

    • Delimiter (string) --

      A single character that specifies the delimiter being used in the CSV file.

    • HeaderRow (boolean) --

      A variable that specifies whether the first row in the file is parsed as the header. If this value is false, column names are auto-generated.

type Input

dict

param Input

[REQUIRED]

Represents information on how DataBrew can find data, in either the Glue Data Catalog or Amazon S3.

  • S3InputDefinition (dict) --

    The Amazon S3 location where the data is stored.

    • Bucket (string) -- [REQUIRED]

      The Amazon S3 bucket name.

    • Key (string) --

      The unique name of the object in the bucket.

  • DataCatalogInputDefinition (dict) --

    The Glue Data Catalog parameters for the data.

    • CatalogId (string) --

      The unique identifier of the Amazon Web Services account that holds the Data Catalog that stores the data.

    • DatabaseName (string) -- [REQUIRED]

      The name of a database in the Data Catalog.

    • TableName (string) -- [REQUIRED]

      The name of a database table in the Data Catalog. This table corresponds to a DataBrew dataset.

    • TempDirectory (dict) --

      Represents an Amazon location where DataBrew can store intermediate results.

      • Bucket (string) -- [REQUIRED]

        The Amazon S3 bucket name.

      • Key (string) --

        The unique name of the object in the bucket.

  • DatabaseInputDefinition (dict) --

    Connection information for dataset input files stored in a database.

    • GlueConnectionName (string) -- [REQUIRED]

      The Glue Connection that stores the connection information for the target database.

    • DatabaseTableName (string) --

      The table within the target database.

    • TempDirectory (dict) --

      Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

      • Bucket (string) -- [REQUIRED]

        The Amazon S3 bucket name.

      • Key (string) --

        The unique name of the object in the bucket.

    • QueryString (string) --

      Custom SQL to run against the provided Glue connection. This SQL will be used as the input for DataBrew projects and jobs.

  • Metadata (dict) --

    Contains additional resource information needed for specific datasets.

    • SourceArn (string) --

      The Amazon Resource Name (ARN) associated with the dataset. Currently, DataBrew only supports ARNs from Amazon AppFlow.

type PathOptions

dict

param PathOptions

A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.

  • LastModifiedDateCondition (dict) --

    If provided, this structure defines a date range for matching Amazon S3 objects based on their LastModifiedDate attribute in Amazon S3.

    • Expression (string) -- [REQUIRED]

      The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

    • ValuesMap (dict) -- [REQUIRED]

      The map of substitution variable names to their values used in this filter expression.

      • (string) --

        • (string) --

  • FilesLimit (dict) --

    If provided, this structure imposes a limit on a number of files that should be selected.

    • MaxFiles (integer) -- [REQUIRED]

      The number of Amazon S3 files to select.

    • OrderedBy (string) --

      A criteria to use for Amazon S3 files sorting before their selection. By default uses LAST_MODIFIED_DATE as a sorting criteria. Currently it's the only allowed value.

    • Order (string) --

      A criteria to use for Amazon S3 files sorting before their selection. By default uses DESCENDING order, i.e. most recent files are selected first. Anotherpossible value is ASCENDING.

  • Parameters (dict) --

    A structure that maps names of parameters used in the Amazon S3 path of a dataset to their definitions.

    • (string) --

      • (dict) --

        Represents a dataset paramater that defines type and conditions for a parameter in the Amazon S3 path of the dataset.

        • Name (string) -- [REQUIRED]

          The name of the parameter that is used in the dataset's Amazon S3 path.

        • Type (string) -- [REQUIRED]

          The type of the dataset parameter, can be one of a 'String', 'Number' or 'Datetime'.

        • DatetimeOptions (dict) --

          Additional parameter options such as a format and a timezone. Required for datetime parameters.

          • Format (string) -- [REQUIRED]

            Required option, that defines the datetime format used for a date parameter in the Amazon S3 path. Should use only supported datetime specifiers and separation characters, all literal a-z or A-Z characters should be escaped with single quotes. E.g. "MM.dd.yyyy-'at'-HH:mm".

          • TimezoneOffset (string) --

            Optional value for a timezone offset of the datetime parameter value in the Amazon S3 path. Shouldn't be used if Format for this parameter includes timezone fields. If no offset specified, UTC is assumed.

          • LocaleCode (string) --

            Optional value for a non-US locale code, needed for correct interpretation of some date formats.

        • CreateColumn (boolean) --

          Optional boolean value that defines whether the captured value of this parameter should be used to create a new column in a dataset.

        • Filter (dict) --

          The optional filter expression structure to apply additional matching criteria to the parameter.

          • Expression (string) -- [REQUIRED]

            The expression which includes condition names followed by substitution variables, possibly grouped and combined with other conditions. For example, "(starts_with :prefix1 or starts_with :prefix2) and (ends_with :suffix1 or ends_with :suffix2)". Substitution variables should start with ':' symbol.

          • ValuesMap (dict) -- [REQUIRED]

            The map of substitution variable names to their values used in this filter expression.

            • (string) --

              • (string) --

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the dataset that you updated.

UpdateProfileJob (updated) Link ¶
Changes (request)
{'Configuration': {'EntityDetectorConfiguration': {'AllowedStatistics': [{'Statistics': ['string']}],
                                                   'EntityTypes': ['string']}},
 'ValidationConfigurations': [{'RulesetArn': 'string',
                               'ValidationMode': 'CHECK_ALL'}]}

Modifies the definition of an existing profile job.

See also: AWS API Documentation

Request Syntax

client.update_profile_job(
    Configuration={
        'DatasetStatisticsConfiguration': {
            'IncludedStatistics': [
                'string',
            ],
            'Overrides': [
                {
                    'Statistic': 'string',
                    'Parameters': {
                        'string': 'string'
                    }
                },
            ]
        },
        'ProfileColumns': [
            {
                'Regex': 'string',
                'Name': 'string'
            },
        ],
        'ColumnStatisticsConfigurations': [
            {
                'Selectors': [
                    {
                        'Regex': 'string',
                        'Name': 'string'
                    },
                ],
                'Statistics': {
                    'IncludedStatistics': [
                        'string',
                    ],
                    'Overrides': [
                        {
                            'Statistic': 'string',
                            'Parameters': {
                                'string': 'string'
                            }
                        },
                    ]
                }
            },
        ],
        'EntityDetectorConfiguration': {
            'EntityTypes': [
                'string',
            ],
            'AllowedStatistics': [
                {
                    'Statistics': [
                        'string',
                    ]
                },
            ]
        }
    },
    EncryptionKeyArn='string',
    EncryptionMode='SSE-KMS'|'SSE-S3',
    Name='string',
    LogSubscription='ENABLE'|'DISABLE',
    MaxCapacity=123,
    MaxRetries=123,
    OutputLocation={
        'Bucket': 'string',
        'Key': 'string'
    },
    ValidationConfigurations=[
        {
            'RulesetArn': 'string',
            'ValidationMode': 'CHECK_ALL'
        },
    ],
    RoleArn='string',
    Timeout=123,
    JobSample={
        'Mode': 'FULL_DATASET'|'CUSTOM_ROWS',
        'Size': 123
    }
)
type Configuration

dict

param Configuration

Configuration for profile jobs. Used to select columns, do evaluations, and override default parameters of evaluations. When configuration is null, the profile job will run with default settings.

  • DatasetStatisticsConfiguration (dict) --

    Configuration for inter-column evaluations. Configuration can be used to select evaluations and override parameters of evaluations. When configuration is undefined, the profile job will run all supported inter-column evaluations.

    • IncludedStatistics (list) --

      List of included evaluations. When the list is undefined, all supported evaluations will be included.

      • (string) --

    • Overrides (list) --

      List of overrides for evaluations.

      • (dict) --

        Override of a particular evaluation for a profile job.

        • Statistic (string) -- [REQUIRED]

          The name of an evaluation

        • Parameters (dict) -- [REQUIRED]

          A map that includes overrides of an evaluation’s parameters.

          • (string) --

            • (string) --

  • ProfileColumns (list) --

    List of column selectors. ProfileColumns can be used to select columns from the dataset. When ProfileColumns is undefined, the profile job will profile all supported columns.

    • (dict) --

      Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

      • Regex (string) --

        A regular expression for selecting a column from a dataset.

      • Name (string) --

        The name of a column from a dataset.

  • ColumnStatisticsConfigurations (list) --

    List of configurations for column evaluations. ColumnStatisticsConfigurations are used to select evaluations and override parameters of evaluations for particular columns. When ColumnStatisticsConfigurations is undefined, the profile job will profile all supported columns and run all supported evaluations.

    • (dict) --

      Configuration for column evaluations for a profile job. ColumnStatisticsConfiguration can be used to select evaluations and override parameters of evaluations for particular columns.

      • Selectors (list) --

        List of column selectors. Selectors can be used to select columns from the dataset. When selectors are undefined, configuration will be applied to all supported columns.

        • (dict) --

          Selector of a column from a dataset for profile job configuration. One selector includes either a column name or a regular expression.

          • Regex (string) --

            A regular expression for selecting a column from a dataset.

          • Name (string) --

            The name of a column from a dataset.

      • Statistics (dict) -- [REQUIRED]

        Configuration for evaluations. Statistics can be used to select evaluations and override parameters of evaluations.

        • IncludedStatistics (list) --

          List of included evaluations. When the list is undefined, all supported evaluations will be included.

          • (string) --

        • Overrides (list) --

          List of overrides for evaluations.

          • (dict) --

            Override of a particular evaluation for a profile job.

            • Statistic (string) -- [REQUIRED]

              The name of an evaluation

            • Parameters (dict) -- [REQUIRED]

              A map that includes overrides of an evaluation’s parameters.

              • (string) --

                • (string) --

  • EntityDetectorConfiguration (dict) --

    Configuration of entity detection for a profile job. When undefined, entity detection is disabled.

    • EntityTypes (list) -- [REQUIRED]

      Entity types to detect. Can be any of the following:

      • USA_SSN

      • EMAIL

      • USA_ITIN

      • USA_PASSPORT_NUMBER

      • PHONE_NUMBER

      • USA_DRIVING_LICENSE

      • BANK_ACCOUNT

      • CREDIT_CARD

      • IP_ADDRESS

      • MAC_ADDRESS

      • USA_DEA_NUMBER

      • USA_HCPCS_CODE

      • USA_NATIONAL_PROVIDER_IDENTIFIER

      • USA_NATIONAL_DRUG_CODE

      • USA_HEALTH_INSURANCE_CLAIM_NUMBER

      • USA_MEDICARE_BENEFICIARY_IDENTIFIER

      • USA_CPT_CODE

      • PERSON_NAME

      • DATE

      The Entity type group USA_ALL is also supported, and includes all of the above entity types except PERSON_NAME and DATE.

      • (string) --

    • AllowedStatistics (list) --

      Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

      • (dict) --

        Configuration of statistics that are allowed to be run on columns that contain detected entities. When undefined, no statistics will be computed on columns that contain detected entities.

        • Statistics (list) -- [REQUIRED]

          One or more column statistics to allow for columns that contain detected entities.

          • (string) --

type EncryptionKeyArn

string

param EncryptionKeyArn

The Amazon Resource Name (ARN) of an encryption key that is used to protect the job.

type EncryptionMode

string

param EncryptionMode

The encryption mode for the job, which can be one of the following:

  • SSE-KMS - Server-side encryption with keys managed by KMS.

  • SSE-S3 - Server-side encryption with keys managed by Amazon S3.

type Name

string

param Name

[REQUIRED]

The name of the job to be updated.

type LogSubscription

string

param LogSubscription

Enables or disables Amazon CloudWatch logging for the job. If logging is enabled, CloudWatch writes one log stream for each job run.

type MaxCapacity

integer

param MaxCapacity

The maximum number of compute nodes that DataBrew can use when the job processes data.

type MaxRetries

integer

param MaxRetries

The maximum number of times to retry the job after a job run fails.

type OutputLocation

dict

param OutputLocation

[REQUIRED]

Represents an Amazon S3 location (bucket name and object key) where DataBrew can read input data, or write output from a job.

  • Bucket (string) -- [REQUIRED]

    The Amazon S3 bucket name.

  • Key (string) --

    The unique name of the object in the bucket.

type ValidationConfigurations

list

param ValidationConfigurations

List of validation configurations that are applied to the profile job.

  • (dict) --

    Configuration for data quality validation. Used to select the Rulesets and Validation Mode to be used in the profile job. When ValidationConfiguration is null, the profile job will run without data quality validation.

    • RulesetArn (string) -- [REQUIRED]

      The Amazon Resource Name (ARN) for the ruleset to be validated in the profile job. The TargetArn of the selected ruleset should be the same as the Amazon Resource Name (ARN) of the dataset that is associated with the profile job.

    • ValidationMode (string) --

      Mode of data quality validation. Default mode is “CHECK_ALL” which verifies all rules defined in the selected ruleset.

type RoleArn

string

param RoleArn

[REQUIRED]

The Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role to be assumed when DataBrew runs the job.

type Timeout

integer

param Timeout

The job's timeout in minutes. A job that attempts to run longer than this timeout period ends with a status of TIMEOUT .

type JobSample

dict

param JobSample

Sample configuration for Profile Jobs only. Determines the number of rows on which the Profile job will be executed. If a JobSample value is not provided for profile jobs, the default value will be used. The default value is CUSTOM_ROWS for the mode parameter and 20000 for the size parameter.

  • Mode (string) --

    A value that determines whether the profile job is run on the entire dataset or a specified number of rows. This value must be one of the following:

    • FULL_DATASET - The profile job is run on the entire dataset.

    • CUSTOM_ROWS - The profile job is run on the number of rows specified in the Size parameter.

  • Size (integer) --

    The Size parameter is only required when the mode is CUSTOM_ROWS. The profile job is run on the specified number of rows. The maximum value for size is Long.MAX_VALUE.

    Long.MAX_VALUE = 9223372036854775807

rtype

dict

returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the job that was updated.