Долго выполняется запрос

Falc

Новичок
Не так.
Да пример из-мана дествительно соответствует тому когда индекс не используется, но я имею ввиду именно обьяснение почему он не используеться. А не используеться он именно по тому что если он будет использоваться он будет работать "намного" медленее. Так вот если использование индекса требует от MySQL прохода более чем по 29% строк в данной таблицые, то индекс использоваться будет, но вот будет ли от выигрыш уже весьма спорный вопрос и зависит от того структуры таблицы и данных находящихся в них.
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: tony2001
не мог бы ты привести пример ситуаций, в которых индекс, созданный в таблице MyISAM, будет замедлять выборки?
для тех, кто не понял: _замедлять выборку_. не "не использоваться", не "не ускорять", а _замедлять выборку_.
я, конечно, не знаю может MyISAM --- волшебный тип таблицы, но.

Пусть таблица занимает на диске 1 блок, создаём индекс, который тоже будет занимать 1 блок.

При полном просмотре прочитаем 1 блок, при поиске по индексу --- 2 блока (индекс + таблица). замедление в 2 раза.

если оптимизатор говённый, то аналогичный результат можно поиметь и в менее вырожденном случае.
 

tony2001

TeaM PHPClub
Sad Spirit
ага, спасибо.
это я и хотел услышать.
естественно, этот пример никакого отношение к теме не имеет, но это ответ на мой вопрос, сэнкс.
 

Altex

Новичок
Автор оригинала: Falc
>> Можно поподродбее, пожалуйста?

Делаем табличку пользователей. Водим распознование пользователей, например по кукам или по IP, можно комбинировать.
Когда новый пользователь приходит на сайт добавляем его в эту таблицу.

Еще делаем таблицу сесий, когда пользователь заходит для него заводится сесия, и которая ссылаеться на пользователя и на посещаемый им сайт.
Сами же хиты ссылаются на сессии и страницы.
Про пользователей всё очевидно, но все равно спасибо за труд. А вот про сессии уже интереснее, и я не совсем понял в чем "+". В том что вместо "пользователь" и "сайт" есть "сессия" ? Тоесть вместо 2-х чисел - одно? Иль опять я не так понял?
 

Falc

Новичок
>>В том что вместо "пользователь" и "сайт" есть "сессия" ?
Примерно, так.
Но в сесии можно еще например хранить откуда человек пришел (refer_id), глубину пути по сайту, ссылку на путь по сайту и прочее.
 
Сверху