Организация поиска. Поисковые машины

Основным элементом структуры ИПС в Интернете являются поисковые машины, или поисковики. Разных поисковиков очень много, но среди них есть главные, наиболее известные и посещаемые. В мировом Интернете сейчас доминирует Google. В российском же, а точнее, в русскоязычном Интернете (Рунете) высокую популярность удерживает поисковик Яндекс.

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

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

Первый, самый естественный способ поиска нужной страницы – это оглавление книги. Читатель книги просматривает ее оглавление, находит нужную ему главу, видит номер нужной страницы и открывает се, пролистав книгу до нужного номера страницы.

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

Сначала именно каталоги были основным способом упорядочения Интернета (в середине 1990-х гг.), но потом постепенно уступили первенство поисковикам – и на то было много причин.

Второй привычный способ поиска – это ссылки в тексте на нужные страницы книги, например "подробнее об этом см. на с. 254". Чтобы найти нужный текст, читатель книги должен открыть указанную страницу 254 и найти в ее тексте интересующий фрагмент.

В Интернете идею отсылок читателя со страницы на страницу превратили в автоматические ссылки на страницы, по которым пользователь просто щелкает мышкой. Ссылки в Интернете называются гипертекстовыми ссылками ("гипер" – потому что ссылка уводит за пределы текста, на другую страницу).

Ссылки – это основной, "корневой" принцип Интернета, а ведь по сути это старая идея, просто автоматизированная текстовая ссылка.

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

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

Именно эта идея поиска нужной страницы по ключевым словам в индексе и стала основной идеей для создания интернет-поисковиков. Составление и использование поискового индекса в Интернете автоматизированы.

Фактически, когда пользователь вводит поисковый запрос в поисковую машину, он обращается к предметному указателю Интернета, или индексу, – списку всех ключевых слов Интернета с указанием страниц, на каких они встречаются.

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

Рассмотрим основные этапы процесса составления индекса и поиска по нему.

1. Сбор адресов страниц в Интернете.

Чтобы составить индекс по страницам, сначала нужно решить, какие страницы нам нужны. Таким образом, нужно сначала составить список страниц – набор адресов тех страниц, по которым будет составляться индекс.

Поскольку сайты и их страницы беспорядочно разбросаны в Интернете, поисковой машине нужно с чего-то начать. Обычно разработчики поисковой машины загружают в нее какой-то начальный список адресов страниц сайтов (взяв его, например, из какого-нибудь каталога). Затем поисковая машина (ее составная часть – так называемый поисковый паук (по-английски crawler) или поисковый робот) собирает все гипертекстовые ссылки с каждой из заданных страниц на другие страницы и добавляет все найденные в ссылках адреса к своему первоначальному набору адресов.

Таким образом, первоначальный набор адресов страниц быстро увеличивается за счет ссылок на другие сайты и страницы и постепенно становится очень большим. Сейчас поисковики обходят и индексируют миллиарды веб-страниц.

2. Выкачивание страниц.

Чтобы поработать с текстом страницы и составить из него индекс, поисковик должен получить этот текст.

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

3. Составление индекса, или индексирование.

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

Для этого индексный робот перебирает все выкачанные страницы, нумерует их, удаляет из текста страниц всякий ненужный, нетекстовый "мусор" (например, разметку языка HTML), затем извлекает из текста слова и помещает их в индекс. При этом слова снабжаются информацией о страницах, с которых они были взяты.

4. Поиск.

Все описанные предыдущие шаги незаметны для пользователя, они выполняются в поисковой машине. Л вот сам поиск – это и есть то, что видит пользователь. Пользователь вводит в поисковую строку свой запрос (слово или словосочетание), и поисковая машина выдает список ссылок на страницы в Интернете.

Когда пользователь вводит какое-нибудь слово в строку запроса поисковика, поисковая машина обращается к индексу, находит запись о заданном слове, извлекает все номера страниц, относящиеся к заданному слову, и показывает пользователю результаты поиска, т.е. список страниц.

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

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