Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   MySQL InnoDB - оптимизация LIKE (https://forum.antichat.xyz/showthread.php?t=71070)

GreenBear 21.05.2008 19:54

MySQL InnoDB - оптимизация LIKE
 
В общем есть база - около 4гб, ~10млн рядов.
выборка идет что-то типа t1 like 'text' AND t2 like 'text2' AND t3 like 'text3'
. если из кеша - то моментально, однако новый поиск - 5 минут... это совсем не вариант.

в общем -то опыта с большими базами нету особого... вообще справляется ли мускул с таким объемом?

groundhog 21.05.2008 20:07

Могу сказать, что определённо справляется, но это зависит от многих факторов... От типов полей, от наличия индексов, от того под каким конфигом крутится мускуль... Как пример - возьми гугл... Там кластер из мускульных серверов, и всё работает чики-пуки.

Егорыч+++ 21.05.2008 22:50

Составной индекс по трем полям t1 t2 t3 т е индекс по тем полям по которым поиск... если ты делаешь поиск типа t1 like 'text' AND t2 like 'text2' AND t3 like 'text3' или t1 like 'text%' AND t2 like 'text2%' AND t3 like 'text3%' . А если t1 like '%text%' AND t2 like '%text2%' AND t3 like '%text3%' , тормоз будет по любому, тут надо реализовывать полнотекстный поиск. Использовать системы для индексации типа сфинкс

KSURi 21.05.2008 23:46

> тут надо реализовывать полнотекстный поиск
Эм.. FULLTEXT поддерживается только на MyISAM вроде

gibson 22.05.2008 01:43

2 GreenBear может поможет, интересная статья
http://habrahabr.ru/blog/mysql/35837.html


Время: 21:06