Поисковые указатели
Основной проблемой поисковых каталогов является чрезвычайно низкий коэффициент охвата ресурсов WWW. И хотя для реферативного поиска это не выглядит критичным, все-таки существуют потребности в поиске актуальной, уникальной, специальной информации, которая не охвачена и не может быть охвачена поисковыми каталогами.
Чтобы многократно увеличить коэффициент охвата ресурсов Web, из процесса наполнения базы данных поисковой системы необходимо исключить человеческий фактор — работа должна быть автоматизирована. Разумеется, при этом значительно падает качество ссылок, предоставляемых системой по результатам поиска, но одновременно увеличивается их количество. Автоматическую каталогизацию Web-ресурсов и удовлетворение запросов клиентов выполняют так называемые поисковые указатели.
Основной принцип работы поискового указателя заключается в поиске Web-ресурсов по ключевым словам. Пользователь описывает искомый ресурс с помощью ключевых слов, после чего дает задание на поиск. Поисковая система анализирует данные, хранящиеся в своей базе, и выдает список Web-страниц, соответствующих запросу. Вместе с гиперссылками выдаются краткие сведения о найденных ресурсах, на основании которых пользователь может выбрать нужные ему ресурсы (рис. 7.7).
Сегодня в мире существует около 10 тысяч поисковых указателей. Вершину списка занимают около двух десятков зарубежных систем: AltaVista (www.atavista.com), Excite (www.excite.com). Fast Search (www.alltheweb.com), Go/Infoseek (www.go.com), GoTo (www.goto.com), Google (www.google.com), HotBot (hotbot.lycos.com), Inktomi (www.inktomi.com), Lycos (www.lycos.com), Netscape Search (search.netscape.com), Northern Light (www.northernlight.com), WebCrawler (www.webcrawler.com) и другие. В России также имеется несколько поисковых указателей, из которых наиболее крупными и популярными являются следующие: “Апорт 2000” (www.aport.ru), “Яndех” (www.yandex.ru) и “Рэмблер” (www.rambler.ru).
Разные поисковые указатели могут использовать разные информационные технологии для обработки запросов пользователей. Чтобы эффективно выполнять поиск информации в WWW, надо представлять достоинства и недостатки каждой из систем и хотя бы в общих чертах понимать принципы их работы.
Три этапа работы поискового указателя. Работу поискового указателя можно условно разделить на три этапа. Из них два этапа являются подготовительными — они незаметны для клиента, и лишь на третьем этапе происходит взаимодействие с пользователем, но от каждого из этапов зависят функциональные свойства поисковой системы и эффективность работы с ней.
Сбор первичной базы данных. На первом этапе поисковая система занимается сканированием информационного пространства World Wide Web. Для этого используют специальные агентские программы — черви. Не следует путать агентов поисковых систем с разновидностью сетевых компьютерных вирусов, тоже именуемых червями. Черви поисковых систем совершенно безобидны для серверов и клиентов WWW. По своей сути это очень эффективные малоразмерные броузеры. Им не надо выполнять функции просмотра и воспроизведения содержимого — их задача состоит только в том, чтобы автоматически разыскивать в Сети Web-ресурсы, следуя по гиперссылкам, и, убедившись, что этот ресурс системе еще не известен, копировать его в свою базу данных. Так же происходит и обновление ранее принятых документов, но измененных за время после предыдущего копирования.
От эффективности работы поискового червя во многом зависит содержательная часть поискового указателя. Каждая система использует собственную поисковую программу и хранит в тайне алгоритм ее работы от конкурентов.
Индексация базы данных. Собранная база данных сетевых Web-ресурсов — это хорошая, но не достаточная основа для функционирования поисковой системы. С ее помощью уже можно обслуживать запросы клиентов, но нельзя делать это быстро. Поиск ключевых слов, введенных пользователем, в обширной базе — это весьма продолжительная операция. Нежелательно задерживать клиента более чем на доли секунды, поэтому собранные базы данных проходят предварительную обработку, называемую индексацией. На этапе индексации создаются специализированные документы — поисковые указатели.
С простейшим указателем вы знакомы по работе с учебными пособиями. Нередко в конце книг приводится предметный указатель, с помощью которого можно по термину быстро найти страницу книги, на которой этот термин раскрывается. Аналогично устроены и поисковые указатели. Простейший тип поискового указателя называется обратным файлом. Это просто словарь, в который входят все слова, встреченные при просмотре Web-ресурсов. Против каждого слова приводится список ссылок, указывающих на местоположение соответствующих ресурсов в базе данных.
При получении списков ключевых слов от пользователя просмотр поискового указателя происходит очень быстро, так как он предварительно отсортирован по алфавиту. В результате клиент достаточно быстро получает список ссылок с интересующими его Web-ресурсами.
Рафинирование результирующего списка. Это третий этап работы, в ходе которого осуществляется взаимодействие с пользователем. На этом этапе создается список ссылок, который будет передан пользователю в качестве результирующего. Пользовательское представление о качестве работы поисковой системы напрямую зависит от технологий, использованных на этом этапе.
Рафинирование результирующего списка заключается в фильтрации и ранжировании результатов поиска. Под фильтрацией понимается отсев ссылок, которые выдавать пользователю нецелесообразно. Прежде всего проверяется наличие дубликатов. Если система в одном списке выдает множество ссылок, ведущих к одному и тому же Web-ресурсу, это говорит о том, что ее средства добросовестно отработали два первых этапа, но ничего не сделали на третьем этапе. Дублирующиеся ссылки перегружают результирующий список и затрудняют выбор действительно полезных ресурсов.
Ранжирование заключается в создании специального порядка представления результирующего списка, при котором наиболее “полезные” (с точки зрения поисковой системы) ссылки приводятся в вершине списка, а наименее полезные — в его конце. Понимание критерия “полезности” для клиента той или иной ссылки может быть самым разнообразным. Именно поэтому разные поисковые системы, даже работающие с одинаковыми базами ресурсов, выдают разные результаты поиска.
Прежде всего, при ранжировании учитывается количество появлений ключевых слов в Web-документе. Принцип “чем больше, тем лучше” достаточно очевиден, но не слишком корректен. На самом деле хорошо, когда искомое слово появляется достаточно часто в начале документа, в его первых 5-10 абзацах, а прочие части документа учитываются меньше. Очень хорошо, когда ключевые слова встречаются в заголовках документа и в подрисуночных подписях.
Интеллектуальные системы могут проверять также наличие сопутствующих слов. Так, например, по результатам анализа содержимого множества Web-страниц, выполненного еще на этапе индексации, может быть установлено, что словам электронная коммерция очень часто сопутствуют слова цифровая подпись и платежные системы. Если поисковая система об этом знает, то, получив от клиента запрос на поиск по словам электронная коммерция, она в вершине списка расположит те Web-страницы, на которых также встречаются упоминания о цифровой подписи и о платежных системах.
Всюду, где можно, автоматические системы стремятся полагаться на “человеческий фактор”. Автоматической системе сделать это непросто, но специальные технологии имеются. Так, например, еще на этапе индексации высокий рейтинг могут получать те страницы, на которые имеется больше ссылок с других Web-страниц. Поскольку гиперссылки создают люди, а не машины, то этот факт можно использовать в качестве субъективной оценки более высокой “полезности” тех документов, которые чаще цитируются.
В рамках этой книги мы не можем охватить все те приемы, которые используют поисковые системы на этапе формирования результирующего списка, но роль этого этапа трудно переоценить. Попробуйте работу с несколькими поисковыми системами и посмотрите, как у них обстоит дело с фильтрацией и ранжированием результатов. Вы, наверное, заметите, что тщательная фильтрация и разумное ранжирование воспринимаются потребителем как показатель качества работы системы.