Оптимизация поиска.

crocodile2u

http://vbolshov.org.ru
Оптимизация поиска.

Итак, имеется старый сайт с поиском по каталогу. По определенным причинам, в поиске используются запросы вида ... LIKE %smth% ...

Недавно произошло следующее:

в одну из таблиц каталога администрация сайта забила ок. 500 тыс. записей. Поисковые запросы стали нехило тормозить и пользователь MySQL был отключен хостинг-провайдером.

Собсно, вопросы:

1) Не слишком ли это вообще большой объем данных для того чтобы мускль нормально с ним работал? (подозреваю, конечно, что с этим все в порядке, но все-таки)

2) Сможет ли помочь введение полнотекстовых индексов? (И кстати, можно ли сделать полнотекстовый поиск по части слова?)

3) Как наиболее оптимально можно организовать поиск (пока что существует требование искать по части слова, а также есть следующая "фишка": при введении пользователем таких символов как "-", " " должны найтись все строки, содержащие или НЕ содержащие эти символы на тех местах, в кот. их ввел пользователь, то есть, если поисковая строка = "DF-X 123", нужно найти все строки : "DF-X 123", "DFX123", "DF-X123", "DFX 123").

Понимаю, что третий вопрос слишком наглый, и, возможно, я его недостаточно внятно объяснил.

Расскажу, как это работает сейчас:
из поисковой строки вырезаются эти самые символы, получаем набор искомых строк и составляем запрос типа: field LIKE '%stroka1%' OR field LIKE '%stroka2%' OR field LIKE '%stroka3%' и т. д.

Буду благодарен за любую помощь: информацию или какие-то конкретные предложения, или ... в общем, любую помощь.
 

crocodile2u

http://vbolshov.org.ru
Спасибо за ссылки!
yaniks, по твоей я уже сходил вчера. Мой вопрос насчет fulltext-search был вызван тем, что люди, которые с этим уже разбирались, думаю, способны дать простой ответ на простой вопрос :). Сам же я, конечно, буду сегодня все это читать подробно. Еще раз спасибо.
 

yaniks

новичок
> yaniks, по твоей я уже сходил вчера

если, по ссылке ходил и все прочитал, то вообще дополнительных вопросов возникнуть не должно было .. ))
 

crocodile2u

http://vbolshov.org.ru
Вчера не было времени там задержаться. Весь сыр-бор возник уже под занавес рабочего дня, вот я и подумал, может кто буквально парой слов поможет... Всем спасибо, разбираюсь потихоньку.
 
Сверху