/*
* 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-featurestore-runtime-2020-07-01.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.SageMakerFeatureStoreRuntime.Model
{
///
/// Container for the parameters to the PutRecord operation.
/// The PutRecord
API is used to ingest a list of Records
into
/// your feature group.
///
///
///
/// If a new record’s EventTime
is greater, the new record is written to
/// both the OnlineStore
and OfflineStore
. Otherwise, the record
/// is a historic record and it is written only to the OfflineStore
.
///
///
///
/// You can specify the ingestion to be applied to the OnlineStore
, OfflineStore
,
/// or both by using the TargetStores
request parameter.
///
///
///
/// You can set the ingested record to expire at a given time to live (TTL) duration after
/// the record’s event time, ExpiresAt
= EventTime
+ TtlDuration
,
/// by specifying the TtlDuration
parameter. A record level TtlDuration
/// is set when specifying the TtlDuration
parameter using the PutRecord
/// API call. If the input TtlDuration
is null
or unspecified,
/// TtlDuration
is set to the default feature group level TtlDuration
.
/// A record level TtlDuration
supersedes the group level TtlDuration
.
///
///
public partial class PutRecordRequest : AmazonSageMakerFeatureStoreRuntimeRequest
{
private string _featureGroupName;
private List _record = new List();
private List _targetStores = new List();
private TtlDuration _ttlDuration;
///
/// Gets and sets the property FeatureGroupName.
///
/// The name or Amazon Resource Name (ARN) of the feature group that you want to insert
/// the record into.
///
///
[AWSProperty(Required=true, Min=1, Max=150)]
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 Record.
///
/// List of FeatureValues to be inserted. This will be a full over-write. If you only
/// want to update few of the feature values, do the following:
///
/// -
///
/// Use
GetRecord
to retrieve the latest record.
///
/// -
///
/// Update the record returned from
GetRecord
.
///
/// -
///
/// Use
PutRecord
to update feature values.
///
///
///
[AWSProperty(Required=true, Min=1)]
public List Record
{
get { return this._record; }
set { this._record = value; }
}
// Check to see if Record property is set
internal bool IsSetRecord()
{
return this._record != null && this._record.Count > 0;
}
///
/// Gets and sets the property TargetStores.
///
/// A list of stores to which you're adding the record. By default, Feature Store adds
/// the record to all of the stores that you're using for the FeatureGroup
.
///
///
[AWSProperty(Min=1, Max=2)]
public List TargetStores
{
get { return this._targetStores; }
set { this._targetStores = value; }
}
// Check to see if TargetStores property is set
internal bool IsSetTargetStores()
{
return this._targetStores != null && this._targetStores.Count > 0;
}
///
/// Gets and sets the property TtlDuration.
///
/// Time to live duration, where the record is hard deleted after the expiration time
/// is reached; ExpiresAt
= EventTime
+ TtlDuration
.
/// For information on HardDelete, see the DeleteRecord
/// API in the Amazon SageMaker API Reference guide.
///
///
public TtlDuration TtlDuration
{
get { return this._ttlDuration; }
set { this._ttlDuration = value; }
}
// Check to see if TtlDuration property is set
internal bool IsSetTtlDuration()
{
return this._ttlDuration != null;
}
}
}