Title: Add support for concurrent operations on the registry · Issue #2176 · feast-dev/feast · GitHub
Open Graph Title: Add support for concurrent operations on the registry · Issue #2176 · feast-dev/feast
X Title: Add support for concurrent operations on the registry · Issue #2176 · feast-dev/feast
Description: Is your feature request related to a problem? Please describe. Current Feast implementation for reading/modifying Registry does not allow for concurrent modifications of the Registry by different processes (or server instances), which wi...
Open Graph Description: Is your feature request related to a problem? Please describe. Current Feast implementation for reading/modifying Registry does not allow for concurrent modifications of the Registry by different p...
X Description: Is your feature request related to a problem? Please describe. Current Feast implementation for reading/modifying Registry does not allow for concurrent modifications of the Registry by different p...
Opengraph URL: https://github.com/feast-dev/feast/issues/2176
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Add support for concurrent operations on the registry","articleBody":"**Is your feature request related to a problem? Please describe.**\r\nCurrent Feast implementation for reading/modifying Registry does not allow for concurrent modifications of the Registry by different processes (or server instances), which will be required in production scenarios to independently scale creation and materialization of feature views. Also, there is no mention of this constraint in the documentation. This severely limits scalability.\r\n\r\n**Describe the solution you'd like**\r\n\r\n1. Ideally, I would suggest that the data currently stored in the registry be stored in a central relational database (or document storage) instead, so that concurrent modification, reading and locking can happen on individual cells, instead of on the entire repository.\r\n2. If the above is not feasible, please provide a way to lock the registry while a modification is happening so that the other processes are able to wait for it to complete.\r\n\r\n**Describe alternatives you've considered**\r\nAt the suggestion of a Feast Dev, I have considered implementing a locking mechanism, so that different processes can check for an active lock before modifying the registry. But this would put a severe constraint on the scalability, since no parallel actions requiring registry modifications will be allowed.\r\n\r\n**Additional context**\r\nHere is a repo I created to reproduce the concurrency issue when using 2 processes to separate out the materialization from the other create/update requests: https://github.com/DetourToNirvana/mw-feast-samples.\r\nOriginal Slack post: https://tectonfeast.slack.com/archives/C028V92F1R6/p1640001495050700\r\n","author":{"url":"https://github.com/DetourToNirvana","@type":"Person","name":"DetourToNirvana"},"datePublished":"2021-12-30T13:18:16.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":6},"url":"https://github.com/2176/feast/issues/2176"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:636f4bc0-c8b4-3560-2da2-d80e429b9a96 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | CD6C:3360B7:EC6522:14FEF40:6978CE97 |
| html-safe-nonce | e5771d8fd98420f6348eb92ffd7569a04e89819671b7b269eea87bc642c38c1b |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDRDZDOjMzNjBCNzpFQzY1MjI6MTRGRUY0MDo2OTc4Q0U5NyIsInZpc2l0b3JfaWQiOiIzMjE5MDcxMzQxNTEyMTUwNjc5IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | cf7215a28bf6e49d50ef7dfc5e8d6e4441a3069a7f190cee444e52b95733f401 |
| hovercard-subject-tag | issue:1091100594 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/feast-dev/feast/2176/issue_layout |
| twitter:image | https://opengraph.githubassets.com/97d2f4102afb364e55459f1a06473796b97650ef7ec63dad8aabf124e5d56cce/feast-dev/feast/issues/2176 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/97d2f4102afb364e55459f1a06473796b97650ef7ec63dad8aabf124e5d56cce/feast-dev/feast/issues/2176 |
| og:image:alt | Is your feature request related to a problem? Please describe. Current Feast implementation for reading/modifying Registry does not allow for concurrent modifications of the Registry by different p... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | DetourToNirvana |
| hostname | github.com |
| expected-hostname | github.com |
| None | 8a71ca1f7ab5436216e1df86f398ef7a51ed3152c90e3f7332fc70cf97fcb9d6 |
| turbo-cache-control | no-preview |
| go-import | github.com/feast-dev/feast git https://github.com/feast-dev/feast.git |
| octolytics-dimension-user_id | 57027613 |
| octolytics-dimension-user_login | feast-dev |
| octolytics-dimension-repository_id | 161133770 |
| octolytics-dimension-repository_nwo | feast-dev/feast |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 161133770 |
| octolytics-dimension-repository_network_root_nwo | feast-dev/feast |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | eaed570eead52a9920afef75dc3eb6d826fdc5ef |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width