/* * Copyright 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. */ /* * Do not modify this file. This file is generated from the sagemaker-2017-07-24.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SageMaker.Model { /// /// Container for the parameters to the CreateFeatureGroup operation. /// Create a new FeatureGroup. A FeatureGroup is a group of /// Features defined in the FeatureStore to describe a Record. /// /// /// /// /// The FeatureGroup defines the schema and features contained in the FeatureGroup. /// A FeatureGroup definition is composed of a list of Features, /// a RecordIdentifierFeatureName, an EventTimeFeatureName and /// configurations for its OnlineStore and OfflineStore. Check /// Amazon /// Web Services service quotas to see the FeatureGroups quota for your /// Amazon Web Services account. /// /// /// /// You must include at least one of OnlineStoreConfig and OfflineStoreConfig /// to create a FeatureGroup. /// /// /// public partial class CreateFeatureGroupRequest : AmazonSageMakerRequest { private string _description; private string _eventTimeFeatureName; private List _featureDefinitions = new List(); private string _featureGroupName; private OfflineStoreConfig _offlineStoreConfig; private OnlineStoreConfig _onlineStoreConfig; private string _recordIdentifierFeatureName; private string _roleArn; private List _tags = new List(); /// /// Gets and sets the property Description. /// /// A free-form description of a FeatureGroup. /// /// [AWSProperty(Max=128)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property EventTimeFeatureName. /// /// The name of the feature that stores the EventTime of a Record /// in a FeatureGroup. /// /// /// /// An EventTime is a point in time when a new event occurs that corresponds /// to the creation or update of a Record in a FeatureGroup. /// All Records in the FeatureGroup must have a corresponding /// EventTime. /// /// /// /// An EventTime can be a String or Fractional. /// /// ///
  • /// /// Fractional: EventTime feature values must be a Unix timestamp /// in seconds. /// ///
  • /// /// String: EventTime feature values must be an ISO-8601 string /// in the format. The following formats are supported yyyy-MM-dd'T'HH:mm:ssZ /// and yyyy-MM-dd'T'HH:mm:ss.SSSZ where yyyy, MM, /// and dd represent the year, month, and day respectively and HH, /// mm, ss, and if applicable, SSS represent the /// hour, month, second and milliseconds respsectively. 'T' and Z /// are constants. /// ///
///
[AWSProperty(Required=true, Min=1, Max=64)] public string EventTimeFeatureName { get { return this._eventTimeFeatureName; } set { this._eventTimeFeatureName = value; } } // Check to see if EventTimeFeatureName property is set internal bool IsSetEventTimeFeatureName() { return this._eventTimeFeatureName != null; } /// /// Gets and sets the property FeatureDefinitions. /// /// A list of Feature names and types. Name and Type /// is compulsory per Feature. /// /// /// /// Valid feature 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. /// /// [AWSProperty(Required=true, Min=1, Max=2500)] public List FeatureDefinitions { get { return this._featureDefinitions; } set { this._featureDefinitions = value; } } // Check to see if FeatureDefinitions property is set internal bool IsSetFeatureDefinitions() { return this._featureDefinitions != null && this._featureDefinitions.Count > 0; } /// /// Gets and sets the property FeatureGroupName. /// /// The name of the FeatureGroup. The name must be unique within an Amazon /// Web Services Region in an Amazon Web Services account. The name: /// ///
  • /// /// Must start and end with an alphanumeric character. /// ///
  • /// /// Can only contain alphanumeric character and hyphens. Spaces are not allowed. /// ///
///
[AWSProperty(Required=true, Min=1, Max=64)] public string FeatureGroupName { get { return this._featureGroupName; } set { this._featureGroupName = value; } } // Check to see if FeatureGroupName property is set internal bool IsSetFeatureGroupName() { return this._featureGroupName != null; } /// /// Gets and sets the property OfflineStoreConfig. /// /// Use this to configure an OfflineFeatureStore. This parameter allows you /// to specify: /// ///
  • /// /// The Amazon Simple Storage Service (Amazon S3) location of an OfflineStore. /// ///
  • /// /// A configuration for an Amazon Web Services Glue or Amazon Web Services Hive data catalog. /// /// ///
  • /// /// An KMS encryption key to encrypt the Amazon S3 location used for OfflineStore. /// If KMS encryption key is not specified, by default we encrypt all data at rest using /// Amazon Web Services KMS key. By defining your bucket-level /// key for SSE, you can reduce Amazon Web Services KMS requests costs by up to 99 /// percent. /// ///
  • /// /// Format for the offline store table. Supported formats are Glue (Default) and Apache /// Iceberg. /// ///
/// /// To learn more about this parameter, see OfflineStoreConfig. /// ///
public OfflineStoreConfig OfflineStoreConfig { get { return this._offlineStoreConfig; } set { this._offlineStoreConfig = value; } } // Check to see if OfflineStoreConfig property is set internal bool IsSetOfflineStoreConfig() { return this._offlineStoreConfig != null; } /// /// Gets and sets the property OnlineStoreConfig. /// /// You can turn the OnlineStore on or off by specifying True /// for the EnableOnlineStore flag in OnlineStoreConfig. /// /// /// /// You can also include an Amazon Web Services KMS key ID (KMSKeyId) for /// at-rest encryption of the OnlineStore. /// /// /// /// The default value is False. /// /// public OnlineStoreConfig OnlineStoreConfig { get { return this._onlineStoreConfig; } set { this._onlineStoreConfig = value; } } // Check to see if OnlineStoreConfig property is set internal bool IsSetOnlineStoreConfig() { return this._onlineStoreConfig != null; } /// /// Gets and sets the property RecordIdentifierFeatureName. /// /// The name of the Feature whose value uniquely identifies a Record /// defined in the FeatureStore. Only the latest record per identifier value /// will be stored in the OnlineStore. RecordIdentifierFeatureName /// must be one of feature definitions' names. /// /// /// /// You use the RecordIdentifierFeatureName to access data in a FeatureStore. /// /// /// /// This name: /// ///
  • /// /// Must start and end with an alphanumeric character. /// ///
  • /// /// Can only contains alphanumeric characters, hyphens, underscores. Spaces are not allowed. /// /// ///
///
[AWSProperty(Required=true, Min=1, Max=64)] public string RecordIdentifierFeatureName { get { return this._recordIdentifierFeatureName; } set { this._recordIdentifierFeatureName = value; } } // Check to see if RecordIdentifierFeatureName property is set internal bool IsSetRecordIdentifierFeatureName() { return this._recordIdentifierFeatureName != null; } /// /// Gets and sets the property RoleArn. /// /// The Amazon Resource Name (ARN) of the IAM execution role used to persist data into /// the OfflineStore if an OfflineStoreConfig is provided. /// /// [AWSProperty(Min=20, Max=2048)] public string RoleArn { get { return this._roleArn; } set { this._roleArn = value; } } // Check to see if RoleArn property is set internal bool IsSetRoleArn() { return this._roleArn != null; } /// /// Gets and sets the property Tags. /// /// Tags used to identify Features in each FeatureGroup. /// /// [AWSProperty(Min=0, Max=50)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } } }