feast
feast copied to clipboard
abilty to query stores without copying feature_store.yaml around
Is your feature request related to a problem? Please describe.
Right now to use feast as a client (that is a data scientist who wants to call get_historical_features, not someone running feast apply) you still need to copy of feature_store.yaml. Since it is a single small file, distributing it as a package seems excessive, but copies, symlinks, and submodules all have obvious awkward downsides. For registries hosted on shared infrastructure (such as an S3 bucket), I'd like to be able to just point the clients at the same bucket.
Describe the solution you'd like Something like
store = feast.FeatureStore(config=s3://my-bucket/feature_store.yaml') # feast apply uploads this
or
store = feast.FeatureStore(registry= 's3://my-bucket/registry.pb')
Describe alternatives you've considered
I don't have an opinion between a convention of uploading feature_store.yaml as an object, versus extracting equivalent data from the registry protobuf (which I assume already has most everything).
You can do something like this:
repo_config = RepoConfig(
registry=RegistryConfig(path="s3://[YOUR BUCKET]/registry.pb"),
project="feast_demo_aws",
provider="aws",
offline_store="file",
online_store=DynamoDBOnlineStoreConfig(region="us-west-2")
)
store = FeatureStore(config=repo_config)
store.materialize_incremental(datetime.datetime.now())
A data scientist for example just need to put in their own credentials
Is there anywhere a documentation how to use RepoConfig? How do I use RepoConfig with a Postgresql database for registry, offline store and online store? And how can I put the credentials in it, with a Connection String?
Which commit 'completed' this issue?
This example demonstrates that one can instantiate a RepoConfig as python code but that still leaves the use cases -- how to share the contents of said config -- unaddressed.
(In other words in the example project, provider, offline_store, and online_store do not get their configuration from declaring registry=RegistryConfig(path="s3://[YOUR BUCKET]/registry.pb").
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Similar request at #3454
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.