rpc GetFeastCoreVersion(GetFeastCoreVersionRequest) returns (GetFeastCoreVersionResponse)
Retrieve version information about this Feast deployment
rpc GetEntity(GetEntityRequest) returns (GetEntityResponse)
Returns a specific entity
rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse)
Returns all feature references and respective features matching that filter. If none are found an empty map will be returned If no filter is provided in the request, the response will contain all the features currently stored in the default project.
rpc ListStores(ListStoresRequest) returns (ListStoresResponse)
Retrieve store details given a filter.
Returns all stores matching that filter. If none are found, an empty list will be returned. If no filter is provided in the request, the response will contain all the stores currently stored in the registry.
rpc ApplyEntity(ApplyEntityRequest) returns (ApplyEntityResponse)
Create or update and existing entity.
This function is idempotent - it will not create a new entity if schema does not change. Schema changes will update the entity if the changes are valid. Following changes are not valid: - Changes to name - Changes to type
rpc ListEntities(ListEntitiesRequest) returns (ListEntitiesResponse)
Returns all entity references and respective entities matching that filter. If none are found an empty map will be returned If no filter is provided in the request, the response will contain all the entities currently stored in the default project.
rpc UpdateStore(UpdateStoreRequest) returns (UpdateStoreResponse)
Updates core with the configuration of the store.
If the changes are valid, core will return the given store configuration in response, and start or update the necessary feature population jobs for the updated store.
rpc CreateProject(CreateProjectRequest) returns (CreateProjectResponse)
Creates a project. Projects serve as namespaces within which resources like features will be created. Feature table names as must be unique within a project while field (Feature/Entity) names must be unique within a Feature Table. Project names themselves must be globally unique.
rpc ArchiveProject(ArchiveProjectRequest) returns (ArchiveProjectResponse)
Archives a project. Archived projects will continue to exist and function, but won’t be visible through the Core API. Any existing ingestion or serving requests will continue to function, but will result in warning messages being logged. It is not possible to unarchive a project through the Core API
rpc ListProjects(ListProjectsRequest) returns (ListProjectsResponse)
Lists all projects active projects.
rpc ApplyFeatureTable(ApplyFeatureTableRequest) returns (ApplyFeatureTableResponse)
Create or update an existing feature table. This function is idempotent - it will not create a new feature table if the schema does not change. Schema changes will update the feature table if the changes are valid. All changes except the following are valid: - Changes to feature table name. - Changes to entities - Changes to feature name and type
rpc ListFeatureTables(ListFeatureTablesRequest) returns (ListFeatureTablesResponse)
List feature tables that match a given filter. Returns the references of the Feature Tables matching that filter. If none are found, an empty list will be returned. If no filter is provided in the request, the response will match all the feature tables currently stored in the registry.
rpc GetFeatureTable(GetFeatureTableRequest) returns (GetFeatureTableResponse)
Returns a specific feature table
rpc DeleteFeatureTable(DeleteFeatureTableRequest) returns (DeleteFeatureTableResponse)
Delete a specific feature table
rpc StartOfflineToOnlineIngestionJob(StartOfflineToOnlineIngestionJobRequest) returns (StartOfflineToOnlineIngestionJobResponse)
Start job to ingest data from offline store into online store
rpc GetHistoricalFeatures(GetHistoricalFeaturesRequest) returns (GetHistoricalFeaturesResponse)
Produce a training dataset, return a job id that will provide a file reference
rpc StartStreamToOnlineIngestionJob(StartStreamToOnlineIngestionJobRequest) returns (StartStreamToOnlineIngestionJobResponse)
Start job to ingest data from stream into online store
rpc ListJobs(ListJobsRequest) returns (ListJobsResponse)
List all types of jobs
rpc CancelJob(CancelJobRequest) returns (CancelJobResponse)
Cancel a single job
rpc GetJob(GetJobRequest) returns (GetJobResponse)
Get details of a single job
Defines the file format encoding the features/entity data in files
Defines the data format encoding features/entity data in data streams
Defines options for the Parquet data format
Defines options for the protobuf data format
Defines options for the avro data format
Defines a Data Source that can be used source Feature data
Defines options for DataSource that sources features from a file
Defines options for DataSource that sources features from a BigQuery Query
Defines options for DataSource that sources features from Kafka messages. Each message should be a Protobuf that can be decoded with the generated Java Protobuf class at the given class path
Defines options for DataSource that sources features from Kinesis records. Each record should be a Protobuf that can be decoded with the generated Java Protobuf class at the given class path
Store provides a location where Feast reads and writes feature values. Feature values will be written to the Store in the form of FeatureRow elements. The way FeatureRow is encoded and decoded when it is written to and read from the Store depends on the type of the Store.
Request for a single entity
Response containing a single entity
Retrieves details for all versions of a specific entity
Request to create a project
Response for creation of a project
Request for the archival of a project
Response for archival of a project
Request for listing of projects
Response for listing of projects
Ingest data from offline store into online store
Name | Description |
---|---|
INVALID |
|
BYTES |
|
STRING |
|
INT32 |
|
INT64 |
|
DOUBLE |
|
FLOAT |
|
BOOL |
|
BYTES_LIST |
|
STRING_LIST |
|
INT32_LIST |
|
INT64_LIST |
|
DOUBLE_LIST |
|
FLOAT_LIST |
|
BOOL_LIST |
Name | Description |
---|---|
INVALID |
|
BYTES |
|
STRING |
|
INT32 |
|
INT64 |
|
DOUBLE |
|
FLOAT |
|
BOOL |
|
BYTES_LIST |
|
STRING_LIST |
|
INT32_LIST |
|
INT64_LIST |
|
DOUBLE_LIST |
|
FLOAT_LIST |
|
BOOL_LIST |
Type of Data Source.
Name | Description |
---|---|
INVALID |
|
BATCH_FILE |
|
BATCH_BIGQUERY |
|
STREAM_KAFKA |
|
STREAM_KINESIS |
Type of Data Source.
Name | Description |
---|---|
INVALID |
|
BATCH_FILE |
|
BATCH_BIGQUERY |
|
STREAM_KAFKA |
|
STREAM_KINESIS |
Name | Description |
---|---|
INVALID |
|
REDIS |
Redis stores a FeatureRow element as a key, value pair. The Redis data types used (https://redis.io/topics/data-types): - key: STRING - value: STRING Encodings: - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) - value: Redis hashmap |
REDIS_CLUSTER |
Name | Description |
---|---|
INVALID |
|
REDIS |
Redis stores a FeatureRow element as a key, value pair. The Redis data types used (https://redis.io/topics/data-types): - key: STRING - value: STRING Encodings: - key: byte array of RedisKey (refer to feast.storage.RedisKeyV2) - value: Redis hashmap |
REDIS_CLUSTER |
Name | Description |
---|---|
NO_CHANGE |
Existing store config matching the given store id is identical to the given store config. |
UPDATED |
New store created or existing config updated. |
Name | Description |
---|---|
NO_CHANGE |
Existing store config matching the given store id is identical to the given store config. |
UPDATED |
New store created or existing config updated. |
Name | Description |
---|---|
INVALID_JOB |
|
BATCH_INGESTION_JOB |
|
STREAM_INGESTION_JOB |
|
RETRIEVAL_JOB |
Name | Description |
---|---|
JOB_STATUS_INVALID |
|
JOB_STATUS_PENDING |
The Job has be registered and waiting to get scheduled to run |
JOB_STATUS_RUNNING |
The Job is currently processing its task |
JOB_STATUS_DONE |
The Job has successfully completed its task |
JOB_STATUS_ERROR |
The Job has encountered an error while processing its task |
Name | Description |
---|---|
INVALID_JOB |
|
BATCH_INGESTION_JOB |
|
STREAM_INGESTION_JOB |
|
RETRIEVAL_JOB |
Name | Description |
---|---|
JOB_STATUS_INVALID |
|
JOB_STATUS_PENDING |
The Job has be registered and waiting to get scheduled to run |
JOB_STATUS_RUNNING |
The Job is currently processing its task |
JOB_STATUS_DONE |
The Job has successfully completed its task |
JOB_STATUS_ERROR |
The Job has encountered an error while processing its task |