массивы — Что быстрее в JSON или список строк?

Мы хотели бы сохранить поле логических флагов в user объект для правильной системы. Так что, если пользователь может сделать то или иное. Это будет использоваться в большинстве наших действий контроллера.

Чтобы получить хорошую производительность, мы спрашиваем, что быстрее:

  1. Сохраните все флаги с 0 или 1 в массиве в формате JSON и должны только
    спросить массив с ключом, если он возвращает 0 или 1
  2. Сохранить только флаги «1» в виде списка строк, как can_use_a,can_use_b и спросите строку, если она содержит искомый ключ

Как вы думаете? У кого-нибудь есть опыт с этим?
Там будет от 50 до 100 различных правильных флагов.

0

Решение

Массив JSON будет быстрее.

В первом случае базовой структурой данных является хэш-карта, которая позволяет извлекать элемент за постоянное время амортизации.

Во втором случае должен быть выполнен последовательный поиск, чтобы определить, есть ли значение в списке, который выполняется за время O (n).

Однако массив json использует больше памяти.

0

Другие решения

Я думаю, что вам нужно использовать true или false вместо 0 и 1.
Гораздо проще использовать логические значения, и они менее подвержены ошибкам. И еще одно преимущество использования логических значений заключается в том, что вы также можете проверить их тип.

-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector