/* * 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; /** *
* Amazon SageMaker Feature Store stores features in a collection called Feature Group. A Feature Group can be * visualized as a table which has rows, with a unique identifier for each row where each column in the table is a * feature. In principle, a Feature Group is composed of features and values per features. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class FeatureGroup implements Serializable, Cloneable, StructuredPojo { /** *
* The Amazon Resource Name (ARN) of a FeatureGroup.
*
* The name of the FeatureGroup.
*
* The name of the Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*
* The name of the feature that stores the EventTime of a Record in a FeatureGroup.
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or update of a
* Record in FeatureGroup. All Records in the FeatureGroup must
* have a corresponding EventTime.
*
* A list of Features. Each Feature must include a FeatureName and a
* FeatureType.
*
* Valid FeatureTypes are Integral, Fractional and String.
*
* FeatureNames cannot be any of the following: is_deleted, write_time,
* api_invocation_time.
*
* You can create up to 2,500 FeatureDefinitions per FeatureGroup.
*
* The time a FeatureGroup was created.
*
* A timestamp indicating the last time you updated the feature group. *
*/ private java.util.Date lastModifiedTime; private OnlineStoreConfig onlineStoreConfig; private OfflineStoreConfig offlineStoreConfig; /** ** The Amazon Resource Name (ARN) of the IAM execution role used to create the feature group. *
*/ private String roleArn; /** *
* A FeatureGroup status.
*
* A value that indicates whether the feature group was updated successfully. *
*/ private LastUpdateStatus lastUpdateStatus; /** *
* The reason that the FeatureGroup failed to be replicated in the OfflineStore. This is
* failure may be due to a failure to create a FeatureGroup in or delete a FeatureGroup
* from the OfflineStore.
*
* A free form description of a FeatureGroup.
*
* Tags used to define a FeatureGroup.
*
* The Amazon Resource Name (ARN) of a FeatureGroup.
*
FeatureGroup.
*/
public void setFeatureGroupArn(String featureGroupArn) {
this.featureGroupArn = featureGroupArn;
}
/**
*
* The Amazon Resource Name (ARN) of a FeatureGroup.
*
FeatureGroup.
*/
public String getFeatureGroupArn() {
return this.featureGroupArn;
}
/**
*
* The Amazon Resource Name (ARN) of a FeatureGroup.
*
FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withFeatureGroupArn(String featureGroupArn) {
setFeatureGroupArn(featureGroupArn);
return this;
}
/**
*
* The name of the FeatureGroup.
*
FeatureGroup.
*/
public void setFeatureGroupName(String featureGroupName) {
this.featureGroupName = featureGroupName;
}
/**
*
* The name of the FeatureGroup.
*
FeatureGroup.
*/
public String getFeatureGroupName() {
return this.featureGroupName;
}
/**
*
* The name of the FeatureGroup.
*
FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withFeatureGroupName(String featureGroupName) {
setFeatureGroupName(featureGroupName);
return this;
}
/**
*
* The name of the Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*
Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*/
public void setRecordIdentifierFeatureName(String recordIdentifierFeatureName) {
this.recordIdentifierFeatureName = recordIdentifierFeatureName;
}
/**
*
* The name of the Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*
Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*/
public String getRecordIdentifierFeatureName() {
return this.recordIdentifierFeatureName;
}
/**
*
* The name of the Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
*
Feature whose value uniquely identifies a Record defined in the
* FeatureGroup FeatureDefinitions.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withRecordIdentifierFeatureName(String recordIdentifierFeatureName) {
setRecordIdentifierFeatureName(recordIdentifierFeatureName);
return this;
}
/**
*
* The name of the feature that stores the EventTime of a Record in a FeatureGroup.
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or update of a
* Record in FeatureGroup. All Records in the FeatureGroup must
* have a corresponding EventTime.
*
EventTime of a Record in a FeatureGroup
* .
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or
* update of a Record in FeatureGroup. All Records in the
* FeatureGroup must have a corresponding EventTime.
*/
public void setEventTimeFeatureName(String eventTimeFeatureName) {
this.eventTimeFeatureName = eventTimeFeatureName;
}
/**
*
* The name of the feature that stores the EventTime of a Record in a FeatureGroup.
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or update of a
* Record in FeatureGroup. All Records in the FeatureGroup must
* have a corresponding EventTime.
*
EventTime of a Record in a FeatureGroup
* .
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or
* update of a Record in FeatureGroup. All Records in the
* FeatureGroup must have a corresponding EventTime.
*/
public String getEventTimeFeatureName() {
return this.eventTimeFeatureName;
}
/**
*
* The name of the feature that stores the EventTime of a Record in a FeatureGroup.
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or update of a
* Record in FeatureGroup. All Records in the FeatureGroup must
* have a corresponding EventTime.
*
EventTime of a Record in a FeatureGroup
* .
*
* A EventTime is point in time when a new event occurs that corresponds to the creation or
* update of a Record in FeatureGroup. All Records in the
* FeatureGroup must have a corresponding EventTime.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withEventTimeFeatureName(String eventTimeFeatureName) {
setEventTimeFeatureName(eventTimeFeatureName);
return this;
}
/**
*
* A list of Features. Each Feature must include a FeatureName and a
* FeatureType.
*
* Valid FeatureTypes are Integral, Fractional and String.
*
* FeatureNames cannot be any of the following: is_deleted, write_time,
* api_invocation_time.
*
* You can create up to 2,500 FeatureDefinitions per FeatureGroup.
*
Features. Each Feature must include a FeatureName and a
* FeatureType.
*
* Valid FeatureTypes are Integral, Fractional and
* String.
*
* FeatureNames cannot be any of the following: is_deleted,
* write_time, api_invocation_time.
*
* You can create up to 2,500
* A list of
* Valid
*
* You can create up to 2,500 FeatureDefinitions per FeatureGroup.
*/
public java.util.ListFeatures. Each Feature must include a FeatureName and a
* FeatureType.
* FeatureTypes are Integral, Fractional and String.
* FeatureNames cannot be any of the following: is_deleted, write_time,
* api_invocation_time.
* FeatureDefinitions per FeatureGroup.
* Features. Each Feature must include a FeatureName and a
* FeatureType.
* Valid FeatureTypes are Integral, Fractional and String
* .
*
* FeatureNames cannot be any of the following: is_deleted, write_time, api_invocation_time.
*
* You can create up to 2,500
* A list of
* Valid
*
* You can create up to 2,500
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setFeatureDefinitions(java.util.Collection)} or {@link #withFeatureDefinitions(java.util.Collection)} if
* you want to override the existing values.
* FeatureDefinitions per FeatureGroup.
*/
public void setFeatureDefinitions(java.util.CollectionFeatures. Each Feature must include a FeatureName and a
* FeatureType.
* FeatureTypes are Integral, Fractional and String.
* FeatureNames cannot be any of the following: is_deleted, write_time,
* api_invocation_time.
* FeatureDefinitions per FeatureGroup.
* Features. Each Feature must include a FeatureName and a
* FeatureType.
* Valid FeatureTypes are Integral, Fractional and String
* .
*
* FeatureNames cannot be any of the following: is_deleted, write_time, api_invocation_time.
*
* You can create up to 2,500
* A list of
* Valid
*
* You can create up to 2,500 FeatureDefinitions per FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withFeatureDefinitions(FeatureDefinition... featureDefinitions) {
if (this.featureDefinitions == null) {
setFeatureDefinitions(new java.util.ArrayListFeatures. Each Feature must include a FeatureName and a
* FeatureType.
* FeatureTypes are Integral, Fractional and String.
* FeatureNames cannot be any of the following: is_deleted, write_time,
* api_invocation_time.
* FeatureDefinitions per FeatureGroup.
* Features. Each Feature must include a FeatureName and a
* FeatureType.
* Valid FeatureTypes are Integral, Fractional and String
* .
*
* FeatureNames cannot be any of the following: is_deleted, write_time, api_invocation_time.
*
* You can create up to 2,500
* The time a
* The time a
* The time a
* A timestamp indicating the last time you updated the feature group.
*
* A timestamp indicating the last time you updated the feature group.
*
* A timestamp indicating the last time you updated the feature group.
*
* The Amazon Resource Name (ARN) of the IAM execution role used to create the feature group.
*
* The Amazon Resource Name (ARN) of the IAM execution role used to create the feature group.
*
* The Amazon Resource Name (ARN) of the IAM execution role used to create the feature group.
*
* A
* A
* A
* A
* A value that indicates whether the feature group was updated successfully.
*
* A value that indicates whether the feature group was updated successfully.
*
* A value that indicates whether the feature group was updated successfully.
*
* The reason that the
* The reason that the
* The reason that the
* A free form description of a
* A free form description of a
* A free form description of a
* Tags used to define a
* Tags used to define a
* Tags used to define a
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the
* existing values.
*
* Tags used to define a FeatureDefinitions per FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withFeatureDefinitions(java.util.CollectionFeatureGroup was created.
* FeatureGroup was created.
*/
public void setCreationTime(java.util.Date creationTime) {
this.creationTime = creationTime;
}
/**
* FeatureGroup was created.
* FeatureGroup was created.
*/
public java.util.Date getCreationTime() {
return this.creationTime;
}
/**
* FeatureGroup was created.
* FeatureGroup was created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withCreationTime(java.util.Date creationTime) {
setCreationTime(creationTime);
return this;
}
/**
* FeatureGroup status.
* FeatureGroup status.
* @see FeatureGroupStatus
*/
public void setFeatureGroupStatus(String featureGroupStatus) {
this.featureGroupStatus = featureGroupStatus;
}
/**
* FeatureGroup status.
* FeatureGroup status.
* @see FeatureGroupStatus
*/
public String getFeatureGroupStatus() {
return this.featureGroupStatus;
}
/**
* FeatureGroup status.
* FeatureGroup status.
* @return Returns a reference to this object so that method calls can be chained together.
* @see FeatureGroupStatus
*/
public FeatureGroup withFeatureGroupStatus(String featureGroupStatus) {
setFeatureGroupStatus(featureGroupStatus);
return this;
}
/**
* FeatureGroup status.
* FeatureGroup status.
* @return Returns a reference to this object so that method calls can be chained together.
* @see FeatureGroupStatus
*/
public FeatureGroup withFeatureGroupStatus(FeatureGroupStatus featureGroupStatus) {
this.featureGroupStatus = featureGroupStatus.toString();
return this;
}
/**
* @param offlineStoreStatus
*/
public void setOfflineStoreStatus(OfflineStoreStatus offlineStoreStatus) {
this.offlineStoreStatus = offlineStoreStatus;
}
/**
* @return
*/
public OfflineStoreStatus getOfflineStoreStatus() {
return this.offlineStoreStatus;
}
/**
* @param offlineStoreStatus
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withOfflineStoreStatus(OfflineStoreStatus offlineStoreStatus) {
setOfflineStoreStatus(offlineStoreStatus);
return this;
}
/**
* FeatureGroup failed to be replicated in the OfflineStore. This is
* failure may be due to a failure to create a FeatureGroup in or delete a FeatureGroup
* from the OfflineStore.
* FeatureGroup failed to be replicated in the OfflineStore.
* This is failure may be due to a failure to create a FeatureGroup in or delete a
* FeatureGroup from the OfflineStore.
*/
public void setFailureReason(String failureReason) {
this.failureReason = failureReason;
}
/**
* FeatureGroup failed to be replicated in the OfflineStore. This is
* failure may be due to a failure to create a FeatureGroup in or delete a FeatureGroup
* from the OfflineStore.
* FeatureGroup failed to be replicated in the OfflineStore.
* This is failure may be due to a failure to create a FeatureGroup in or delete a
* FeatureGroup from the OfflineStore.
*/
public String getFailureReason() {
return this.failureReason;
}
/**
* FeatureGroup failed to be replicated in the OfflineStore. This is
* failure may be due to a failure to create a FeatureGroup in or delete a FeatureGroup
* from the OfflineStore.
* FeatureGroup failed to be replicated in the OfflineStore.
* This is failure may be due to a failure to create a FeatureGroup in or delete a
* FeatureGroup from the OfflineStore.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withFailureReason(String failureReason) {
setFailureReason(failureReason);
return this;
}
/**
* FeatureGroup.
* FeatureGroup.
*/
public void setDescription(String description) {
this.description = description;
}
/**
* FeatureGroup.
* FeatureGroup.
*/
public String getDescription() {
return this.description;
}
/**
* FeatureGroup.
* FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withDescription(String description) {
setDescription(description);
return this;
}
/**
* FeatureGroup.
* FeatureGroup.
*/
public java.util.ListFeatureGroup.
* FeatureGroup.
*/
public void setTags(java.util.CollectionFeatureGroup.
* FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withTags(Tag... tags) {
if (this.tags == null) {
setTags(new java.util.ArrayListFeatureGroup.
* FeatureGroup.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FeatureGroup withTags(java.util.Collection