Поисковая машина — это программа, которая составляет и хранит предметный указатель Интернета, а также находит в нем заданные ключевые слова. Для этого программа составляет так называемый индекс.
Рассмотрим, из каких этапов состоит процесс составления индекса и поиска по нему.
Чтобы составить индекс по страницам, сначала нужно решить, какие страницы нам нужны. Таким образом, прежде надо составить список страниц — набор адресов тех страниц, по которым будет составляться индекс.
Поскольку сайты и их страницы беспорядочно разбросаны в Интернете, поисковой машине необходимо с чего-то начать. Обычно разработчики поисковой машины загружают в нее некоторый начальный список адресов страниц сайтов (взяв его, например, из какого-нибудь каталога). Затем поисковая машина (ее составная часть — так называемый поисковый робот) собирает с каждой из заданных страниц все гипертекстовые ссылки на другие страницы и добавляет все найденные в ссылках адреса к своему первоначальному набору адресов.
Таким образом, первоначальный набор адресов страниц быстро увеличивается за счет ссылок на другие сайты и страницы и постепенно становится очень большим. Сейчас поисковики обходят и индексируют миллиарды веб-страниц.
Следует обратить внимание на тот очевидный факт, что малоизвестные страницы, на которые никто не ссылается, имеют очень мало шансов автоматически попасть в индекс поисковой машины! Дело в том, что разработчики поисковика не смогут добавить их в начальный список адресов вручную, из-за того что они мало известны, а по ссылкам поисковому роботу до них добраться трудно — из-за небольшого количества этих ссылок. Возможно, поисковый робот и доберется до них когда-нибудь, но далеко не в первую очередь.
Страница же, на которую вообще нет ни одной ссылки, не попадет «своим ходом» в индекс поисковика никогда, если не предпринимать специальных усилий.
Владелец сайта может сам добавить новый адрес страницы в индекс поисковика вручную, используя средства регистрации новых веб-страниц, которые есть во всех поисковых машинах.
Чтобы поработать с текстом страницы и составить из него индекс, поисковик должен получить этот текст, для чего необходимо выкачать этот текст, то есть запросить у сайта заданную страницу.
Выкачивает страницы специальный модуль поисковой машины, называемый поисковым «пауком» (по-английски crawler), или поисковым роботом.
Поисковый робот обходит заданный на предыдущем этапе список страниц, выкачивает гигантский объем сырого текстового материала, хранит его на дисках своих компьютеров и передает на индексирование индексному роботу.
Чтобы составить индекс, индексный робот поисковой машины должен выбрать все слова из всех выкачанных текстов и расположить их в алфавитном порядке, вместе с номерами страниц и разной служебной информацией о каждой странице.
HTML (HyperText Markup Language — язык гипертекстовой разметки) — набор специальных команд для оформления отображаемой на веб-странице информации: текста, изображений, таблиц, форм и т. д.
Для этого индексный робот перебирает все выкачанные страницы, нумерует их (а как же, ведь нужно как-то пометить страницы, чтобы потом находить их), удаляет из текста страниц всякий ненужный, нетекстовый «мусор» (например, разметку языка HTML), затем извлекает из текста слова и помещает их в индекс. При этом слова снабжаются информацией о страницах, с которых они были взяты.
Как именно устроен индекс, мы подробно расскажем чуть позже.
Все предыдущие шаги незаметны для пользователя, поскольку они выполняются в поисковой машине. А вот сам поиск — это и есть то, что видит пользователь. Он вводит в поисковую строку свой запрос (слово или словосочетание), и поисковая машина — о, чудо! — выдает список ссылок на страницы в Интернете.
Как это работает? Когда пользователь вводит какое-нибудь слово в строку запроса поисковика, поисковая машина обращается к индексу, находит запись о заданном слове, извлекает все номера страниц, относящиеся к нему, и показывает пользователю результаты поиска, то есть список страниц.
В списке результатов обычно отображаются заголовок страницы (так называемый титул), дата создания страницы, ее адрес, цитата из текста страницы с подсвеченным искомым словом. Откуда взялась эта цитата, мы расскажем далее, в разделе, описывающем устройство индекса.
Если же в запросе было несколько слов, то поисковая машина сравнивает списки ссылок на страницы для каждого слова и выбирает только те страницы, номера которых повторяются, то есть встречаются в каждом списке страниц для каждого слова. Таким образом, выбираются только те страницы, на которых одновременно встречаются все слова запроса.
Конечно, здесь изложена самая суть механизма поиска по индексу, его основной принцип, а в реальности разработчики поисковиков используют множество разнообразных ухищрений (о некоторых из них вы узнаете ниже).
Поисковик тем лучше, чем более «правильные» страницы он показывает пользователю в ответ на запрос. «Правильные» страницы называются релевантными (то есть относящимися к делу, уместными).
Чтобы понять, как поисковику удается находить наиболее релевантные страницы, нужно разобраться в том, как устроен индекс поисковой машины.
Поиск информации и поисковые машины | Как устроен индекс поисковой машины |