Services

ServingService

rpc GetFeastServingInfo(GetFeastServingInfoRequest) returns (GetFeastServingInfoResponse)

Get information about this Feast serving.

rpc GetOnlineFeatures(GetOnlineFeaturesRequest) returns (GetOnlineFeaturesResponse)

Get online features synchronously.

rpc GetBatchFeatures(GetBatchFeaturesRequest) returns (GetBatchFeaturesResponse)

Get batch features asynchronously.

The client should check the status of the returned job periodically by calling ReloadJob to determine if the job has completed successfully or with an error. If the job completes successfully i.e. status = JOBSTATUSDONE with no error, then the client can check the file_uris for the location to download feature values data. The client is assumed to have access to these file URIs.

rpc GetJob(GetJobRequest) returns (GetJobResponse)

Get the latest job status for batch feature retrieval.

Types

GetFeastServingInfoRequest

GetFeastServingInfoResponse

Field Type Description Required
version string

Feast version of this serving deployment.

No
type FeastServingType

Type of serving deployment, either ONLINE or BATCH. Different store types support different feature retrieval methods.

No
jobStagingLocation string

Note: Batch specific options start from 10. Staging location for this serving store, if any.

No

FeatureReference

Field Type Description Required
project string

Project name. This field is optional, if unspecified will default to ‘default’.

No
name string

Feature name

No
featureSet string

Feature set name specifying the feature set of this referenced feature. This field is optional if the feature referenced is unique across the project in which case the feature set would be automatically infered

No

GetOnlineFeaturesRequest

Field Type Description Required
features FeatureReference[]

List of features that are being retrieved

No
entityRows EntityRow[]

List of entity rows, containing entity id and timestamp data. Used during retrieval of feature rows and for joining feature rows into a final dataset

No
omitEntitiesInResponse bool

Option to omit entities from the response. If true, only feature values will be returned.

No

GetBatchFeaturesRequest

Field Type Description Required
features FeatureReference[]

List of features that are being retrieved

No
datasetSource DatasetSource

Source of the entity dataset containing the timestamps and entity keys to retrieve features for.

No

GetOnlineFeaturesResponse

Field Type Description Required
fieldValues FieldValues[]

Feature values retrieved from feast.

No

GetBatchFeaturesResponse

Field Type Description Required
job Job No

GetJobRequest

Field Type Description Required
job Job No

GetJobResponse

Field Type Description Required
job Job No

Job

Field Type Description Required
id string No
type JobType

Output only. The type of the job.

No
status JobStatus

Output only. Current state of the job.

No
error string

Output only. If not empty, the job has failed with this error message.

No
fileUris string[]

Output only. The list of URIs for the files to be downloaded or uploaded (depends on the job type) for this particular job.

No
dataFormat DataFormat

Output only. The data format for all the files. For CSV format, the files contain both feature values and a column header.

No

DatasetSource

Field Type Description Required
fileSource FileSource (oneof)

File source to load the dataset from.

No

GetOnlineFeaturesRequest.EntityRow

Field Type Description Required
entityTimestamp Timestamp

Request timestamp of this row. This value will be used, together with maxAge, to determine feature staleness.

No
fields map<string, Value>

Map containing mapping of entity name to entity value.

No

GetOnlineFeaturesResponse.FieldValues

Field Type Description Required
fields map<string, Value>

Map of feature or entity name to feature/entity values. Timestamps are not returned in this response.

No

DatasetSource.FileSource

Field Type Description Required
fileUris string[]

URIs to retrieve the dataset from, e.g. gs://bucket/directory/object.csv. Wildcards are supported. This data must be compatible to be uploaded to the serving store, and also be accessible by this serving instance.

No
dataFormat DataFormat

Format of the data. Currently only avro is supported.

No

feast.types.Value

Field Type Description Required
bytesVal bytes (oneof) No
stringVal string (oneof) No
int32Val int32 (oneof) No
int64Val int64 (oneof) No
doubleVal double (oneof) No
floatVal float (oneof) No
boolVal bool (oneof) No
bytesListVal BytesList (oneof) No
stringListVal StringList (oneof) No
int32ListVal Int32List (oneof) No
int64ListVal Int64List (oneof) No
doubleListVal DoubleList (oneof) No
floatListVal FloatList (oneof) No
boolListVal BoolList (oneof) No

FeastServingType

Name Description
FEAST_SERVING_TYPE_INVALID
FEAST_SERVING_TYPE_ONLINE

Online serving receives entity data directly and synchronously and will respond immediately.

FEAST_SERVING_TYPE_BATCH

Batch serving receives entity data asynchronously and orchestrates the retrieval through a staging location.

JobType

Name Description
JOB_TYPE_INVALID
JOB_TYPE_DOWNLOAD

JobStatus

Name Description
JOB_STATUS_INVALID
JOB_STATUS_PENDING
JOB_STATUS_RUNNING
JOB_STATUS_DONE

DataFormat

Name Description
DATA_FORMAT_INVALID
DATA_FORMAT_AVRO

FeastServingType

Name Description
FEAST_SERVING_TYPE_INVALID
FEAST_SERVING_TYPE_ONLINE

Online serving receives entity data directly and synchronously and will respond immediately.

FEAST_SERVING_TYPE_BATCH

Batch serving receives entity data asynchronously and orchestrates the retrieval through a staging location.

JobType

Name Description
JOB_TYPE_INVALID
JOB_TYPE_DOWNLOAD

JobStatus

Name Description
JOB_STATUS_INVALID
JOB_STATUS_PENDING
JOB_STATUS_RUNNING
JOB_STATUS_DONE

DataFormat

Name Description
DATA_FORMAT_INVALID
DATA_FORMAT_AVRO

DataFormat

Name Description
DATA_FORMAT_INVALID
DATA_FORMAT_AVRO