Skip to content

Add get_online_features method in OnlineStore interface #4270

@tokoko

Description

@tokoko

I'm proposing we refactor online feature retrieval to move most of the logic for get_online_features and get_online_features_async methods from FeatureStore class in feature_store.py to new methods in OnlineStore class that will have default implementations. This shouldn't be breaking change, nor impact performance in any way, but offers a number of advantages.

  • This more closely follows the structure of OfflineStore class that has get_historical_features as one of it's methods.
  • Simplifies the implementation of remote online store as all request info will be exposed to OnlineStore provider. Feature Services are really tricky to implement now.
  • Related to the point above, simplifies security checks in remote servers as more of request context is available to be passed to the server.
  • Will be a step in a direction to address long-standing issue with our online stores that require us making a single round-trip to the database for each feature view because only a single feature view at a time is exposed to online store provider.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions