Сначала проверьте, нужен ли весь объём клиенту; если нужен, загружайте и храните его централизованно, а для поиска создайте индекс по ID.
Как организовать работу с массивом данных около 100 МБ, который нужен во многих местах React-проекта? Когда выполнять запрос и как быстро искать элемент по уникальному ID?
Сначала проверьте, нужен ли весь объём клиенту; если нужен, загружайте и храните его централизованно, а для поиска создайте индекс по ID.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Сначала проверьте, нужен ли весь объём клиенту; если нужен, загружайте и храните его централизованно, а для поиска создайте индекс по ID.
Map или словарь дают быстрый поиск без повторного линейного прохода. Учитывайте, что 100 МБ JSON в памяти может занимать значительно больше после разбора и индексации. Дедуплицируйте запросы, задайте срок жизни кеша и обновления, тяжёлую обработку вынесите в worker; UI подписывайте на небольшие выборки.