-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Extend feature set and/or feature metadata #463
Comments
We would like to integrate Feast with a Data Governance Tool (one of these). It would be helpful to have additional metadata other than "description". E.g.
How about just adding a |
Hi @Yanson, thanks for the input! We'd love to support that use case, in fact @ches and some of our other users have also asked for this. In those discussions the idea was brought up that we could add a label/annotation/tags field (string map) to either a feature set or a feature. That would allow users to add any number of properties to their spec. That sounds very similar to what you are describing above. The challenge there is not so much in capturing the information, but more in how we expose it. In your use case, were you looking for something like this (and perhaps something similar on a UI based search):
or how would you end up consuming the meta/labels/annotations? |
Our basic needs would be that you do While the ultimate goal is to use the Data Governance Tool for discovery, I have a feeling it will be rather heavyweight so a Feast UI (which itself would require the "search" functionality you describe) would probably provide immediate value to Data Scientists. One very important reason for using a Feature Store is to share and discover Features, but I don't think search should be the ultimate goal of the Feast project itself. Keep it simple (API only) and create another "app" that can act as a UI, search, rating, discussion tool etc which users can either deploy too or integrate something else as preferred. |
Yip, this is what we had in mind as well. The question is just if the |
Honestly, don't have much of an opinion. I wouldn't want to see the description "misused" though, if it's the only field (think; custom CSV, JSON content in there).
Not in a desperate hurry. We can contribute if it's that urgent for us. |
Personally, I would suggest that they should be separate. If you don't provide people the option to add metadata, but only a description, then I expect people will abuse it. |
I was thinking that we could start with the reverse. Metadata first, and add the description field later. The description field is only valuable above metadata in the case where we want to encourage users to set that specific key, and we perhaps want to print out the contents on a user interface. There is no use case for it right now, but it seems we do have one for metadata. |
Yeah, that makes sense to me. Thanks! |
I'll try to chime in here shortly since, yes, this topic comes up over and over for us. I will go ahead and cross-reference #363 as a thread that I wanted to find to refer back to on this. A possible elephant in the room too… This issue title is explicitly "feature set metadata" and we may want to keep it limited to that, but we've touched on some potential use cases for feature-level metadata as well (governance tags and descriptions for humans are both relevant to me, at feature level also). Clearly the complexity of registration might explode with that, but perhaps it's essential complexity, and could be optional. Especially if feature sets might increasingly be downplayed (for similar reasons that consumers don't want to care about feature sets, they are probably less interesting in a registry browsing UI than entities, features, and projects), perhaps it'd be worth bringing feature-level into scope from the outset of metadata discussion. |
Agreed on the title being a bit misleading, I will update it to include both in scope. I think the feature level discussion is much more relevant right now.
I agree on downplaying feature sets here. It seems like we can immediately add value by providing a means of capturing metadata at the feature level. I want to try and gauge the appetite for including feature level tags/meta in 0.5. @ches @tfurmston @Yanson do we need to spec this out at a higher level with discovery and exploration, or are we comfortable with the addition of a field to feature specs and a means of configuring it, and leaving the higher level APIs to future versions? So potentially a proposal could be as above
with the Python SDK having a In terms of names, I am open to suggestions. The following have been proposed
My preference is |
I would rule-out Kubernetes has
Regardless, I am happy with |
Completely agree that feature level makes sense. As an end user, that is likely how I would expect to use it. From my point of view, I don't think we are at a point of a more concrete set of requirements, so happy to leave that for a later point. |
Unless there are any objections, we will implement Please vote with a thumbs down if you want to discuss this further. |
This issue tracks the addition of new fields to the current feature set specification that allow a user to add metadata to either the feature set or features. These fields are optional and are intended to provide users with the flexibility to include feature level or feature level information.
The current proposal is to only add a single string field called
description
toFeatureSpec
The text was updated successfully, but these errors were encountered: