Skip to content

Research: Store search tree for faster access times #51152

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

Closed
hannojg opened this issue Oct 21, 2024 · 4 comments
Closed

Research: Store search tree for faster access times #51152

hannojg opened this issue Oct 21, 2024 · 4 comments

Comments

@hannojg
Copy link
Contributor

hannojg commented Oct 21, 2024

This is a follow up from this PR:

which was created for this issue ticket originally:

This is a follow up ticket where we'd like to do some research on how to maximise efficiency.

The data a user wants to search through in expensify don't change that often that much (new reports are added, or new coworkers are added to a workspace, but overall these are only small additions if that user has 20k personal details - we don't expect those to change that often).
Right now on every app load we construct a new FastSearch instance, which is efficient but still takes some time and resources (it takes longer the bigger the data set of the user).
We could optimise this by storing the backing array buffer of the search tree, and on app start just loading it from storage. We assume that this can be very fast as array buffers don't need to be serialized and are very quick in react-native-mmkv and indexeddb.

With this ticket we want to see, if this approach and added complexity would be worth the performance gain.

@hannojg hannojg changed the title Research: Store search tree for faster access times. Research: Store search tree for faster access times Oct 21, 2024
@melvin-bot melvin-bot bot added the Monthly KSv2 label Oct 24, 2024
@melvin-bot melvin-bot bot closed this as completed Jan 6, 2025
Copy link

melvin-bot bot commented Jan 6, 2025

@hannojg, this Monthly task hasn't been acted upon in 6 weeks; closing.

If you disagree, feel encouraged to reopen it -- but pick your least important issue to close instead.

@hannojg
Copy link
Contributor Author

hannojg commented Jan 7, 2025

@mountiny can you please reopen? The initial PR for changing the search algorithm to a search tree took longer than anticipated. We are going to look into these items next, so its still l a priority!

@mountiny
Copy link
Contributor

mountiny commented Jan 7, 2025

@hannojg can you please make sure to verify we still need these changes (all those reopened) and if the benefits are still worth it. Would be good to bring this up to the quality channel to make sure we are still happy with spending time on this. I feel like there might be higher priority tasks around

@mountiny mountiny reopened this Jan 7, 2025
Copy link

melvin-bot bot commented Mar 24, 2025

@hannojg, this Monthly task hasn't been acted upon in 6 weeks; closing.

If you disagree, feel encouraged to reopen it -- but pick your least important issue to close instead.

@melvin-bot melvin-bot bot closed this as completed Mar 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants