Максимальный рекомендуемый размер внешнего объекта JSON в JavaScript - PullRequest
11 голосов
/ 28 марта 2012

У меня огромное количество данных для сортировки и запроса, и я не могу полагаться на интернет-соединение.В идеале я хотел бы сохранить весь свой набор данных в виде объекта JSON (в настоящее время около 17 МБ, но может стать намного больше) и использовать для запроса что-то вроде jLinq или SQLike, а не выводить множество небольших файлов.

Мне интересно узнать, какой размер файла рекомендуется использовать для внешнего вызова getJSON с использованием JavaScript (в частности, jQuery).1 МБ, 20 МБ, 100 МБ?Информация на эту тему скудна.Информация о запросах больших наборов данных на стороне клиента скудна.

Любая информация по этому вопросу будет принята с благодарностью.

1 Ответ

11 голосов
/ 31 марта 2012

Самой большой проблемой, вероятно, будет время загрузки, поскольку ему придется преобразовать его из строки JSON в реальный объект JavaScript.Другая большая проблема будет в том, что весь набор данных будет в памяти для страницы.Я не знаком ни с одной страницей, использующей 100 МБ + данных.

Я сделал jsfiddle для проверки производительности загрузки больших строк JSON .Похоже, что для анализа строки JSON размером ~ 20 МБ (на машине с Core i7) требуется ~ 500 мс, а в Chrome она использует на 80 МБ больше памяти, чем если бы строка JSON в основном была пустой.Таким образом, 100 МБ может занять несколько секунд для загрузки и использования 400 МБ + памяти.

Это не решит ни одну из этих проблем, но рассматривали ли вы вопрос об использовании SQL.js ?Это реализация SQLite на JavaScript.Это должно упростить запрос этих данных.

...