-
Notifications
You must be signed in to change notification settings - Fork 998
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow for registering feature that doesn't have warehouse store #5
Comments
So the question here is
I think we should have the option to both disable warehouse storage on specific features, as well as deploy a Feast instance without a warehouse (serving only) |
My pull request fixes a typo.. But basically ingestion already supports setting a "no operation" store, for either serving or ingestion. The core api would still need to implement sending it of course. |
So the next step is a PR which adds this functionality to @zhilingc, possible to have a look at this? |
I'm also working on a PR to make ingestion accept an empty storage spec. Though in reality, that will interpreted as a StorageSpec.defaultInstance(). With empty string as the storeid. Ingestion will then treat this as a noop store. |
Ok. You might want to remove the validation check that makes declaring a store mandatory when registering a feature as well. |
Aren't you worried people will register features and they will just all go to noop when they leave it out though? We do need to implement inheriting a system default first. And then a user needs to be able to override the default to a noop. Which now that I think about might be a pain. As if they set the store id to an empty string, it will look the same as the default instance, so how will you know when to override it with the default or not? Remember protos not having optional values means that there's no such thing as a null store id. |
Isn't a better approach simply to have an option to switch off either store? That we we don't have to look at the value and try to guess whether it should be on or off. I think the default should be inheritance. |
When is the default declared? Should it be in the configuration when deploying core Feast? Or is it a necessary step that has to be done by the user before registering features (but after deployment)? |
I think it should be done during initial installation. That way the user could theoretically have all data storage abstracted away from them. |
@zhilingc yes it should be a system default. So it should come with the system. Users shouldn't even be creating new stores? I think we made store specs creatable accidentally to be honest, because all the others are. They should probably only ever be created by the person who deploys a feast instance. |
Can we close this issue now? |
Closing, but reopen if I missed something. |
Reopening the issue, core is still checking for presence of warehouse store. I am crafting a PR |
I am still having this error when trying to ingest data for feature having no warehouse store.
Exception:
|
Apparently the ingestion job succeed but all feature row didn't pass validation |
Initial skeleton of unit test for offline server
# This is the 1st commit message: chore: Bump ws from 7.5.6 to 7.5.10 in /ui (feast-dev#4292) # This is the commit message feast-dev#2: Remove metric checks Signed-off-by: Twinkll Sisodia <[email protected]> # This is the commit message feast-dev#3: Draft different md file # This is the commit message feast-dev#4: Refine opentelemetry.md # This is the commit message feast-dev#5: Refine opentelemetry.md # This is the commit message feast-dev#6: Refine opentelemetry.md # This is the commit message feast-dev#7: Refine opentelemetry.md
# This is the 1st commit message: chore: Bump ws from 7.5.6 to 7.5.10 in /ui (feast-dev#4292) # This is the commit message feast-dev#2: Remove metric checks Signed-off-by: Twinkll Sisodia <[email protected]> # This is the commit message feast-dev#3: Draft different md file # This is the commit message feast-dev#4: Refine opentelemetry.md # This is the commit message feast-dev#5: Refine opentelemetry.md # This is the commit message feast-dev#6: Refine opentelemetry.md # This is the commit message feast-dev#7: Refine opentelemetry.md
Registering feature that doesn't have warehouse store will currently return error.
There is a use case that some feature doesn't need warehouse store, so the restriction could be removed.
Additionally, ingestion will need to be updated to do no operation for warehouse storing operation.
The text was updated successfully, but these errors were encountered: