Принципы работы поисковых систем
Система поиска информации обычно включает такие основные компоненты:
Crawler (краулер, «веб-паук») – это программа, которая в автоматическом режиме проходит все ссылки, найденные на интернет-странице.
Spider (паук) – подобная браузеру программа, скачивающая интернет-страницы.
Database (база данных) – хранилище загруженных из Сети и обработанных интернет-страниц.
Search engine results engine (движок выдачи результатов) – программа, которая извлекает из базы данных результаты поиска.
Indexer (индексатор) является программой, которая производит анализ интернет-страниц, загруженных кроулерами.
Web server (веб-сервер) представляет собой веб-сервер, взаимодействующий между пользователями и остальными компонентами системы поиска.
Каждая конкретная реализация поисковых механизмов может иметь отличия одна от другой (например, связка Spider+Indexer+Crawler может иметь исполнение в виде одной программы, которая загружает известные интернет-страницы, проводит их анализ и по ссылкам, которые содержатся на данных страницах, осуществляет поиск новых ресурсов), однако описанные общие черты присущи всем поисковым системам.
Crawler. Производит поиск всех ссылок, присутствующих на интернет-странице. Его задача заключается в том, чтобы на основании ссылок, или на основании заблаговременно составленного списка адресов определить, куда должен идти паук дальше. Краулер, последовательно проходя по найденным ссылкам, ищет и находит новые интернет-документы, поисковой системе еще неизвестные.
Spider. Паук является программой, которая скачивает интернет-страницы таким же способом, как и обычный веб-обозреватель пользователя. Отличие заключается лишь в том, что информацию, которая содержится на интернет-странице (графическую, текстовую и так далее), браузер отображает на мониторе компьютера, паук же не обладает никакими визуальными компонентами и работает прямо с html-текстом интернет-страницы (для того, чтобы увидеть исходный «сырой» html-текст, вы имеете возможность выполнить «просмотр кода html» в вашем браузере).
Search Engine Results Engine. Движок, занятый выдачей результатов, осуществляет ранжирование интернет-страниц. Она делает решение о том, какие интернет-страницы удовлетворяют данным запроса пользователя, а также, в каком порядке их необходимо отсортировать. Происходит это в соответствии с алгоритмами ранжирования системы поиска. Эти данные являются наиболее ценными и интересными для нас – именно с данной частью системы поиска взаимодействует оптимизатор, производя попытки поднять сайт в списке выдаче результатов поиска, поэтому в дальнейшем мы подробно остановимся на всех факторах, которые влияют на ранжирование результатов.
Indexer. Индексатор разбивает интернет-страницу на составляющие части и осуществляет их анализ. Он выделяет и анализирует различные составляющие элементы интернет-страницы (текст, заголовки, особенности структуры и стиля, служебные html-теги и так далее).
Database. Хранилище всех данных, скачиваемых и анализируемых поисковой системой. Базу данных иногда называют еще индексом системы поиска.
Web server. На сервере, обычно, находится html-страница с полями для ввода поисковых терминов, интересующих пользователя поисковой системы. В обязанности веб-сервера также включена выдача пользователю результатов в форме html-страницы.