

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# AWS::SageMaker::DataQualityJobDefinition
<a name="aws-resource-sagemaker-dataqualityjobdefinition"></a>

Creates a definition for a job that monitors data quality and drift. For information about model monitor, see [Amazon SageMaker AI Model Monitor](https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor.html).

## Syntax
<a name="aws-resource-sagemaker-dataqualityjobdefinition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-sagemaker-dataqualityjobdefinition-syntax.json"></a>

```
{
  "Type" : "AWS::SageMaker::DataQualityJobDefinition",
  "Properties" : {
      "[DataQualityAppSpecification](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification)" : DataQualityAppSpecification,
      "[DataQualityBaselineConfig](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig)" : DataQualityBaselineConfig,
      "[DataQualityJobInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput)" : DataQualityJobInput,
      "[DataQualityJobOutputConfig](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjoboutputconfig)" : MonitoringOutputConfig,
      "[EndpointName](#cfn-sagemaker-dataqualityjobdefinition-endpointname)" : String,
      "[JobDefinitionName](#cfn-sagemaker-dataqualityjobdefinition-jobdefinitionname)" : String,
      "[JobResources](#cfn-sagemaker-dataqualityjobdefinition-jobresources)" : MonitoringResources,
      "[NetworkConfig](#cfn-sagemaker-dataqualityjobdefinition-networkconfig)" : NetworkConfig,
      "[RoleArn](#cfn-sagemaker-dataqualityjobdefinition-rolearn)" : String,
      "[StoppingCondition](#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition)" : StoppingCondition,
      "[Tags](#cfn-sagemaker-dataqualityjobdefinition-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-sagemaker-dataqualityjobdefinition-syntax.yaml"></a>

```
Type: AWS::SageMaker::DataQualityJobDefinition
Properties:
  [DataQualityAppSpecification](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification): 
    DataQualityAppSpecification
  [DataQualityBaselineConfig](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig): 
    DataQualityBaselineConfig
  [DataQualityJobInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput): 
    DataQualityJobInput
  [DataQualityJobOutputConfig](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjoboutputconfig): 
    MonitoringOutputConfig
  [EndpointName](#cfn-sagemaker-dataqualityjobdefinition-endpointname): String
  [JobDefinitionName](#cfn-sagemaker-dataqualityjobdefinition-jobdefinitionname): String
  [JobResources](#cfn-sagemaker-dataqualityjobdefinition-jobresources): 
    MonitoringResources
  [NetworkConfig](#cfn-sagemaker-dataqualityjobdefinition-networkconfig): 
    NetworkConfig
  [RoleArn](#cfn-sagemaker-dataqualityjobdefinition-rolearn): String
  [StoppingCondition](#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition): 
    StoppingCondition
  [Tags](#cfn-sagemaker-dataqualityjobdefinition-tags): 
    - Tag
```

## Properties
<a name="aws-resource-sagemaker-dataqualityjobdefinition-properties"></a>

`DataQualityAppSpecification`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification"></a>
Specifies the container that runs the monitoring job.  
*Required*: Yes  
*Type*: [DataQualityAppSpecification](aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DataQualityBaselineConfig`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig"></a>
Configures the constraints and baselines for the monitoring job.  
*Required*: No  
*Type*: [DataQualityBaselineConfig](aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DataQualityJobInput`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput"></a>
A list of inputs for the monitoring job. Currently endpoints are supported as monitoring inputs.  
*Required*: Yes  
*Type*: [DataQualityJobInput](aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DataQualityJobOutputConfig`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityjoboutputconfig"></a>
The output configuration for monitoring jobs.  
*Required*: Yes  
*Type*: [MonitoringOutputConfig](aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EndpointName`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointname"></a>
The name of the endpoint used to run the monitoring job.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9](-*[a-zA-Z0-9])*`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`JobDefinitionName`  <a name="cfn-sagemaker-dataqualityjobdefinition-jobdefinitionname"></a>
The name for the monitoring job definition.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9](-*[a-zA-Z0-9])*$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`JobResources`  <a name="cfn-sagemaker-dataqualityjobdefinition-jobresources"></a>
Identifies the resources to deploy for a monitoring job.  
*Required*: Yes  
*Type*: [MonitoringResources](aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`NetworkConfig`  <a name="cfn-sagemaker-dataqualityjobdefinition-networkconfig"></a>
Specifies networking configuration for the monitoring job.  
*Required*: No  
*Type*: [NetworkConfig](aws-properties-sagemaker-dataqualityjobdefinition-networkconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RoleArn`  <a name="cfn-sagemaker-dataqualityjobdefinition-rolearn"></a>
The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws[a-z\-]*:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+$`  
*Minimum*: `20`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StoppingCondition`  <a name="cfn-sagemaker-dataqualityjobdefinition-stoppingcondition"></a>
A time limit for how long the monitoring job is allowed to run before stopping.  
*Required*: No  
*Type*: [StoppingCondition](aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-sagemaker-dataqualityjobdefinition-tags"></a>
An array of key-value pairs to apply to this resource.  
For more information, see [Tag](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html).  
*Required*: No  
*Type*: Array of [Tag](aws-properties-sagemaker-dataqualityjobdefinition-tag.md)  
*Maximum*: `50`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-sagemaker-dataqualityjobdefinition-return-values"></a>

### Ref
<a name="aws-resource-sagemaker-dataqualityjobdefinition-return-values-ref"></a>

 When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Name (ARN) of the job definition.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-sagemaker-dataqualityjobdefinition-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-sagemaker-dataqualityjobdefinition-return-values-fn--getatt-fn--getatt"></a>

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
The time when the job definition was created.

`JobDefinitionArn`  <a name="JobDefinitionArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the job definition.

## Examples
<a name="aws-resource-sagemaker-dataqualityjobdefinition--examples"></a>

### SageMaker DataQualityJobDefinition Example
<a name="aws-resource-sagemaker-dataqualityjobdefinition--examples--SageMaker_DataQualityJobDefinition_Example"></a>

The following example creates a Data Quality monitoring job defintion.

#### JSON
<a name="aws-resource-sagemaker-dataqualityjobdefinition--examples--SageMaker_DataQualityJobDefinition_Example--json"></a>

```
{
   "AWSTemplateFormatVersion": "2010-09-09",
   "Description": "Basic SageMaker Hosting entities to create a data quality job definition",
   "Mappings": {
      "RegionMap": {
         "us-west-2": {
            "MyModelImage": "123456789012.dkr.ecr.us-west-2.amazonaws.com/mymodel:latest"
         },
         "us-east-2": {
            "MyModelImage": "123456789012.dkr.ecr.us-east-2.amazonaws.com/mymodel:latest"
         },
         "us-east-1": {
            "MyModelImage": "123456789012.dkr.ecr.us-east-1.amazonaws.com/mymodel:latest"
         },
         "eu-west-1": {
            "MyModelImage": "123456789012.dkr.ecr.eu-west-1.amazonaws.com/mymodel:latest"
         },
         "ap-northeast-1": {
            "MyModelImage": "123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/mymodel:latest"
         },
         "ap-northeast-2": {
            "MyModelImage": "123456789012.dkr.ecr.ap-northeast-2.amazonaws.com/mymodel:latest"
         },
         "ap-southeast-2": {
            "MyModelImage": "123456789012.dkr.ecr.ap-southeast-2.amazonaws.com/mymodel:latest"
         },
         "eu-central-1": {
            "MyModelImage": "123456789012.dkr.ecr.eu-central-1.amazonaws.com/mymodel:latest"
         }
      }
   },
   "Resources": {
      "Endpoint": {
         "Type": "AWS::SageMaker::Endpoint",
         "Properties": {
            "EndpointConfigName": {
            "Fn::GetAtt": [
              "EndpointConfigWithDataCapture",
              "EndpointConfigName"
             ]
                
            }
         }
      },
      "EndpointConfigWithDataCapture": {
         "Type": "AWS::SageMaker::EndpointConfig",
         "Properties": {
            "ProductionVariants": [
               {
                  "InitialInstanceCount": 1,
                  "InitialVariantWeight": 1,
                  "InstanceType": "ml.t2.large",
                  "ModelName": {
                     "Fn::GetAtt": [
                       "Model",
                       "ModelName"
                      ]
                
                },
                  "VariantName": {
                     "Fn::GetAtt": [
                       "Model",
                       "ModelName"
                      ]
                
                }
               }
            ],
            "DataCaptureConfig": {
               "EnableCapture": true,
               "InitialSamplingPercentage": 100,
               "DestinationS3Uri": "s3://bucket/prefix",
               "KmsKeyId": "kmskeyid",
               "CaptureOptions": [
                  {
                     "CaptureMode": "Input"
                  },
                  {
                     "CaptureMode": "Output"
                  }
               ],
               "CaptureContentTypeHeader": {
                  "CsvContentTypes": [
                     "text/csv"
                  ],
                  "JsonContentTypes": [
                     "appplication/json"
                  ]
               }
            }
         }
      },
      "Model": {
         "Type": "AWS::SageMaker::Model",
         "Properties": {
            "PrimaryContainer": {
               "Image": { "Fn::FindInMap": [
                  "RegionMap",
                  {"Ref": "AWS::Region"},
                  "MyModelImage"
                 ]
               }
            },
            "ExecutionRoleArn": {
                     "Fn::GetAtt": [
                       "ExecutionRole",
                       "Arn"
                      ]
                
                }
         }
      },
      "ExecutionRole": {
         "Type": "AWS::IAM::Role",
         "Properties": {
            "AssumeRolePolicyDocument": {
               "Version": "2012-10-17"		 	 	 ,
               "Statement": [
                  {
                     "Effect": "Allow",
                     "Principal": {
                        "Service": [
                           "sagemaker.amazonaws.com"
                        ]
                     },
                     "Action": [
                        "sts:AssumeRole"
                     ]
                  }
               ]
            },
            "Path": "/",
            "Policies": [
               {
                  "PolicyName": "root",
                  "PolicyDocument": {
                     "Version": "2012-10-17"		 	 	 ,
                     "Statement": [
                        {
                           "Effect": "Allow",
                           "Action": "*",
                           "Resource": "*"
                        }
                     ]
                  }
               }
            ]
         }
      },
      "JobDefinitionExecutionRole": {
         "Type": "AWS::IAM::Role",
         "Properties": {
            "AssumeRolePolicyDocument": {
               "Version": "2012-10-17"		 	 	 ,
               "Statement": [
                  {
                     "Effect": "Allow",
                     "Principal": {
                        "Service": [
                           "sagemaker.amazonaws.com"
                        ]
                     },
                     "Action": [
                        "sts:AssumeRole"
                     ]
                  }
               ]
            },
            "ManagedPolicyArns": [
               {
                  "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/AmazonSageMakerFullAccess"
               },
               {
                  "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/AmazonS3FullAccess"
               },
               {
                  "Fn::Sub": "arn:${AWS::Partition}:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
               }
            ]
         }
      },
      "DataQualityJobDefinition": {
         "Type": "AWS::SageMaker::DataQualityJobDefinition",
         "Properties": {
            "DataQualityAppSpecification": {
               "ImageUri": {
                  "Fn::Sub": "123456789012.dkr.ecr.${AWS::Partition}.amazonaws.com/sagemaker-model-monitor-analyzer:latest"
               }
            },
            "DataQualityJobInput": {
               "EndpointInput": {
                  "EndpointName": {
                     "Fn::GetAtt": [
                       "Endpoint",
                       "EndpointName"
                      ]
                
                },
                  "LocalPath": "/opt/ml/processing/endpointdata"
               }
            },
            "DataQualityJobOutputConfig": {
               "MonitoringOutputs": [
                  {
                     "S3Output": {
                        "LocalPath": "/opt/ml/processing/localpath",
                        "S3Uri": {
                           "Fn::Sub": "s3://data-quality-job-definition-${AWS::AccountId}/output"
                        }
                     }
                  }
               ]
            },
            "JobResources": {
               "ClusterConfig": {
                  "InstanceCount": 1,
                  "InstanceType": "ml.m5.large",
                  "VolumeSizeInGB": 50
               }
            },
            "RoleArn": null,
            "StoppingCondition": {
               "MaxRuntimeInSeconds": 2000
            }
         }
      }
   }
}
```

#### YAML
<a name="aws-resource-sagemaker-dataqualityjobdefinition--examples--SageMaker_DataQualityJobDefinition_Example--yaml"></a>

```
---
 
AWSTemplateFormatVersion: '2010-09-09'
Description: Basic SageMaker Hosting entities to create a data quality job definition
 
Mappings: 
  RegionMap: 
    "us-west-2":
      "MyModelImage": "123456789012.dkr.ecr.us-west-2.amazonaws.com/mymodel:latest"
    "us-east-2":
      "MyModelImage": "123456789012.dkr.ecr.us-east-2.amazonaws.com/mymodel:latest"
    "us-east-1":
      "MyModelImage": "123456789012.dkr.ecr.us-east-1.amazonaws.com/mymodel:latest"
    "eu-west-1":
      "MyModelImage": "123456789012.dkr.ecr.eu-west-1.amazonaws.com/mymodel:latest"
    "ap-northeast-1":
      "MyModelImage": "123456789012.dkr.ecr.ap-northeast-1.amazonaws.com/mymodel:latest"
    "ap-northeast-2":
      "MyModelImage": "123456789012.dkr.ecr.ap-northeast-2.amazonaws.com/mymodel:latest"
    "ap-southeast-2":
      "MyModelImage": "123456789012.dkr.ecr.ap-southeast-2.amazonaws.com/mymodel:latest"
    "eu-central-1":
      "MyModelImage": "123456789012.dkr.ecr.eu-central-1.amazonaws.com/mymodel:latest"
 
Resources:
  Endpoint:
    Type: "AWS::SageMaker::Endpoint"
    Properties:
      EndpointConfigName:
        !GetAtt EndpointConfigWithDataCapture.EndpointConfigName
 
  EndpointConfigWithDataCapture:
    Type: "AWS::SageMaker::EndpointConfig"
    Properties:
      ProductionVariants:
        - InitialInstanceCount: 1
          InitialVariantWeight: 1.0
          InstanceType: ml.t2.large
          ModelName: !GetAtt Model.ModelName
          VariantName: !GetAtt Model.ModelName
      DataCaptureConfig:
        EnableCapture: true
        InitialSamplingPercentage: 100
        DestinationS3Uri: s3://bucket/prefix
        KmsKeyId: kmskeyid
        CaptureOptions:
          - CaptureMode: Input
          - CaptureMode: Output
        CaptureContentTypeHeader:
          CsvContentTypes:
            - "text/csv"
          JsonContentTypes:
            - "appplication/json"
            
  Model:
    Type: "AWS::SageMaker::Model"
    Properties:
      PrimaryContainer:
        Image: !FindInMap [RegionMap, !Ref "AWS::Region", "MyModelImage"]
      ExecutionRoleArn: !GetAtt ExecutionRole.Arn
 
  ExecutionRole: 
    Type: "AWS::IAM::Role"
    Properties: 
      AssumeRolePolicyDocument: 
        Version: "2012-10-17"
        Statement: 
          - 
            Effect: "Allow"
            Principal: 
              Service: 
                - "sagemaker.amazonaws.com"
            Action: 
              - "sts:AssumeRole"
      Path: "/"
      Policies: 
        - 
          PolicyName: "root"
          PolicyDocument: 
            Version: "2012-10-17"
            Statement: 
              - 
                Effect: "Allow"
                Action: "*"
                Resource: "*"
 
  JobDefinitionExecutionRole:
    Type: "AWS::IAM::Role"
    Properties:
      AssumeRolePolicyDocument:
        Version: "2012-10-17"
        Statement:
          - Effect: "Allow"
            Principal:
              Service:
                - "sagemaker.amazonaws.com"
            Action:
              - "sts:AssumeRole"
      ManagedPolicyArns:
        - Fn::Sub: "arn:${AWS::Partition}:iam::aws:policy/AmazonSageMakerFullAccess"
        - Fn::Sub: "arn:${AWS::Partition}:iam::aws:policy/AmazonS3FullAccess"
        - Fn::Sub: "arn:${AWS::Partition}:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
 
  DataQualityJobDefinition:
    Type: AWS::SageMaker::DataQualityJobDefinition
    Properties:
      DataQualityAppSpecification:
        ImageUri:
          Fn::Sub: "123456789012.dkr.ecr.${AWS::Partition}.amazonaws.com/sagemaker-model-monitor-analyzer:latest"
      DataQualityJobInput:
        EndpointInput:
          EndpointName: !GetAtt Endpoint.EndpointName
          LocalPath: "/opt/ml/processing/endpointdata"
      DataQualityJobOutputConfig:
        MonitoringOutputs:
          - S3Output:
              LocalPath: "/opt/ml/processing/localpath"
              S3Uri:
                Fn::Sub: "s3://data-quality-job-definition-${AWS::AccountId}/output"
      JobResources:
        ClusterConfig:
          InstanceCount: 1
          InstanceType: ml.m5.large
          VolumeSizeInGB: 50
      RoleArn: !GetAtt JobDefinitionExecutionRole.Arn
      StoppingCondition:
        MaxRuntimeInSeconds: 2000
```

# AWS::SageMaker::DataQualityJobDefinition BatchTransformInput
<a name="aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput"></a>

Input object for the batch transform job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput-syntax.json"></a>

```
{
  "[DataCapturedDestinationS3Uri](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datacaptureddestinations3uri)" : String,
  "[DatasetFormat](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datasetformat)" : DatasetFormat,
  "[ExcludeFeaturesAttribute](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-excludefeaturesattribute)" : String,
  "[LocalPath](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-localpath)" : String,
  "[S3DataDistributionType](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3datadistributiontype)" : String,
  "[S3InputMode](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3inputmode)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput-syntax.yaml"></a>

```
  [DataCapturedDestinationS3Uri](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datacaptureddestinations3uri): String
  [DatasetFormat](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datasetformat): 
    DatasetFormat
  [ExcludeFeaturesAttribute](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-excludefeaturesattribute): String
  [LocalPath](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-localpath): String
  [S3DataDistributionType](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3datadistributiontype): String
  [S3InputMode](#cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3inputmode): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput-properties"></a>

`DataCapturedDestinationS3Uri`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datacaptureddestinations3uri"></a>
The Amazon S3 location being used to capture the data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DatasetFormat`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-datasetformat"></a>
The dataset format for your batch transform job.  
*Required*: Yes  
*Type*: [DatasetFormat](aws-properties-sagemaker-dataqualityjobdefinition-datasetformat.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ExcludeFeaturesAttribute`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-excludefeaturesattribute"></a>
The attributes of the input data to exclude from the analysis.  
*Required*: No  
*Type*: String  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LocalPath`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-localpath"></a>
Path to the filesystem where the batch transform data is available to the container.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3DataDistributionType`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3datadistributiontype"></a>
Whether input data distributed in Amazon S3 is fully replicated or sharded by an S3 key. Defaults to `FullyReplicated`  
*Required*: No  
*Type*: String  
*Allowed values*: `FullyReplicated | ShardedByS3Key`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3InputMode`  <a name="cfn-sagemaker-dataqualityjobdefinition-batchtransforminput-s3inputmode"></a>
Whether the `Pipe` or `File` is used as the input mode for transferring data for the monitoring job. `Pipe` mode is recommended for large datasets. `File` mode is useful for small files that fit in memory. Defaults to `File`.  
*Required*: No  
*Type*: String  
*Allowed values*: `Pipe | File`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition ClusterConfig
<a name="aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig"></a>

The configuration for the cluster of resources used to run the processing job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig-syntax.json"></a>

```
{
  "[InstanceCount](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancecount)" : Integer,
  "[InstanceType](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancetype)" : String,
  "[VolumeKmsKeyId](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumekmskeyid)" : String,
  "[VolumeSizeInGB](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumesizeingb)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig-syntax.yaml"></a>

```
  [InstanceCount](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancecount): Integer
  [InstanceType](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancetype): String
  [VolumeKmsKeyId](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumekmskeyid): String
  [VolumeSizeInGB](#cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumesizeingb): Integer
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig-properties"></a>

`InstanceCount`  <a name="cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancecount"></a>
The number of ML compute instances to use in the model monitoring job. For distributed processing jobs, specify a value greater than 1. The default value is 1.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InstanceType`  <a name="cfn-sagemaker-dataqualityjobdefinition-clusterconfig-instancetype"></a>
The ML compute instance type for the processing job.  
*Required*: Yes  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VolumeKmsKeyId`  <a name="cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumekmskeyid"></a>
The AWS Key Management Service (AWS KMS) key that Amazon SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the model monitoring job.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VolumeSizeInGB`  <a name="cfn-sagemaker-dataqualityjobdefinition-clusterconfig-volumesizeingb"></a>
The size of the ML storage volume, in gigabytes, that you want to provision. You must specify sufficient ML storage for your scenario.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `16384`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition ConstraintsResource
<a name="aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource"></a>

The constraints resource for a monitoring job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource-syntax.json"></a>

```
{
  "[S3Uri](#cfn-sagemaker-dataqualityjobdefinition-constraintsresource-s3uri)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource-syntax.yaml"></a>

```
  [S3Uri](#cfn-sagemaker-dataqualityjobdefinition-constraintsresource-s3uri): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource-properties"></a>

`S3Uri`  <a name="cfn-sagemaker-dataqualityjobdefinition-constraintsresource-s3uri"></a>
The Amazon S3 URI for the constraints resource.  
*Required*: No  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition Csv
<a name="aws-properties-sagemaker-dataqualityjobdefinition-csv"></a>

The CSV dataset format configuration.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-csv-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-csv-syntax.json"></a>

```
{
  "[Header](#cfn-sagemaker-dataqualityjobdefinition-csv-header)" : Boolean
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-csv-syntax.yaml"></a>

```
  [Header](#cfn-sagemaker-dataqualityjobdefinition-csv-header): Boolean
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-csv-properties"></a>

`Header`  <a name="cfn-sagemaker-dataqualityjobdefinition-csv-header"></a>
Indicates whether the CSV data has a header row.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition DataQualityAppSpecification
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification"></a>

Information about the container that a data quality monitoring job runs.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification-syntax.json"></a>

```
{
  "[ContainerArguments](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerarguments)" : [ String, ... ],
  "[ContainerEntrypoint](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerentrypoint)" : [ String, ... ],
  "[Environment](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-environment)" : {Key: Value, ...},
  "[ImageUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-imageuri)" : String,
  "[PostAnalyticsProcessorSourceUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-postanalyticsprocessorsourceuri)" : String,
  "[RecordPreprocessorSourceUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-recordpreprocessorsourceuri)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification-syntax.yaml"></a>

```
  [ContainerArguments](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerarguments): 
    - String
  [ContainerEntrypoint](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerentrypoint): 
    - String
  [Environment](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-environment): 
    Key: Value
  [ImageUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-imageuri): String
  [PostAnalyticsProcessorSourceUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-postanalyticsprocessorsourceuri): String
  [RecordPreprocessorSourceUri](#cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-recordpreprocessorsourceuri): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityappspecification-properties"></a>

`ContainerArguments`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerarguments"></a>
The arguments to send to the container that the monitoring job runs.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `256 | 50`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ContainerEntrypoint`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-containerentrypoint"></a>
The entrypoint for a container used to run a monitoring job.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `256 | 100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Environment`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-environment"></a>
Sets the environment variables in the container that the monitoring job runs.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `[a-zA-Z_][a-zA-Z0-9_]*`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ImageUri`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-imageuri"></a>
The container image that the data quality monitoring job runs.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PostAnalyticsProcessorSourceUri`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-postanalyticsprocessorsourceuri"></a>
An Amazon S3 URI to a script that is called after analysis has been performed. Applicable only for the built-in (first party) containers.  
*Required*: No  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RecordPreprocessorSourceUri`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityappspecification-recordpreprocessorsourceuri"></a>
An Amazon S3 URI to a script that is called per row prior to running analysis. It can base64 decode the payload and convert it into a flattened JSON so that the built-in container can use the converted data. Applicable only for the built-in (first party) containers.  
*Required*: No  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition DataQualityBaselineConfig
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig"></a>

Configuration for monitoring constraints and monitoring statistics. These baseline resources are compared against the results of the current job from the series of jobs scheduled to collect data periodically.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-syntax.json"></a>

```
{
  "[BaseliningJobName](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-baseliningjobname)" : String,
  "[ConstraintsResource](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-constraintsresource)" : ConstraintsResource,
  "[StatisticsResource](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-statisticsresource)" : StatisticsResource
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-syntax.yaml"></a>

```
  [BaseliningJobName](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-baseliningjobname): String
  [ConstraintsResource](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-constraintsresource): 
    ConstraintsResource
  [StatisticsResource](#cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-statisticsresource): 
    StatisticsResource
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-properties"></a>

`BaseliningJobName`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-baseliningjobname"></a>
The name of the job that performs baselining for the data quality monitoring job.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9](-*[a-zA-Z0-9])*$`  
*Minimum*: `1`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ConstraintsResource`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-constraintsresource"></a>
The constraints resource for a monitoring job.  
*Required*: No  
*Type*: [ConstraintsResource](aws-properties-sagemaker-dataqualityjobdefinition-constraintsresource.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StatisticsResource`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualitybaselineconfig-statisticsresource"></a>
Configuration for monitoring constraints and monitoring statistics. These baseline resources are compared against the results of the current job from the series of jobs scheduled to collect data periodically.  
*Required*: No  
*Type*: [StatisticsResource](aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition DataQualityJobInput
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput"></a>

The input for the data quality monitoring job. Currently endpoints are supported for input.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput-syntax.json"></a>

```
{
  "[BatchTransformInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-batchtransforminput)" : BatchTransformInput,
  "[EndpointInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-endpointinput)" : EndpointInput
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput-syntax.yaml"></a>

```
  [BatchTransformInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-batchtransforminput): 
    BatchTransformInput
  [EndpointInput](#cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-endpointinput): 
    EndpointInput
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-dataqualityjobinput-properties"></a>

`BatchTransformInput`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-batchtransforminput"></a>
Input object for the batch transform job.  
*Required*: No  
*Type*: [BatchTransformInput](aws-properties-sagemaker-dataqualityjobdefinition-batchtransforminput.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EndpointInput`  <a name="cfn-sagemaker-dataqualityjobdefinition-dataqualityjobinput-endpointinput"></a>
Input object for the endpoint  
*Required*: No  
*Type*: [EndpointInput](aws-properties-sagemaker-dataqualityjobdefinition-endpointinput.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition DatasetFormat
<a name="aws-properties-sagemaker-dataqualityjobdefinition-datasetformat"></a>

The format of the dataset used for the data quality monitoring job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-datasetformat-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-datasetformat-syntax.json"></a>

```
{
  "[Csv](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-csv)" : Csv,
  "[Json](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-json)" : Json,
  "[Parquet](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-parquet)" : Boolean
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-datasetformat-syntax.yaml"></a>

```
  [Csv](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-csv): 
    Csv
  [Json](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-json): 
    Json
  [Parquet](#cfn-sagemaker-dataqualityjobdefinition-datasetformat-parquet): Boolean
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-datasetformat-properties"></a>

`Csv`  <a name="cfn-sagemaker-dataqualityjobdefinition-datasetformat-csv"></a>
The CSV format configuration for the dataset.  
*Required*: No  
*Type*: [Csv](aws-properties-sagemaker-dataqualityjobdefinition-csv.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Json`  <a name="cfn-sagemaker-dataqualityjobdefinition-datasetformat-json"></a>
The JSON format configuration for the dataset.  
*Required*: No  
*Type*: [Json](aws-properties-sagemaker-dataqualityjobdefinition-json.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Parquet`  <a name="cfn-sagemaker-dataqualityjobdefinition-datasetformat-parquet"></a>
Indicates that the dataset is in Parquet format.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition EndpointInput
<a name="aws-properties-sagemaker-dataqualityjobdefinition-endpointinput"></a>

Input object for the endpoint

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-endpointinput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-endpointinput-syntax.json"></a>

```
{
  "[EndpointName](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-endpointname)" : String,
  "[ExcludeFeaturesAttribute](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-excludefeaturesattribute)" : String,
  "[LocalPath](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-localpath)" : String,
  "[S3DataDistributionType](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3datadistributiontype)" : String,
  "[S3InputMode](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3inputmode)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-endpointinput-syntax.yaml"></a>

```
  [EndpointName](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-endpointname): String
  [ExcludeFeaturesAttribute](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-excludefeaturesattribute): String
  [LocalPath](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-localpath): String
  [S3DataDistributionType](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3datadistributiontype): String
  [S3InputMode](#cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3inputmode): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-endpointinput-properties"></a>

`EndpointName`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointinput-endpointname"></a>
An endpoint in customer's account which has enabled `DataCaptureConfig` enabled.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9](-*[a-zA-Z0-9])*`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ExcludeFeaturesAttribute`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointinput-excludefeaturesattribute"></a>
The attributes of the input data to exclude from the analysis.  
*Required*: No  
*Type*: String  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LocalPath`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointinput-localpath"></a>
Path to the filesystem where the endpoint data is available to the container.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3DataDistributionType`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3datadistributiontype"></a>
Whether input data distributed in Amazon S3 is fully replicated or sharded by an Amazon S3 key. Defaults to `FullyReplicated`  
*Required*: No  
*Type*: String  
*Allowed values*: `FullyReplicated | ShardedByS3Key`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3InputMode`  <a name="cfn-sagemaker-dataqualityjobdefinition-endpointinput-s3inputmode"></a>
Whether the `Pipe` or `File` is used as the input mode for transferring data for the monitoring job. `Pipe` mode is recommended for large datasets. `File` mode is useful for small files that fit in memory. Defaults to `File`.  
*Required*: No  
*Type*: String  
*Allowed values*: `Pipe | File`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition Json
<a name="aws-properties-sagemaker-dataqualityjobdefinition-json"></a>

The JSON dataset format configuration.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-json-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-json-syntax.json"></a>

```
{
  "[Line](#cfn-sagemaker-dataqualityjobdefinition-json-line)" : Boolean
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-json-syntax.yaml"></a>

```
  [Line](#cfn-sagemaker-dataqualityjobdefinition-json-line): Boolean
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-json-properties"></a>

`Line`  <a name="cfn-sagemaker-dataqualityjobdefinition-json-line"></a>
Indicates whether the JSON data is in line-delimited format.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition MonitoringOutput
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput"></a>

The output object for a monitoring job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput-syntax.json"></a>

```
{
  "[S3Output](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutput-s3output)" : S3Output
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput-syntax.yaml"></a>

```
  [S3Output](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutput-s3output): 
    S3Output
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput-properties"></a>

`S3Output`  <a name="cfn-sagemaker-dataqualityjobdefinition-monitoringoutput-s3output"></a>
The Amazon S3 storage location where the results of a monitoring job are saved.  
*Required*: Yes  
*Type*: [S3Output](aws-properties-sagemaker-dataqualityjobdefinition-s3output.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition MonitoringOutputConfig
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig"></a>

The output configuration for monitoring jobs.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-syntax.json"></a>

```
{
  "[KmsKeyId](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-kmskeyid)" : String,
  "[MonitoringOutputs](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-monitoringoutputs)" : [ MonitoringOutput, ... ]
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-syntax.yaml"></a>

```
  [KmsKeyId](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-kmskeyid): String
  [MonitoringOutputs](#cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-monitoringoutputs): 
    - MonitoringOutput
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-properties"></a>

`KmsKeyId`  <a name="cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-kmskeyid"></a>
The AWS Key Management Service (AWS KMS) key that Amazon SageMaker AI uses to encrypt the model artifacts at rest using Amazon S3 server-side encryption.  
*Required*: No  
*Type*: String  
*Pattern*: `.*`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MonitoringOutputs`  <a name="cfn-sagemaker-dataqualityjobdefinition-monitoringoutputconfig-monitoringoutputs"></a>
Monitoring outputs for monitoring jobs. This is where the output of the periodic monitoring jobs is uploaded.  
*Required*: Yes  
*Type*: Array of [MonitoringOutput](aws-properties-sagemaker-dataqualityjobdefinition-monitoringoutput.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition MonitoringResources
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources"></a>

Identifies the resources to deploy for a monitoring job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources-syntax.json"></a>

```
{
  "[ClusterConfig](#cfn-sagemaker-dataqualityjobdefinition-monitoringresources-clusterconfig)" : ClusterConfig
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources-syntax.yaml"></a>

```
  [ClusterConfig](#cfn-sagemaker-dataqualityjobdefinition-monitoringresources-clusterconfig): 
    ClusterConfig
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-monitoringresources-properties"></a>

`ClusterConfig`  <a name="cfn-sagemaker-dataqualityjobdefinition-monitoringresources-clusterconfig"></a>
The configuration for the cluster resources used to run the processing job.  
*Required*: Yes  
*Type*: [ClusterConfig](aws-properties-sagemaker-dataqualityjobdefinition-clusterconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition NetworkConfig
<a name="aws-properties-sagemaker-dataqualityjobdefinition-networkconfig"></a>

Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-networkconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-networkconfig-syntax.json"></a>

```
{
  "[EnableInterContainerTrafficEncryption](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enableintercontainertrafficencryption)" : Boolean,
  "[EnableNetworkIsolation](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enablenetworkisolation)" : Boolean,
  "[VpcConfig](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-vpcconfig)" : VpcConfig
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-networkconfig-syntax.yaml"></a>

```
  [EnableInterContainerTrafficEncryption](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enableintercontainertrafficencryption): Boolean
  [EnableNetworkIsolation](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-enablenetworkisolation): Boolean
  [VpcConfig](#cfn-sagemaker-dataqualityjobdefinition-networkconfig-vpcconfig): 
    VpcConfig
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-networkconfig-properties"></a>

`EnableInterContainerTrafficEncryption`  <a name="cfn-sagemaker-dataqualityjobdefinition-networkconfig-enableintercontainertrafficencryption"></a>
Whether to encrypt all communications between distributed processing jobs. Choose `True` to encrypt communications. Encryption provides greater security for distributed processing jobs, but the processing might take longer.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EnableNetworkIsolation`  <a name="cfn-sagemaker-dataqualityjobdefinition-networkconfig-enablenetworkisolation"></a>
Whether to allow inbound and outbound network calls to and from the containers used for the processing job.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VpcConfig`  <a name="cfn-sagemaker-dataqualityjobdefinition-networkconfig-vpcconfig"></a>
Specifies a VPC that your training jobs and hosted models have access to. Control access to and from your training and model containers by configuring the VPC.  
*Required*: No  
*Type*: [VpcConfig](aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition S3Output
<a name="aws-properties-sagemaker-dataqualityjobdefinition-s3output"></a>

The Amazon S3 storage location where the results of a monitoring job are saved.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-s3output-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-s3output-syntax.json"></a>

```
{
  "[LocalPath](#cfn-sagemaker-dataqualityjobdefinition-s3output-localpath)" : String,
  "[S3UploadMode](#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uploadmode)" : String,
  "[S3Uri](#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uri)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-s3output-syntax.yaml"></a>

```
  [LocalPath](#cfn-sagemaker-dataqualityjobdefinition-s3output-localpath): String
  [S3UploadMode](#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uploadmode): String
  [S3Uri](#cfn-sagemaker-dataqualityjobdefinition-s3output-s3uri): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-s3output-properties"></a>

`LocalPath`  <a name="cfn-sagemaker-dataqualityjobdefinition-s3output-localpath"></a>
The local path to the Amazon S3 storage location where Amazon SageMaker saves the results of a monitoring job. LocalPath is an absolute path for the output data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `.*`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3UploadMode`  <a name="cfn-sagemaker-dataqualityjobdefinition-s3output-s3uploadmode"></a>
Whether to upload the results of the monitoring job continuously or after the job completes.  
*Required*: No  
*Type*: String  
*Allowed values*: `Continuous | EndOfJob`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3Uri`  <a name="cfn-sagemaker-dataqualityjobdefinition-s3output-s3uri"></a>
A URI that identifies the Amazon S3 storage location where Amazon SageMaker saves the results of a monitoring job.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `512`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition StatisticsResource
<a name="aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource"></a>

The statistics resource for a monitoring job.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource-syntax.json"></a>

```
{
  "[S3Uri](#cfn-sagemaker-dataqualityjobdefinition-statisticsresource-s3uri)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource-syntax.yaml"></a>

```
  [S3Uri](#cfn-sagemaker-dataqualityjobdefinition-statisticsresource-s3uri): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-statisticsresource-properties"></a>

`S3Uri`  <a name="cfn-sagemaker-dataqualityjobdefinition-statisticsresource-s3uri"></a>
The Amazon S3 URI for the statistics resource.  
*Required*: No  
*Type*: String  
*Pattern*: `^(https|s3)://([^/]+)/?(.*)$`  
*Maximum*: `1024`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition StoppingCondition
<a name="aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition"></a>

Specifies a limit to how long a job can run. When the job reaches the time limit, SageMaker ends the job. Use this API to cap costs.

To stop a training job, SageMaker sends the algorithm the `SIGTERM` signal, which delays job termination for 120 seconds. Algorithms can use this 120-second window to save the model artifacts, so the results of training are not lost. 

The training algorithms provided by SageMaker automatically save the intermediate results of a model training job when possible. This attempt to save artifacts is only a best effort case as model might not be in a state from which it can be saved. For example, if training has just started, the model might not be ready to save. When saved, this intermediate data is a valid model artifact. You can use it to create a model with `CreateModel`.

**Note**  
The Neural Topic Model (NTM) currently does not support saving intermediate model artifacts. When training NTMs, make sure that the maximum runtime is sufficient for the training job to complete.

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition-syntax.json"></a>

```
{
  "[MaxRuntimeInSeconds](#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition-maxruntimeinseconds)" : Integer
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition-syntax.yaml"></a>

```
  [MaxRuntimeInSeconds](#cfn-sagemaker-dataqualityjobdefinition-stoppingcondition-maxruntimeinseconds): Integer
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-stoppingcondition-properties"></a>

`MaxRuntimeInSeconds`  <a name="cfn-sagemaker-dataqualityjobdefinition-stoppingcondition-maxruntimeinseconds"></a>
The maximum length of time, in seconds, that a training or compilation job can run before it is stopped.  
For compilation jobs, if the job does not complete during this time, a `TimeOut` error is generated. We recommend starting with 900 seconds and increasing as necessary based on your model.  
For all other jobs, if the job does not complete during this time, SageMaker ends the job. When `RetryStrategy` is specified in the job request, `MaxRuntimeInSeconds` specifies the maximum time for all of the attempts in total, not each individual attempt. The default value is 1 day. The maximum value is 28 days.  
The maximum time that a `TrainingJob` can run in total, including any time spent publishing metrics or archiving and uploading models after it has been stopped, is 30 days.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `86400`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition Tag
<a name="aws-properties-sagemaker-dataqualityjobdefinition-tag"></a>

A tag object that consists of a key and an optional value, used to manage metadata for SageMaker AWS resources.

You can add tags to notebook instances, training jobs, hyperparameter tuning jobs, batch transform jobs, models, labeling jobs, work teams, endpoint configurations, and endpoints. For more information on adding tags to SageMaker resources, see [AddTags](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AddTags.html).

For more information on adding metadata to your AWS resources with tagging, see [Tagging AWS resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). For advice on best practices for managing AWS resources with tagging, see [Tagging Best Practices: Implement an Effective AWS Resource Tagging Strategy](https://d1.awsstatic.com/whitepapers/aws-tagging-best-practices.pdf).

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-tag-syntax.json"></a>

```
{
  "[Key](#cfn-sagemaker-dataqualityjobdefinition-tag-key)" : String,
  "[Value](#cfn-sagemaker-dataqualityjobdefinition-tag-value)" : String
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-tag-syntax.yaml"></a>

```
  [Key](#cfn-sagemaker-dataqualityjobdefinition-tag-key): String
  [Value](#cfn-sagemaker-dataqualityjobdefinition-tag-value): String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-tag-properties"></a>

`Key`  <a name="cfn-sagemaker-dataqualityjobdefinition-tag-key"></a>
The tag key. Tag keys must be unique per resource.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-sagemaker-dataqualityjobdefinition-tag-value"></a>
The tag value.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::SageMaker::DataQualityJobDefinition VpcConfig
<a name="aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig"></a>

Specifies an Amazon Virtual Private Cloud (VPC) that your SageMaker jobs, hosted models, and compute resources have access to. You can control access to and from your resources by configuring a VPC. For more information, see [Give SageMaker Access to Resources in your Amazon VPC](https://docs.aws.amazon.com/sagemaker/latest/dg/infrastructure-give-access.html). 

## Syntax
<a name="aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig-syntax.json"></a>

```
{
  "[SecurityGroupIds](#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-securitygroupids)" : [ String, ... ],
  "[Subnets](#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-subnets)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig-syntax.yaml"></a>

```
  [SecurityGroupIds](#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-securitygroupids): 
    - String
  [Subnets](#cfn-sagemaker-dataqualityjobdefinition-vpcconfig-subnets): 
    - String
```

## Properties
<a name="aws-properties-sagemaker-dataqualityjobdefinition-vpcconfig-properties"></a>

`SecurityGroupIds`  <a name="cfn-sagemaker-dataqualityjobdefinition-vpcconfig-securitygroupids"></a>
The VPC security group IDs, in the form `sg-xxxxxxxx`. Specify the security groups for the VPC that is specified in the `Subnets` field.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `32 | 5`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Subnets`  <a name="cfn-sagemaker-dataqualityjobdefinition-vpcconfig-subnets"></a>
The ID of the subnets in the VPC to which you want to connect your training job or model. For information about the availability of specific instance types, see [Supported Instance Types and Availability Zones](https://docs.aws.amazon.com/sagemaker/latest/dg/instance-types-az.html).  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `32 | 16`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)