Minimizing lookup times is a central problem in data management, particularly for large applications. Linear lookup time is bad. Sublinear lookup time is better. Constant lookup is ideal.
Client-side, in the context of a Redux-managed application, the problem becomes a matter of defining the shape of app state.
This article explores two avenues for better organizing such front-end state:
(1) serializing data from the back end, reducing to fully-indexed state shape via utility reducers, and
(2) caching data on the front end, in particular by utilizing the Reselect library in React-Redux mapStateToProps
functions to create or look up "memos" of chunks of derivable data.