Ищет массив PHP быстрее, чем ищут/получают от MySQL

Я отговорил бы от изменения поведения по умолчанию ключа. Я делаю как можно больше, не касаясь мыши, поэтому если Вы заставите мою клавишу Tab не переместиться в следующее поле на форме, то я буду очень ухудшен.

сочетание клавиш А могло быть полезным однако, особенно с большими блоками кода и вложением. Shift-TAB является плохой опцией, потому что это обычно берет меня к предыдущему полю на форме. Возможно, новая кнопка на редакторе WMD для вставки ВКЛАДКИ кода, с сочетанием клавиш, была бы возможна?

6
задан Tilo Mitra 10 November 2009 в 05:56
поделиться

7 ответов

Лучший способ ответить на этот вопрос - выполнить тест.

5
ответ дан 17 December 2019 в 00:11
поделиться

Следует иметь в виду одну вещь: если ваш поиск требует интенсивного использования ЦП в базе данных, возможно, стоит выполнить его в PHP, даже если он не такой быстрый. Обычно при масштабировании проще добавлять веб-серверы, чем серверы баз данных.

1
ответ дан 17 December 2019 в 00:11
поделиться

Хотя вы должны просто попробовать это самостоятельно, я собираюсь предположить, что существует правильный индекс, и сделать вывод, что БД может сделать это быстрее, чем PHP из-за строится для этого.

Однако это может быть связано с задержками в сети, скоростью синтаксического анализа SQL и PHP или загрузкой БД и процентом использования памяти.

1
ответ дан 17 December 2019 в 00:11
поделиться

Протестируйте - профилирование чего-то столь же простого, как это, должно быть тривиальным.

Также помните, что базы данных предназначены для обработки именно такого рода задач, поэтому они, естественно, будут хороши в этом . Даже наивный бинарный поиск будет иметь только 17 сравнений для этого, так что 25 тысяч элементов - это не много. Настоящая проблема заключается в сортировке, но за последние 60 с лишним лет она была решена до смерти.

0
ответ дан 17 December 2019 в 00:11
поделиться

Это зависит от обстоятельств. В mysql вы можете использовать индексацию, которая увеличит скорость, но с php вам не нужно отправлять информацию через сеть (если база данных mysql на другом сервере).

0
ответ дан 17 December 2019 в 00:11
поделиться

Сначала я подумал, что поиск по массивам быстрее. Но, с другой стороны, это действительно зависит от нескольких факторов:

  1. Как устроена ваша таблица базы данных (правильно ли она использует индексы и т. Д.)
  2. Как строится ваш запрос
  3. Базы данных обычно довольно оптимизированы для такого поиска .
  4. Какой тип поиска вы выполняете в массиве? Вы можете выполнить несколько типов поиска. Самый медленный - это прямой поиск, при котором вы просматриваете каждую строку для проверки значения, более быстрый подход - это двоичный поиск.

Я предположил, что вы сравниваете оператор select, выполняемый непосредственно в базе данных, и поиск по массиву в php. Не

0
ответ дан 17 December 2019 в 00:11
поделиться

MySQL создан для эффективной сортировки и поиска в больших объемах данных, таких как эта. Это особенно верно, когда вы ищете ключ, поскольку MySQL индексирует первичные ключи в таблице.

0
ответ дан 17 December 2019 в 00:11
поделиться
Другие вопросы по тегам:

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