Chefranov
@Chefranov
Новичок

Как работать с большим JSON файлом?

Имеется JSON файл около 600 Мб. Сайт на Wordpress и на нем есть форма по типу поиска которая возвращает искомые данные из JSON.

Вот стоит вопрос, как правильно работать с таким JSON? Или может его конвертировать в что-то другое?

До этого я работал с JSON макс. 20 Мб и разруливал на JS, проблем не было. А тут 600 Мб и просто юзеру все 600Мб же не вывалишь...
  • Вопрос задан
  • 1337 просмотров
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Парсите JSON в базу данных. С подходящими индексами поиск будет очень быстрым.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
trapwalker
@trapwalker
Программист, энтузиаст
Мне приходилось работать с JSON файлами по несколько гигов размером (6 - 7, если не изменяет память). Такой большой файл долго и монолитно грузится, плохо помещается в память в виде объектной модели, в общем так себе идея делать такие файлы, но поставщик данных предоставляет их именно в этом виде и работать надо.
Поэтому я соорудил простенькую утилитку, которая представляет собой своеобразный SAX парсер, но для JSON.
Утилита принимает огромный JSON в виде текстового потока данных, реагирует на открытие и закрытие тегов и выдаёт куски поэлементно в виде последовательности отдельных JSON строк, разделенных абзацами (в соответствии с RFC7464).
С таким потоком небольших однотипных кусков справляться гораздо проще.
Потом, кстати, мне подсказали, что известная и замечательная утилита JQ тоже умеет работать в таком режиме (SAX). Но свою задачу я уже к тому времени решил и в тонкости параметров командной строки для такого режима JQ не углублялся.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы