@DaBags

Скорость проверки наличия значения в массиве. Что быстрее?

Имеется:
1. Массив в 74 000+ значений
2. Одно значение

Как быстрее пройдет проверка на наличие значения в массиве если:
1. Массив загрузить в базу данных mysql
2. Массив загрузить в файл

Суть вопроса: При регистрации пользователя на сайте нужно проверять доменный адрес его почты (в базе содержатся домены временной/одноразовой почты) и сравнивать со списком. Как обработка пройдет быстрее и с минимум нагрузки?
Может можно как то проверить скорость при обоих вариантах? Не будет ли большой нагрузки на базу данных при переборе значений?

P.S. в будущем планируется добавление значений в массив.
  • Вопрос задан
  • 259 просмотров
Решения вопроса 1
Maksclub
@Maksclub Куратор тега PHP
maksfedorov.ru
в БД быстрее, чем в файле

тк вам все равно грузить (предположим с одной скоростью) данные
но потом чтобы искать и работать — с файлами вам нужно будет придумывать свои структуры данных (деревья, хэш-таблицы), алгоритмы хранения данных и вот это все, что уже есть в БД и сделано очень эффективно

нужно проверять доменный адрес его почты
Не будет ли большой нагрузки на базу данных при переборе значений?

Что за перебор значений? Поиск по значению — как раз НЕ перебор, а использование оптимизированных структур и обходов по ним, с индексом будет моментально, даже быстро будет если не 74тыс+, а 74млн+
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@dimoff66
Кратко о себе: Я есть
Без разницы, главное чтобы значения были в массиве сортированы, а в базе индексированы. Тогда и там и там поиск будет происходить моментально. В массиве он естественно должен быть бинарным.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы