Как работают поисковые системы?

google
поиск
яндекс
сайты

(Алексей) #1

Яндекс, Google и др. поисковые системы. Но как работают поисковые системы?


Какие факты вы знаете о поисковых системах?
(Евгений) #2

Сам в основном занимался ранее с Nutch, DataparkSearch Engine, и еще рядом движков.

В архитектуру поисковой системы обычно входят:

  • поисковый робот, собирающий информацию с сайтов или из других мест;
  • индексатор, обеспечивающий быстрый поиск по накопленной информации;
  • поисковик — графический интерфейс для работы пользователя.

Если еще проще. Особая программа ходит по страницам (используя ссылки на них), или работая от базы с сайтами не выходя за пределы списка, копирует информацию на свои жесткие диски. Она может собирать только текст, или забирать еще и картинки и т.д.

Она определяет обновление информации (время своего следующего захода) и еще тысячи параметров.

Эта информация вначале хранилась практически один в один, её не особо обрабатывали, а уже позже кто-то начинал сжимать, кодировать и т.д.

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

Однако в виду того, что обычно документов много, а просматривают их не очень глубоко, обычно в пределах одной страницы, далее начали группировать (в выдаче) и показывать только один источник с одного сайта.

Потом ввели ссылочное ранжирование, подразумевая, что выдача по количеству встречаемых слов в документе, это не совсем то, что надо.

Ссылочное ранжирование подразумевало, что в основе его лежит голосование. Если автор сайта ставит ссылку, то как-бы отдает голос за сайт. Ссылка = голос.

Если сайт А ссылается на сайт Б, то можно предположить, что Б важней А.

В этом ключе, сейчас поисковые системы всячески стараются показывать вверху, по их мнению, наиболее актуальные, авторитетные ресурсы…

Это основа поиска.

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

Например, вначале мы пытались писать разные фильтры от руки, описывая различные:

links.php
link.html
и т.д.

линкопомойки, которые мешают “нормально” работать поисковой системе. Но вскоре фильтры стали просто огромные, далее начали делать алгоритм, определяющий количество ссылок, вес их в общем индексе и т.д.