Adding benchmarks for different connectors and refactoring for table states/feature frame/transforms #39
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adding a benchmark test to get the latencies and throughputs for different connector modes (in memory dictionary, redis, sqlite). Current benchmarking test is running on a single ray actor with different test sizes, suggesting in memory dictionary to be optimal. Requires more robust testing.
Modified the interface for feature frame and transform objects. Feature frame should be responsible for maintaining the different resources it holds (transform object, table state, and scheduler). All query operations called on the transform_object will under the hood query the feature frame that the transform_object belongs to, which will query the table_state object it holds.
Note: This implementation currently assumes a 1:1 mapping of transform objects and feature frame. (For simplicity, we're currently not considering more complex transforms like a join or anything that involves more than one upstream parent)