pub struct Client { /* private fields */ }
Expand description
Client for Amazon SageMaker Feature Store Runtime
Client for invoking operations on Amazon SageMaker Feature Store Runtime. Each operation on Amazon SageMaker Feature Store Runtime is a method on this
this struct. .send()
MUST be invoked on the generated operations to dispatch the request to the service.
§Constructing a Client
A Config
is required to construct a client. For most use cases, the aws-config
crate should be used to automatically resolve this config using
aws_config::load_from_env()
, since this will resolve an SdkConfig
which can be shared
across multiple different AWS SDK clients. This config resolution process can be customized
by calling aws_config::from_env()
instead, which returns a ConfigLoader
that uses
the builder pattern to customize the default config.
In the simplest case, creating a client looks as follows:
let config = aws_config::load_from_env().await;
let client = aws_sdk_sagemakerfeaturestoreruntime::Client::new(&config);
Occasionally, SDKs may have additional service-specific values that can be set on the Config
that
is absent from SdkConfig
, or slightly different settings for a specific client may be desired.
The Config
struct implements From<&SdkConfig>
, so setting these specific settings can be
done as follows:
let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_sagemakerfeaturestoreruntime::config::Builder::from(&sdk_config)
.some_service_specific_setting("value")
.build();
See the aws-config
docs and Config
for more information on customizing configuration.
Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.
§Using the Client
A client has a function for every operation that can be performed by the service.
For example, the BatchGetRecord
operation has
a Client::batch_get_record
, function which returns a builder for that operation.
The fluent builder ultimately has a send()
function that returns an async future that
returns a result, as illustrated below:
let result = client.batch_get_record()
.expiration_time_response("example")
.send()
.await;
The underlying HTTP requests that get made by this can be modified with the customize_operation
function on the fluent builder. See the customize
module for more
information.
Implementations§
source§impl Client
impl Client
sourcepub fn batch_get_record(&self) -> BatchGetRecordFluentBuilder
pub fn batch_get_record(&self) -> BatchGetRecordFluentBuilder
Constructs a fluent builder for the BatchGetRecord
operation.
- The fluent builder is configurable:
identifiers(BatchGetRecordIdentifier)
/set_identifiers(Option<Vec::<BatchGetRecordIdentifier>>)
:
required: trueA list containing the name or Amazon Resource Name (ARN) of the
FeatureGroup
, the list of names ofFeature
s to be retrieved, and the correspondingRecordIdentifier
values as strings.expiration_time_response(ExpirationTimeResponse)
/set_expiration_time_response(Option<ExpirationTimeResponse>)
:
required: falseParameter to request
ExpiresAt
in response. IfEnabled
,BatchGetRecord
will return the value ofExpiresAt
, if it is not null. IfDisabled
and null,BatchGetRecord
will return null.
- On success, responds with
BatchGetRecordOutput
with field(s):records(Option<Vec::<BatchGetRecordResultDetail>>)
:A list of Records you requested to be retrieved in batch.
errors(Option<Vec::<BatchGetRecordError>>)
:A list of errors that have occurred when retrieving a batch of Records.
unprocessed_identifiers(Option<Vec::<BatchGetRecordIdentifier>>)
:A unprocessed list of
FeatureGroup
names, with their correspondingRecordIdentifier
value, and Feature name.
- On failure, responds with
SdkError<BatchGetRecordError>
source§impl Client
impl Client
sourcepub fn delete_record(&self) -> DeleteRecordFluentBuilder
pub fn delete_record(&self) -> DeleteRecordFluentBuilder
Constructs a fluent builder for the DeleteRecord
operation.
- The fluent builder is configurable:
feature_group_name(impl Into<String>)
/set_feature_group_name(Option<String>)
:
required: trueThe name or Amazon Resource Name (ARN) of the feature group to delete the record from.
record_identifier_value_as_string(impl Into<String>)
/set_record_identifier_value_as_string(Option<String>)
:
required: trueThe value for the
RecordIdentifier
that uniquely identifies the record, in string format.event_time(impl Into<String>)
/set_event_time(Option<String>)
:
required: trueTimestamp indicating when the deletion event occurred.
EventTime
can be used to query data at a certain point in time.target_stores(TargetStore)
/set_target_stores(Option<Vec::<TargetStore>>)
:
required: falseA list of stores from which you’re deleting the record. By default, Feature Store deletes the record from all of the stores that you’re using for the
FeatureGroup
.deletion_mode(DeletionMode)
/set_deletion_mode(Option<DeletionMode>)
:
required: falseThe name of the deletion mode for deleting the record. By default, the deletion mode is set to
SoftDelete
.
- On success, responds with
DeleteRecordOutput
- On failure, responds with
SdkError<DeleteRecordError>
source§impl Client
impl Client
sourcepub fn get_record(&self) -> GetRecordFluentBuilder
pub fn get_record(&self) -> GetRecordFluentBuilder
Constructs a fluent builder for the GetRecord
operation.
- The fluent builder is configurable:
feature_group_name(impl Into<String>)
/set_feature_group_name(Option<String>)
:
required: trueThe name or Amazon Resource Name (ARN) of the feature group from which you want to retrieve a record.
record_identifier_value_as_string(impl Into<String>)
/set_record_identifier_value_as_string(Option<String>)
:
required: trueThe value that corresponds to
RecordIdentifier
type and uniquely identifies the record in theFeatureGroup
.feature_names(impl Into<String>)
/set_feature_names(Option<Vec::<String>>)
:
required: falseList of names of Features to be retrieved. If not specified, the latest value for all the Features are returned.
expiration_time_response(ExpirationTimeResponse)
/set_expiration_time_response(Option<ExpirationTimeResponse>)
:
required: falseParameter to request
ExpiresAt
in response. IfEnabled
,GetRecord
will return the value ofExpiresAt
, if it is not null. IfDisabled
and null,GetRecord
will return null.
- On success, responds with
GetRecordOutput
with field(s):record(Option<Vec::<FeatureValue>>)
:The record you requested. A list of
FeatureValues
.expires_at(Option<String>)
:The
ExpiresAt
ISO string of the requested record.
- On failure, responds with
SdkError<GetRecordError>
source§impl Client
impl Client
sourcepub fn put_record(&self) -> PutRecordFluentBuilder
pub fn put_record(&self) -> PutRecordFluentBuilder
Constructs a fluent builder for the PutRecord
operation.
- The fluent builder is configurable:
feature_group_name(impl Into<String>)
/set_feature_group_name(Option<String>)
:
required: trueThe name or Amazon Resource Name (ARN) of the feature group that you want to insert the record into.
record(FeatureValue)
/set_record(Option<Vec::<FeatureValue>>)
:
required: trueList 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.
-
target_stores(TargetStore)
/set_target_stores(Option<Vec::<TargetStore>>)
:
required: falseA 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
.ttl_duration(TtlDuration)
/set_ttl_duration(Option<TtlDuration>)
:
required: falseTime 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.
- On success, responds with
PutRecordOutput
- On failure, responds with
SdkError<PutRecordError>
source§impl Client
impl Client
sourcepub fn from_conf(conf: Config) -> Self
pub fn from_conf(conf: Config) -> Self
Creates a new client from the service Config
.
§Panics
This method will panic in the following cases:
- Retries or timeouts are enabled without a
sleep_impl
configured. - Identity caching is enabled without a
sleep_impl
andtime_source
configured. - No
behavior_version
is provided.
The panic message for each of these will have instructions on how to resolve them.
source§impl Client
impl Client
sourcepub fn new(sdk_config: &SdkConfig) -> Self
pub fn new(sdk_config: &SdkConfig) -> Self
Creates a new client from an SDK Config.
§Panics
- This method will panic if the
sdk_config
is missing an async sleep implementation. If you experience this panic, set thesleep_impl
on the Config passed into this function to fix it. - This method will panic if the
sdk_config
is missing an HTTP connector. If you experience this panic, set thehttp_connector
on the Config passed into this function to fix it. - This method will panic if no
BehaviorVersion
is provided. If you experience this panic, setbehavior_version
on the Config or enable thebehavior-version-latest
Cargo feature.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Client
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more