View Source AWS.SageMakerFeatureStoreRuntime (aws-elixir v0.14.1)
Contains all data plane API operations and data types for the Amazon SageMaker Feature Store.
Use this API to put, delete, and retrieve (get) features from a feature store.
Use the following operations to configure your OnlineStore
and OfflineStore
features, and to create and manage feature groups:
Summary
Functions
Retrieves a batch of Records
from a FeatureGroup
.
Deletes a Record
from a FeatureGroup
in the OnlineStore
.
Feature Store supports both SoftDelete
and HardDelete
. For SoftDelete
(default), feature columns are set to null
and the record is no longer
retrievable by GetRecord
or BatchGetRecord
. For HardDelete
, the complete
Record
is removed from the OnlineStore
. In both cases, Feature Store appends
the deleted record marker to the OfflineStore
. The deleted record marker is a
record with the same RecordIdentifer
as the original, but with is_deleted
value set to True
, EventTime
set to the delete input EventTime
, and other
feature values set to null
.
Note that the EventTime
specified in DeleteRecord
should be set later than
the EventTime
of the existing record in the OnlineStore
for that
RecordIdentifer
. If it is not, the deletion does not occur:
For
SoftDelete
, the existing (not deleted) record remains in theOnlineStore
, though the delete record marker is still written to theOfflineStore
.HardDelete
returnsEventTime
:400 ValidationException
to indicate that the delete operation failed. No delete record marker is written to theOfflineStore
.
When a record is deleted from the OnlineStore
, the deleted record marker is
appended to the OfflineStore
. If you have the Iceberg table format enabled for
your OfflineStore
, you can remove all history of a record from the
OfflineStore
using Amazon Athena or Apache Spark. For information on how to
hard delete a record from the OfflineStore
with the Iceberg table format
enabled, see Delete records from the offline store.
get_record(client, feature_group_name, expiration_time_response \\ nil, feature_names \\ nil, record_identifier_value_as_string, options \\ [])
View SourceUse for OnlineStore
serving from a FeatureStore
.
Only the latest records stored in the OnlineStore
can be retrieved. If no
Record with RecordIdentifierValue
is found, then an empty result is returned.
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
.