Interface SageMakerFeatureStoreRuntimeAsyncClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface SageMakerFeatureStoreRuntimeAsyncClient extends AwsClient
Service client for accessing Amazon SageMaker Feature Store Runtime asynchronously. This can be created using the static builder() method.The asynchronous client performs non-blocking I/O when configured with any SdkAsyncHttpClient supported in the SDK. However, full non-blocking is not guaranteed as the async client may perform blocking calls in some cases such as credentials retrieval and endpoint discovery as part of the async API call.

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:

  • Field Details

  • Method Details

    • batchGetRecord

      default CompletableFuture<BatchGetRecordResponse> batchGetRecord(BatchGetRecordRequest batchGetRecordRequest)

      Retrieves a batch of Records from a FeatureGroup.

      Parameters:
      batchGetRecordRequest -
      Returns:
      A Java Future containing the result of the BatchGetRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • batchGetRecord

      default CompletableFuture<BatchGetRecordResponse> batchGetRecord(Consumer<BatchGetRecordRequest.Builder> batchGetRecordRequest)

      Retrieves a batch of Records from a FeatureGroup.


      This is a convenience which creates an instance of the BatchGetRecordRequest.Builder avoiding the need to create one manually via BatchGetRecordRequest.builder()

      Parameters:
      batchGetRecordRequest - A Consumer that will call methods on BatchGetRecordRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the BatchGetRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteRecord

      default CompletableFuture<DeleteRecordResponse> deleteRecord(DeleteRecordRequest deleteRecordRequest)

      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 the OnlineStore, though the delete record marker is still written to the OfflineStore.

      • HardDelete returns EventTime: 400 ValidationException to indicate that the delete operation failed. No delete record marker is written to the OfflineStore.

      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.

      Parameters:
      deleteRecordRequest -
      Returns:
      A Java Future containing the result of the DeleteRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • deleteRecord

      default CompletableFuture<DeleteRecordResponse> deleteRecord(Consumer<DeleteRecordRequest.Builder> deleteRecordRequest)

      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 the OnlineStore, though the delete record marker is still written to the OfflineStore.

      • HardDelete returns EventTime: 400 ValidationException to indicate that the delete operation failed. No delete record marker is written to the OfflineStore.

      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.


      This is a convenience which creates an instance of the DeleteRecordRequest.Builder avoiding the need to create one manually via DeleteRecordRequest.builder()

      Parameters:
      deleteRecordRequest - A Consumer that will call methods on DeleteRecordRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the DeleteRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getRecord

      default CompletableFuture<GetRecordResponse> getRecord(GetRecordRequest getRecordRequest)

      Use 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.

      Parameters:
      getRecordRequest -
      Returns:
      A Java Future containing the result of the GetRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • ResourceNotFoundException A resource that is required to perform an action was not found.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • getRecord

      default CompletableFuture<GetRecordResponse> getRecord(Consumer<GetRecordRequest.Builder> getRecordRequest)

      Use 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.


      This is a convenience which creates an instance of the GetRecordRequest.Builder avoiding the need to create one manually via GetRecordRequest.builder()

      Parameters:
      getRecordRequest - A Consumer that will call methods on GetRecordRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the GetRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • ResourceNotFoundException A resource that is required to perform an action was not found.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • putRecord

      default CompletableFuture<PutRecordResponse> putRecord(PutRecordRequest putRecordRequest)

      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.

      Parameters:
      putRecordRequest -
      Returns:
      A Java Future containing the result of the PutRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • putRecord

      default CompletableFuture<PutRecordResponse> putRecord(Consumer<PutRecordRequest.Builder> putRecordRequest)

      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.


      This is a convenience which creates an instance of the PutRecordRequest.Builder avoiding the need to create one manually via PutRecordRequest.builder()

      Parameters:
      putRecordRequest - A Consumer that will call methods on PutRecordRequest.Builder to create a request.
      Returns:
      A Java Future containing the result of the PutRecord operation returned by the service.
      The CompletableFuture returned by this method can be completed exceptionally with the following exceptions. The exception returned is wrapped with CompletionException, so you need to invoke Throwable.getCause() to retrieve the underlying exception.
      • ValidationErrorException There was an error validating your request.
      • InternalFailureException An internal failure occurred. Try your request again. If the problem persists, contact Amazon Web Services customer support.
      • ServiceUnavailableException The service is currently unavailable.
      • AccessForbiddenException You do not have permission to perform an action.
      • SdkException Base class for all exceptions that can be thrown by the SDK (both service and client). Can be used for catch all scenarios.
      • SdkClientException If any client side error occurs such as an IO related failure, failure to get credentials, etc.
      • SageMakerFeatureStoreRuntimeException Base class for all service exceptions. Unknown exceptions will be thrown as an instance of this type.
      See Also:
    • serviceClientConfiguration

      default SageMakerFeatureStoreRuntimeServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration
    • create

      Create a SageMakerFeatureStoreRuntimeAsyncClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      Create a builder that can be used to configure and create a SageMakerFeatureStoreRuntimeAsyncClient.