-
Notifications
You must be signed in to change notification settings - Fork 996
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
Local feature server implementation (HTTP endpoint) #1780
Conversation
Signed-off-by: Tsotne Tabidze <tsotne@tecton.ai>
Codecov Report
@@ Coverage Diff @@
## master #1780 +/- ##
==========================================
+ Coverage 84.71% 85.23% +0.51%
==========================================
Files 86 91 +5
Lines 6308 6752 +444
==========================================
+ Hits 5344 5755 +411
- Misses 964 997 +33
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
…id extra structure (e.g. "int64_val") in json Signed-off-by: Tsotne Tabidze <tsotne@tecton.ai>
The request API is now much more compact. Here's an example JSON request: {
"features": [
"driver_hourly_stats:conv_rate",
"driver_hourly_stats:acc_rate",
"driver_hourly_stats:avg_daily_trips"
],
"entities": {
"driver_id": [1001, 1002, 1003]
},
"full_feature_names": true
} I haven't modified the response yet. I'm thinking about making it columnar as well, and making the |
Agreed on the above. @tsotnet do we have an idea of the performance impact of using a columnar representation? Ultimately we'll be converting the representation into row level keys in order to do lookups. Can we do it in a way that has little overhead? |
Signed-off-by: Tsotne Tabidze <tsotne@tecton.ai>
I haven't done benchmarks, but I suspect that the savings from the network overhead (due to the smaller request size) will be more significant than columnar to row level in-memory transformation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: felixwang9817, tsotnet The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: Tsotne Tabidze tsotne@tecton.ai
What this PR does / why we need it: Implements the local HTTP feature consumption server.
RFCs for context:
From one terminal tab we can run
feast serve
:From another tab we can run cURL requests:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?: