Перейти к содержанию

Анализатор размера JSON

Посмотрите, какие именно ключи и ветки делают JSON документ большим.

Входные данные
Выходные данные

Анализатор размера JSON

Вставьте JSON документ, и этот инструмент разберет его по веткам, показывая ровно сколько байтов каждый ключ и значение добавляет к общему размеру. Используйте его, чтобы найти, что раздувает API ответ, файл конфигурации или сохраненный блоб состояния перед тем, как его обрезать — отладочное поле, оставленное в production, картинку в формате base64, которая попала в payload, или список, который вырос намного больше того, что клиент на самом деле нуждается.

Опция глубины контролирует сколько уровней разворачивается перед тем, как ветка коллапсирует в одну сводную строку, что держит глубоко вложенный документ читаемым. Включите проценты чтобы увидеть долю каждой строки от общего размера с первого взгляда, и отсортируйте по размеру чтобы поставить самые тяжелые ветки в начало вместо чтения в порядке документа. Группируйте элементы массива чтобы трактовать список как одну строку, или отключите это чтобы увидеть каждый индекс разбитым отдельно — полезно когда один элемент в длинном массиве необычайно большой. Отдельный подсчет имен ключей добавляет собственную quoted метку свойства к его стоимости в байтах, что более значимо чем кажется когда документ повторяет один и тот же многословный ключ тысячи раз в массиве.

Включение флагов повторяющихся значений отмечает строки и числа которые встречаются больше одного раза где угодно в документе — сильный сигнал что данные могут быть нормализованы или использованы как ссылка вместо дублирования. Выберите представление дерева для читаемого контура или таблицу для плоского, сортируемого списка путей, типов, размеров и количеств. Размеры измеряются в UTF-8 байтах, не символах, поэтому текст с ударениями или emoji размеры так как он фактически хранится и передается.

Все работает локально в вашем браузере — JSON который вы вставляете, который может включать приватные данные API или внутреннюю конфигурацию, никогда не загружается никуда. Скопируйте отчет, загрузите его как .txt файл, или отправьте его прямо на вход другого инструмента чтобы продолжить работу с результатом.

FAQ

Почему размеры веток не складываются ровно в общий размер?
Каждая строка показывает размер в байтах собственной JSON сериализации этого значения. Структурные символы, которые разделяются между siblings, такие как запятые и скобки, подсчитываются один раз в родителе вместо того, чтобы быть разделенными между каждым дочерним элементом, поэтому общий размер отражает реальный размер документа даже хотя отдельные строки не складываются в него.
Что считается "повторяющимся значением"?
Любая строка или число, которая появляется больше одного раза где-то в документе, независимо от того под какой ключ она находится. Логические значения и null исключены, так как они повторяются по природе и отмечали бы почти каждый документ.
Почему размеры измеряются в байтах вместо символов?
Байты отражают то, что фактически хранится или отправляется по сети. Символ с ударением или emoji может занимать два-четыре байта в UTF-8, поэтому подсчет символов недооценивал бы реальный размер текста, который не на ASCII.
Могу ли я проанализировать очень большой JSON файл?
Да, хотя экстремально большие или глубоко вложенные документы могут занять момент времени для обработки так как все работает в вашем браузере вместо сервера.
Загружается ли мой JSON где-нибудь?
Нет. Анализ работает полностью в вашем браузере — ваш документ, включая любые приватные данные которые он содержит, никогда не покидает ваше устройство.