
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
08.06.2006, 09:22
|
|||
|---|---|---|---|
|
|||
Выбрать БД (веб-сайт, миллионы записей), чтобы поиск подстрок шёл быстро |
|||
|
#18+
Сейчас сайт работает на MySQL 4.1.x Активно используется поиск по таблице, в которой сейчас под 3 миллиона записей (дальше будет больше ещё на несколько миллионов). Собственно поиск идёт по трём строковым полям (длиной не более 100 символов каждое). Для ускорения использую индекс FULLTEXT - на эти три поля. Всё бы ничего, но ищет он только слова целиком. Чтобы найти что-то по части слова, приходится использовать оператор LIKE, и такой поиск растягивается порой на десятки секунд (слова целиком по индексу FULLTEXT находит практически моментально). Требуется ускорить поиск по частям слова (по вхождению). Апгрейд железа, думаю, ну сократит с 20 секунд до 10-5, но это не то. Должно быть какое-то чисто софтовое решение, типа того же FULLTEXT, но чтобы искал по вхождению. В каких базах такое есть? Желательно бесплатных, и легких для прикрутки к PHP-сайту. Может, уже в 5-й версии MySQL такое есть? Может, в PostgreSQL? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.06.2006, 10:21
|
|||
|---|---|---|---|
|
|||
Выбрать БД (веб-сайт, миллионы записей), чтобы поиск подстрок шёл быстро |
|||
|
#18+
Буквально 3мя топиками ниже есть обсуждение подобной проблемы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=35&mobile=1&tid=1553573]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
73ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 227ms |
| total: | 397ms |

| 0 / 0 |
