Оптимизация автозаполнения SQL-запроса FULLTEXT - PullRequest
0 голосов
/ 11 сентября 2011

У меня есть следующий запрос, который используется для автоматического заполнения поля поиска:

  SELECT *, MATCH (screen_name, name) AGAINST ('+query*' IN BOOLEAN MODE) AS SCORE 
  FROM users 
  WHERE MATCH (screen_name, name) AGAINST ('+query*' IN BOOLEAN MODE) 
  ORDER BY SCORE DESC LIMIT 3

У меня также есть индекс FULL TEXT для имени_экранов и имени (вместе).Когда этот стол был относительно небольшим (50 КБ), это работало замечательно.Теперь размер таблицы составляет ~ 200 КБ, и для завершения каждого запроса требуются секунды (!).Я использую MySql MyISAM.Это разумно?Какие направления я мог бы проверить, чтобы улучшить это, так как оно наверняка не удовлетворяет требованиям автозаполнения запроса.

1 Ответ

0 голосов
/ 11 сентября 2011

MYSQL Сопоставление действительно медленное, вам следует искать альтернативы, такие как Sphinx Search Server .

...