Сравнение алгоритмов индексирования для поиска

Silent

Новичок
Как я наглядно показал, второй способ имеет практические ограничения, которые никакие руки не обойдут. Другое дело, что для большинства сайтов эти ограничения не очень важны, но все таки умение на клочке бумаги оценить практические пределы того или иного подхода никому не помешает (по крайней мере мне так кажется). Про тот спор, какие базы используют большие поисковые системы я помню, но тогда у меня не было времени подробно объяснить, почему же реляционные базы бесполезны для созданя поисковых систем. Если нет возражений по существу, предлагаю закончить эту тему, потому что вопрос о том, являются ли эти ограничения принципиальными или нет зависит от точки зрения, которая у каждого своя.
 

Falc

Новичок
Silent
>>Как я наглядно показал, второй способ имеет практические ограничения, которые никакие руки не обойдут.

Да нету во втором методе таких ограничений, по диску прыгать не придется, только по индексам пробежатся, а индексы обычно лежат в буфере.
 

Silent

Новичок
Ты может ГАРАНТИРОВАТЬ, что нужный индекс будет лежать в памяти? Если нет, то аргумент не принимается. Я понимаю, что правильная настройка базы может значительно ускорить выборку, но память имеет тенденцию рано или поздно заканчиваться.

И второе, после того, как ты прошелся по индексу, нужно достать даные, чтобы найти их пересечение (для многословных запросов). А потом еще релевантность подсчитать. А потом еще отсортировать. Одних индексов для этих действий будет недостаточно.
 

Gride

Новичок
Народ, да хватит Вам, в самом то деле, не Яндекс же пишем. Не для ПХП поисковики для миллионов страниц. Как тута уже говорилось, ПХП не предназначен для моделирования ядерного синтеза.
Вообщем, спасибо за ответы, но мне хватит и возможностей на пару тыщ страниц :). Не думал, что такой спор пойдет.
 

Falc

Новичок
Silent
>>Ты может ГАРАНТИРОВАТЬ, что нужный индекс будет лежать в памяти?

Такой гарантии и не нужно, даже если индексы будут на диске все равно они будут рядом, т.к. индексы упорядочены, и следовательно хватит 1-2 операций чтения с диска чтобы достать нужные индексы.

>>И второе, после того, как ты прошелся по индексу, нужно достать даные, чтобы найти их пересечение (для многословных запросов).
ID документов тоже должны быть в индексах, поэтому для пересечения Лазить за данными не придется.

>>А потом еще релевантность подсчитать. А потом еще отсортировать. Одних индексов для этих действий будет недостаточно.

Вот тут уже придется слазить за данными, но если человек не ищет по частовстречающимся словам, то таких данных будет не много. Кстати некоторые системы (встроеный в мускул поиск в том числе), отбрасывают такие слова из базы поиска.
 
Сверху