Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
03.04.2002, 09:06
|
|||
---|---|---|---|
|
|||
Создание индекса для БД (MySQL LIKE уже не выдерживает) |
|||
#18+
Здравствуйте, здравствуйте, уважаемые зрители! Вот такая ПРОБЛЕМА... Есть БД MySQL (несколько таблиц), есть скрипты на Perl, выполняющие к ней через Perl DBI предустановленные запросы типа SELECT порой с использованием LIKE... Так вот... некоторые таблицы так разрослись (как по числу записей, так и по размерам каждой из них, например, одна из записей весит больше 1 Мб), что MySQL с запросами типа LIKE к ним порой уже не справляется: выдает число найденных записей, но не их сами, а в error_log при этом пишется, что, дескать, у сервака (а он у меня виртуальный), не хватает памяти для обработки таких запросов, а народ всё валит и валит, а сервак всё скрипит и скрипит, а хостеры всё шипят и шипят... В общем, пришёл я к мысли, что неплохо было бы индексом обзавестись. Только вот не знаю, каким. MySQL-ным? Но будет ли при этом поиск по словоформам? - Похоже нет (кое-что на эту тему читал в форуме), то есть если чел ввёл слово "человек", то "люди" он уже не найдет. Слыхал и про другое решение типа универсального индекса с использованием морфомодуля без использования LIKE, но какой морфомодуль выбрать, и как его присобачить? Как вообще всё это делается? Остаётся только представлять... в фантазиях Оченно прошу знающих людей объяснить на пальцах, как сие сотворить, и с Божьей помощью в путь... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.07.2003, 02:56
|
|||
---|---|---|---|
|
|||
Создание индекса для БД (MySQL LIKE уже не выдерживает) |
|||
#18+
Есть такая штука как WHERE MATCH(...) AGAINST (...) - попробуйте. Но надо делать полнотекстовый индекс (который у меня не получилось сделать более 255 символов) и в некоторых случаях эта система не очень хорошо работает (если найдено менее трех результатов вообще ничего не выдаёт!!!). http://www.mysql.com/doc/en/Fulltext_Search.html Обещают в новой версии MySQL сделать много улучшений в том числе словоформы. Но когда это будет... Алтернативы есть, но я пока не разобрался. Посмотрите http://swish-e.org/ http://www.aspseek.org/ Если что получится - пишите сюда. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=47&mobile=1&tid=1855882]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
43ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 132ms |
0 / 0 |