Как оптимизировать полнотекстовый поиск? - PullRequest
1 голос
/ 03 июля 2011

Я знаю, что по этому вопросу уже есть много вопросов, но мне нужна была более конкретная информация.Итак, вот что:

  1. В идеале, какой должна быть максимальная длина символов, при которой полнотекстовый поиск может быть выполнен с использованием минимальных ресурсов (ЦП, память)?
  2. Когда мне следует принять решениемежду использованием LIKE %$str% и полнотекстовым поиском?
  3. Важно ли реализовать обе версии LIKE %$str% и полнотекстовый поиск и использовать оптимальную динамическую?

1 Ответ

2 голосов
/ 03 июля 2011
  1. Насколько я знаю, это зависит от количества слов, а не символов.Чем меньше, тем быстрее будет MySQL.Но не позволяйте этому мешать вам.
  2. Никогда не используйте LIKE, если вы можете использовать полнотекстовый поиск.За исключением, может быть, запросов, которые вы запускаете вручную время от времени и не хотите замедлять вставки в этой таблице.Вы знаете скорость выбора против скорости вставки в индексах, верно?
  3. Всегда используйте FT (полнотекстовый) поиск в запросах, которые вы не запускаете вручную.LIKE медленно и становится действительно медленнее, когда количество строк увеличивается.Это потому, что движок mysql должен смотреть в КАЖДУЮ строку, чтобы ответить на ваш запрос.И FT ведет индекс и точно знает, где искать.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...