/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.sagemaker.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Describes the resources, including ML instance types and ML instance count, to use for transform job. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class TransformResources implements Serializable, Cloneable, StructuredPojo { /** *
     * The ML compute instance type for the transform job. If you are using built-in algorithms to transform moderately
     * sized datasets, we recommend using ml.m4.xlarge or ml.m5.largeinstance types.
     * 
     * The number of ML compute instances to use in the transform job. The default value is 1, and the
     * maximum is 100. For distributed transform jobs, specify a value greater than 1.
     * 
* The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to * encrypt model data on the storage volume attached to the ML compute instance(s) that run the batch transform job. *
*
     * Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are
     * encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an
     * instance type with local storage.
     * 
* For a list of instance types that support local instance storage, see Instance * Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     * The VolumeKmsKeyId can be any of the following formats:
     * 
     * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Alias name: alias/ExampleAlias
     * 
     * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     * 
     * The ML compute instance type for the transform job. If you are using built-in algorithms to transform moderately
     * sized datasets, we recommend using ml.m4.xlarge or ml.m5.largeinstance types.
     * 
ml.m5.largeinstance types.
     * @see TransformInstanceType
     */
    public void setInstanceType(String instanceType) {
        this.instanceType = instanceType;
    }
    /**
     * 
     * The ML compute instance type for the transform job. If you are using built-in algorithms to transform moderately
     * sized datasets, we recommend using ml.m4.xlarge or ml.m5.largeinstance types.
     * 
ml.m5.largeinstance types.
     * @see TransformInstanceType
     */
    public String getInstanceType() {
        return this.instanceType;
    }
    /**
     * 
     * The ML compute instance type for the transform job. If you are using built-in algorithms to transform moderately
     * sized datasets, we recommend using ml.m4.xlarge or ml.m5.largeinstance types.
     * 
ml.m5.largeinstance types.
     * @return Returns a reference to this object so that method calls can be chained together.
     * @see TransformInstanceType
     */
    public TransformResources withInstanceType(String instanceType) {
        setInstanceType(instanceType);
        return this;
    }
    /**
     * 
     * The ML compute instance type for the transform job. If you are using built-in algorithms to transform moderately
     * sized datasets, we recommend using ml.m4.xlarge or ml.m5.largeinstance types.
     * 
ml.m5.largeinstance types.
     * @return Returns a reference to this object so that method calls can be chained together.
     * @see TransformInstanceType
     */
    public TransformResources withInstanceType(TransformInstanceType instanceType) {
        this.instanceType = instanceType.toString();
        return this;
    }
    /**
     * 
     * The number of ML compute instances to use in the transform job. The default value is 1, and the
     * maximum is 100. For distributed transform jobs, specify a value greater than 1.
     * 
1, and
     *        the maximum is 100. For distributed transform jobs, specify a value greater than
     *        1.
     */
    public void setInstanceCount(Integer instanceCount) {
        this.instanceCount = instanceCount;
    }
    /**
     * 
     * The number of ML compute instances to use in the transform job. The default value is 1, and the
     * maximum is 100. For distributed transform jobs, specify a value greater than 1.
     * 
1, and
     *         the maximum is 100. For distributed transform jobs, specify a value greater than
     *         1.
     */
    public Integer getInstanceCount() {
        return this.instanceCount;
    }
    /**
     * 
     * The number of ML compute instances to use in the transform job. The default value is 1, and the
     * maximum is 100. For distributed transform jobs, specify a value greater than 1.
     * 
1, and
     *        the maximum is 100. For distributed transform jobs, specify a value greater than
     *        1.
     * @return Returns a reference to this object so that method calls can be chained together.
     */
    public TransformResources withInstanceCount(Integer instanceCount) {
        setInstanceCount(instanceCount);
        return this;
    }
    /**
     * * The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to * encrypt model data on the storage volume attached to the ML compute instance(s) that run the batch transform job. *
*
     * Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are
     * encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an
     * instance type with local storage.
     * 
* For a list of instance types that support local instance storage, see Instance * Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     * The VolumeKmsKeyId can be any of the following formats:
     * 
     * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Alias name: alias/ExampleAlias
     * 
     * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     * 
     *        Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes
     *        are encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId
     *        when using an instance type with local storage.
     *        
* For a list of instance types that support local instance storage, see Instance Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     *        The VolumeKmsKeyId can be any of the following formats:
     *        
     *        Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     *        
     *        Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     *        
     *        Alias name: alias/ExampleAlias
     *        
     *        Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     *        
* The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to * encrypt model data on the storage volume attached to the ML compute instance(s) that run the batch transform job. *
*
     * Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are
     * encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an
     * instance type with local storage.
     * 
* For a list of instance types that support local instance storage, see Instance * Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     * The VolumeKmsKeyId can be any of the following formats:
     * 
     * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Alias name: alias/ExampleAlias
     * 
     * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     * 
     *         Certain Nitro-based instances include local storage, dependent on the instance type. Local storage
     *         volumes are encrypted using a hardware module on the instance. You can't request a
     *         VolumeKmsKeyId when using an instance type with local storage.
     *         
* For a list of instance types that support local instance storage, see Instance Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     *         The VolumeKmsKeyId can be any of the following formats:
     *         
     *         Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     *         
     *         Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     *         
     *         Alias name: alias/ExampleAlias
     *         
     *         Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     *         
* The Amazon Web Services Key Management Service (Amazon Web Services KMS) key that Amazon SageMaker uses to * encrypt model data on the storage volume attached to the ML compute instance(s) that run the batch transform job. *
*
     * Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are
     * encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an
     * instance type with local storage.
     * 
* For a list of instance types that support local instance storage, see Instance * Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     * The VolumeKmsKeyId can be any of the following formats:
     * 
     * Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     * 
     * Alias name: alias/ExampleAlias
     * 
     * Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     * 
     *        Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes
     *        are encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId
     *        when using an instance type with local storage.
     *        
* For a list of instance types that support local instance storage, see Instance Store Volumes. *
** For more information about local instance storage encryption, see SSD Instance Store * Volumes. *
*
     *        The VolumeKmsKeyId can be any of the following formats:
     *        
     *        Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab
     *        
     *        Key ARN: arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
     *        
     *        Alias name: alias/ExampleAlias
     *        
     *        Alias name ARN: arn:aws:kms:us-west-2:111122223333:alias/ExampleAlias
     *