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