I am facing the challenge of loading thousands of user data records from a REST service, specifically user contacts in a contact-management system, and conducting a search on them. Unfortunately, the existing search functionality provided by the REST service does not meet my requirements, leaving me to manually load the data and perform searches myself. Due to the time-consuming nature of loading records, I aim to do it only once per user.
Server-side caching is not feasible as my client's apps operate across multiple servers without the ability to predict the server for each request. This leads me to consider caching the data on the browser side and conducting searches there instead. However, for users with extensive contact lists, this would involve storing megabytes of data as Javascript in browser memory. What potential challenges may arise from storing such large amounts of data in browser memory?