-
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
docs: Codebase structure #3050
docs: Codebase structure #3050
Conversation
082778d
to
31b1d47
Compare
Codecov Report
@@ Coverage Diff @@
## master #3050 +/- ##
==========================================
+ Coverage 67.44% 75.72% +8.27%
==========================================
Files 169 203 +34
Lines 14936 16856 +1920
==========================================
+ Hits 10074 12764 +2690
+ Misses 4862 4092 -770
Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
31b1d47
to
2ffebcb
Compare
docs/reference/codebase-structure.md
Outdated
The majority of Feast logic lives in these Python files: | ||
* The core Feast objects ([entities](../getting-started/concepts/entity.md), [feature views](../getting-started/concepts/feature-view.md), [data sources](../getting-started/concepts/dataset.md), etc.) are defined in their respective Python files, such as `entity.py`, `feature_view.py`, and `data_source.py`. | ||
* The feature store object is defined in `feature_store.py` and the associated configuration objects are defined in `repo_config.py`. | ||
* The registry is defined in `registry.py`. |
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.
nit, the regsitry interface (BaseRegistry
) and the file based implementation (Regsitry
) lives here. The SQL regisry is in infra/regsitry_stores (which is probably not the best name or place.
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.
good catch
docs/reference/codebase-structure.md
Outdated
* The Python feature server is defined in `feature_server.py`. | ||
|
||
There are also several important submodules: | ||
* `infra/` contains all the infrastructure components, such as offline and online stores. |
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.
And materialization engines
docs/reference/codebase-structure.md
Outdated
There are also several important submodules: | ||
* `infra/` contains all the infrastructure components, such as offline and online stores. | ||
* `dqm/` covers data quality monitoring. | ||
* `diff/` covers the logic for creating plans. |
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.
What's a plan?
docs/reference/codebase-structure.md
Outdated
* `ui/` contains the embedded Web UI, to be launched on the `feast ui` command. | ||
|
||
Of these submodules, `infra/` is the most important. | ||
It contains the interfaces for the [provider](getting-started/architecture-and-components/provider.md), [offline store](getting-started/architecture-and-components/offline-store.md), [online store](getting-started/architecture-and-components/online-store.md), and [batch materialization engine](getting-started/architecture-and-components/batch-materialization-engine.md), as well as all of their individual implementations. |
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.
Also registry stores.
docs/reference/codebase-structure.md
Outdated
$ cd sdk/python/feast | ||
$ tree -L 1 | ||
. | ||
├── __init__.py |
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.
this one might be a bit excessive :P
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.
sad I tried
docs/reference/codebase-structure.md
Outdated
There are also several important submodules: | ||
* `infra/` contains all the infrastructure components, such as offline and online stores. | ||
* `dqm/` covers data quality monitoring. | ||
* `diff/` covers the logic for creating plans. |
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.
plans is ambiguous. explain that?
docs/reference/codebase-structure.md
Outdated
* The registry is defined in `registry.py`. | ||
* The CLI and other core feature store logic are defined in `cli.py` and `repo_operations.py`. | ||
* The type system that is used to manage conversion between Feast types and external typing systems is managed in `type_map.py`. | ||
* The Python feature server is defined in `feature_server.py`. |
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.
maybe call out that this is what is launched with feast serve?
docs/reference/codebase-structure.md
Outdated
It contains the interfaces for the [provider](getting-started/architecture-and-components/provider.md), [offline store](getting-started/architecture-and-components/offline-store.md), [online store](getting-started/architecture-and-components/online-store.md), and [batch materialization engine](getting-started/architecture-and-components/batch-materialization-engine.md), as well as all of their individual implementations. | ||
|
||
``` | ||
$ tree -L 1 infra |
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.
maybe instead: tree --dirsfirst -L 1 -C infra
so directories show up first?
docs/reference/codebase-structure.md
Outdated
|
||
The majority of Feast logic lives in these Python files: | ||
* The core Feast objects ([entities](../getting-started/concepts/entity.md), [feature views](../getting-started/concepts/feature-view.md), [data sources](../getting-started/concepts/dataset.md), etc.) are defined in their respective Python files, such as `entity.py`, `feature_view.py`, and `data_source.py`. | ||
* The feature store object is defined in `feature_store.py` and the associated configuration objects are defined in `repo_config.py`. |
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.
map this to what users know about? aka this is what feature_store.yaml
configuration maps to in memory
10b8f94
to
34f91cc
Compare
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
Signed-off-by: Felix Wang <wangfelix98@gmail.com>
Signed-off-by: Felix Wang <wangfelix98@gmail.com>
34f91cc
to
c2ab2a6
Compare
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: adchia, felixwang9817 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 |
* Codebase structure docs Signed-off-by: Felix Wang <wangfelix98@gmail.com> * Address code review Signed-off-by: Felix Wang <wangfelix98@gmail.com> Signed-off-by: Felix Wang <wangfelix98@gmail.com> Signed-off-by: Francisco Javier Arceo <arceofrancisco@gmail.com>
* Codebase structure docs Signed-off-by: Felix Wang <wangfelix98@gmail.com> * Address code review Signed-off-by: Felix Wang <wangfelix98@gmail.com> Signed-off-by: Felix Wang <wangfelix98@gmail.com>
* Codebase structure docs Signed-off-by: Felix Wang <wangfelix98@gmail.com> * Address code review Signed-off-by: Felix Wang <wangfelix98@gmail.com> Signed-off-by: Felix Wang <wangfelix98@gmail.com>
Signed-off-by: Felix Wang wangfelix98@gmail.com
What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #