create_profile_job

create_profile_job(**kwargs)

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

See also: AWS API Documentation

Request Syntax

response = 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',
        'BucketOwner': '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
    }
)
Parameters
  • DatasetName (string) --

    [REQUIRED]

    The name of the dataset that this job is to act 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 - SSE-KMS - Server-side encryption with KMS-managed keys.
    • SSE-S3 - Server-side encryption with keys managed by Amazon S3.
  • Name (string) --

    [REQUIRED]

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

  • LogSubscription (string) -- Enables or disables Amazon CloudWatch logging for the job. If logging is enabled, CloudWatch writes one log stream for each job run.
  • MaxCapacity (integer) -- The maximum number of nodes that DataBrew can use when the job processes data.
  • MaxRetries (integer) -- The maximum number of times to retry the job after a job run fails.
  • OutputLocation (dict) --

    [REQUIRED]

    Represents an Amazon S3 location (bucket name, bucket owner, 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.

    • BucketOwner (string) --

      The Amazon Web Services account ID of the bucket owner.

  • Configuration (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) -- [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) --
  • 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) -- [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.

  • RoleArn (string) --

    [REQUIRED]

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

  • Tags (dict) --

    Metadata tags to apply to 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. 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

Return type

dict

Returns

Response Syntax

{
    'Name': 'string'
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the job that was created.

Exceptions

  • GlueDataBrew.Client.exceptions.AccessDeniedException
  • GlueDataBrew.Client.exceptions.ConflictException
  • GlueDataBrew.Client.exceptions.ResourceNotFoundException
  • GlueDataBrew.Client.exceptions.ServiceQuotaExceededException
  • GlueDataBrew.Client.exceptions.ValidationException