2. Индексатор (indexer).
Индексатор производит первоначальный анализ содержимого скачанной страницы, выделяет основные части (название страницы, описание, ссылки, заголовки и т. д.) и раскладывает все это по разделам поисковой базы данных – помещает в индекс поисковой системы. Этот процесс называют индексацией интернет ресурсов, отсюда и название самой подсистемы. На основе результатов первоначального анализа индексатор также может принять решение, что страница вообще «недостойна» находиться в индексе. Причины такого решение могут быть разными: страница не имеет названия, является точной копией другой, уже имеющейся в индексе страницы или содержит ссылки на запрещенные законодательством ресурсы.3. Краулер (crawler).
Это приложение призвано перемещаться по ссылкам, имеющимся на скачанной пауком странице. Краулер анализирует пути, ведущие с текущей страницы на другие разделы сайта, или на страницы внешних Интернет ресурсов и определяет дальнейший порядок обхода пауком нитей всемирной паутины. Именно краулер находит новые для поисковой машины страницы и передает их пауку. Работа краулера построена на базе алгоритмов поиска на графах в ширину и глубину.4. Подсистема обработки и выдачи результатов (Search Engine and Results Engine).
Самая важная часть любой поисковой машины. Алгоритмы работы этой подсистемы компании разработчики хранят в строгой секретности, поскольку они являют собой коммерческую тайну. Именно эта часть поисковой машины отвечает за адекватность ответа поисковой системы на запрос пользователя. Здесь можно выделить два основных компонента:• Подсистема ранжировапия.
Ранжирование – это сортировка страниц интернет сайтов в соответствии с их релевантностью определенному запросу. Релевантность страницы – это, в свою очередь, степень соответствия содержания страницы смыслу запроса, и эту величину поисковая машина определяет самостоятельно, исходя из огромного количества параметров. Ранжирование – эта самая загадочная и спорная часть «искусственного интеллекта» поисковой машины. На ранжирование страницы, помимо ее структуры и содержимого (контента) также влияют: количество и качество ссылок, ведущих на данную страницу с других сайтов; возраст домена самого сайта; характер поведения пользователей, просматривающих страницу и многие другие факторы.• Подсистема выдачи результатов.
В задачи этой подсистемы входит интерпретация пользовательского запроса, его перевод на язык структурированных запросов к индексу и формирование страниц результатов поиска.Помимо разбора самого текста запроса, поисковая машина может также учитывать контекст запроса
, формируемый исходя из смысла ранее осуществленных пользователем запросов. Так, например, если пользователь часто посещает сайты на автомобильные темы, то на запрос со словом «Волга» или «Ока» он, вероятно, хочет получить информацию об автомобилях этих марок, а не о том, откуда начинают свое течение и куда впадают одноименные русские реки. Это называется персонализированным поиском, когда выдача на один и тот же запрос для разных пользователей существенно отличается. Таким образом, речь идет о пользовательских предпочтениях, о которых поисковая машина может «догадываться», анализируя выбираемые пользователем ссылки на страницах результатов поиска. Это еще один способ скорректировать контекст запроса: пользователь своими действиями как бы подсказывает машине, что именно он хочет найти. Как правило, поисковые машины в результаты поиска стараются добавлять страницы, релевантные запросу, но относящиеся к довольно разным сферам жизни. Еще один важный момент, который учитывает поисковая машина, – это регион проживания пользователя, особенно при обработке коммерческих запросов, связанных с приобретением товаров и услуг у местных поставщиков. Если человек интересуется распродажами и скидками в торговых центрах города Москвы, в котором он проживает, то скорее всего, ему не интересно, какие акции на эту тему проводятся в Санкт-Петербурге, если только пользователь не указал этот город в тексте запроса. В первую очередь в результатах поиска должна появиться информация о распродажах в Москве. Следовательно, современные поисковые машины делят запросы на геозависимые и геонезависимые. Если поисковая система решает, что запрос Интернет пользователя геозависимый, то она автоматически добавляет к нему признак региона, который пытается определить по информации об Интернет провайдере данного пользователя.