Поисковая система Яндекс

Автор работы: Пользователь скрыл имя, 24 Апреля 2012 в 12:56, курсовая работа

Описание

Поисковая система - это программно-аппаратный комплекс, предназначенный для осуществления поиска в сети Интернет и реагирующий на запрос пользователя, задаваемый в виде текстовой фразы (поискового запроса), выдачей списка ссылок на источники информации, в порядке релевантности (в соответствии запросу). Наиболее крупные международные поисковые системы: «Google», «Yahoo», «MSN». В русском Интернете это – «Яндекс», «Рамблер», «Апорт».

Содержание

ВВЕДЕНИЕ
ГЛАВА 1. Поисковые системы: состав, функции, принцип работы
1.1 Понятие и функции поисковой системы
1.2 Краткая история развития поисковых систем
1.3 Состав и принципы работы поисковой системы
1.4 Модуль индексирования
1.5 База данных
1.6 Поисковый сервер
ГЛАВА 2. Что умеет Яndex
2.1 Возможности Яндекса
2.Результаты поиска
3.Поисковая форма
4.Найденный документ
2.5 Эпилог результатов поиска
Выводы
Заключение
Список литературы

Работа состоит из  1 файл

курсовая по поисковой системе Яндексdocx.docx

— 95.71 Кб (Скачать документ)

   1.4 Модуль индексирования  

   Модуль  индексирования состоит из трех вспомогательных  программ (роботов):

   Spider (паук) – программа, предназначенная  для скачивания веб-страниц. «Паук»  обеспечивает скачивание страницы  и извлекает все внутренние  ссылки с этой страницы. Скачивается  html-код каждой страницы. Для скачивания  страниц роботы используют протоколы  HTTP. Работает «паук» следующим  образом. Робот на сервер передает  запрос “get/path/document” и некоторые  другие команды HTTP-запроса. В  ответ робот получает текстовый  поток, содержащий служебную информацию  и непосредственно сам документ.

   Ссылки  извлекаются из тэгов a, area, base, frame, frameset, и др. Наряду со ссылками, многими  роботами обрабатываются редиректы (перенаправления). Каждая скачанная страница сохраняется  в следующем формате:

  • URL страницы
  • дата, когда страница была скачана
  • http-заголовок ответа сервера
  • тело страницы (html-код)

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

   Indexer (робот- индексатор) - программа, которая  анализирует веб-страницы, скаченные  пауками. Индексатор разбирает  страницу на составные части  и анализирует их, применяя собственные  лексические и морфологические  алгоритмы. Анализу подвергаются  различные элементы страницы, такие  как текст, заголовки, ссылки  структурные и стилевые особенности,  специальные служебные html-теги  и т.д.

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

1.5 База данных 

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

1.6 Поисковый сервер  

   Поисковый сервер является важнейшим элементом  всей системы, так как от алгоритмов, которые лежат в основе ее функционирования, напрямую зависит качество и скорость поиска.

   Поисковый сервер работает следующим образом:

  • Полученный от пользователя запрос подвергается морфологическому анализу. Генерируется информационное окружение каждого документа, содержащегося в базе (которое и будет впоследствии отображено в виде сниппета, то есть соответствующей запросу текстовой информации на странице выдачи результатов поиска).
  • Полученные данные передаются в качестве входных параметров специальному модулю ранжирования. Происходит обработка данных по всем документам, в результате чего, для каждого документа рассчитывается собственный рейтинг, характеризующий релевантность запроса, введенного пользователем, и различных составляющих этого документа, хранящихся в индексе поисковой системы.
  • В зависимости от выбора пользователя этот рейтинг может быть скорректирован дополнительными условиями (например, так называемый «расширенный поиск»).
  • Далее генерируется сниппет, то есть, для каждого найденного документа из таблицы документов извлекаются заголовок, краткая аннотация, наиболее соответствующая запросу и ссылка на сам документ, причем найденные слова подсвечиваются.
  • Полученные результаты поиска передаются пользователю в виде SERP (Search Engine Result Page) – страницы выдачи поисковых результатов.

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

   Запрос  поступает в поисковую систему  через маршрутизатор Cisco 6000 series. Cisco передает его наименее загруженной  машине первого уровня - frontend (1.1 - 1.3, на рис. машине 1.3). Frontend, в свою очередь, отправляет запрос дальше, на один из восьми proxy-серверов, также выбирая наиболее свободный сервер (2.1 - 2.8, на рис. машине 2.2). Одновременно frontend отправляет запрос на машины, осуществляющие поиск по товарам (3.1 - 3.2, на рис. машине 3.1) и по базе Тор 100 (4.1 - 4.2, на рис. машине 4.1). На proxy проводится поиск по ссылочному индексу, и его результаты вместе с поисковым запросом передаются на машины, которые содержат основную индексную базу, - backends (5.1.х - 5.7.х, на рис. машинам 5.1.2, 5.2.11, 5.3.1 и т.д.) Та же информация отправляется на машины с "быстрой  базой" (6.1 - 6.2).

   На  текущий момент в поиск включено 77 backend'ов. Они сгруппированы по 11 машин, и каждая группа содержит копию  одной из частей поискового индекса. Таким образом, информация о сайтах, условно входящих в красный сектор Интернета, находится на backend'ах первой группы (5.1.1 - 5.1.11 на рис), оранжевый сектор - на backend'ах второй группы (5.2.1 - 5.2.11) и  т.д. Proxy-сервер выбирает наименее загруженный backend в каждой группе машин и отправляет на него поисковый запрос с результатами ссылочного поиска. На backend'ах осуществляется поиск по частям индексной базы и  ранжирование с учетом результатов  поиска по ссылочному индексу. При ранжировании для всех найденных документов высчитываются  веса по конкретному запросу.

   После того, как запрос обработан на backend'ах, информация о результатах и ранжировании отдается обратно на proxy-сервер. Туда же поступают отсортированные результаты с машин "быстрой базы". Proxy интегрирует  данные, полученные с восьми машин: клеит дубли, объединяет зеркала  сайтов, переранжирует документы  в общий список по весам, рассчитанным на backend'ах. Так, первым в списке найденного может быть документ с машины 5.3.1, вторым и третьим - с 6.1, четвертым - с 5.5.2 и т.д. На proxy-сервере также  реализуется построение цитат к  документам и подсветка слов запроса  в тексте. Полученные результаты отдаются на frontend.

   Помимо  информации с proxy-сервера, frontend получает результаты из поиска по товарам и  из базы Тор 100, отсортированные, с цитатами и подсветкой слов запроса. Frontend осуществляет окончательное объединение результатов, генерирует html со списком найденного, вставляет баннеры и перевязки (ссылки на различные разделы Рамблера) и отдает html Cisco, который маршрутизирует информацию пользователю.

ГЛАВА 2. Что умеет Яndex

2.1 Возможности Яндекса

   Программные продукты серии Яndex (Языковый index) - набор средств полнотекстовой индексации и поиска в текстовых данных с учетом морфологии русского языка.

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

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

   Яndex предназначен для работы с текстами как в локальной так и в глобальной сети (технологии Intranet и Internet) , а также может быть подключен как модуль к другим системам.  

  1. Индексация 
 

   Создаваемый индекс составляет около 1/3 объема текста (без картинок, tag'ов и пр.), при  этом записывается подробный адрес  слова - с точностью до позиции  в тексте, что потом позволяет  искать с учетом близости. В базу входят нормализованные формы слов текста, сами документы не хранятся.

   Морфологический анализ слов текста происходит одновременно с индексацией, что дает возможность  снятия омонимии.

   Скорость  индексации - не менее 2 Мб/минуту. Написан  свой робот для обхода Web'а.

   Организация изменения индекса (полное либо частичное  обновление, слияние).

   Идет  индексирование по всем словам, стоп-слова  определяются статистически.  

   2. Поиск

   Язык  запросов: скобки; логическое И (в пределах одного абзаца); логическое ИЛИ; оператор И НЕ (в пределах одного абзаца); близость - расстояние в словах.

   Список  выданных документов упорядочивается  по релевантности - по количеству найденных  слов. В каждом документе выделяются (подсвечиваются) найденные слова.

   3. Работа с языком

   Для интеллектуализации поиска используется словарь на 90 тыс. слов. При индексации происходит нормализация, то есть слово  ставится в свою исходную форму (для  существительных - именительный падеж  единственного числа, для глаголов - неопределенная форма и т.д.) и  в таком виде учитывается в  базе. Алгоритм морфологического разбора  умеет корректно обрабатывать и  слова, не найденные в словаре. Морфология работает для русского и английского  языка. Также индексируются числа.  

    1. Результаты  поиска
 

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

   

    1. Поисковая форма

   Искать  в найденном

   Если  в результате запроса Яндекс нашел  много документов, но по более широкой  теме, чем вам хочется, вы можете сократить этот список, уточнив запрос. Еще один вариант — включить флажок в найденном в форме поиска, задать дополнительные ключевые слова, и следующий поиск будет вестись только по тем документам, которые были отобраны в предыдущем поиске. Например, чтобы найти страницы про кондиционеры — средства, предназначенные для ухода за волосами (а не климатическую технику), можно задать запрос кондиционеры, для определения области поиска. А затем, поставив галочку в найденном, — слово «волосы».

   Область поиска

   Под формой поиска могут появляться несколько  дополнительных блоков.

   Адрес сайта.

   Яндекс  позволяет искать информацию только по интересующему вас сайту, задав  соответствующие параметры в расширенном поиске, с помощью Яндекс.Бара или нажав на ссылку «Еще с сайта» . Тогда рядом с поисковой формой появляется напоминание, что результаты получены поиском по одному сайту. Если вы хотите продолжить поиск по всем сайтам, достаточно перед очередным запросом снять флажок ....  

   Выбор региона.

   Поиск можно ограничить сайтами в нужном вам регионе или относящимися к интересной вам теме. Для поиска по всем сайтам снимите флажок в регионе.  

   Выбор диапазона дат.

   Задав временной интервал, к которому должны относиться искомые документы, вы можете затем его исправить в результатах поиска, введя новые числа в формате «День-Месяц-Год».

   Ссылки  над поисковой  формой

   Над формой поиска видны две ссылки. Ссылка «Помощь» ведет на описание возможностей поиска. По ссылке «Настройка поиска», вы сможете изменить вид страницы с результатами поиска по своему вкусу, включить семейный поиск и отключить показ графической рекламы. Ссылка справа от формы поиска ведет на расширенный поиск, позволяющий даже неопытному пользователю задавать сложные поисковые запросы.

   Параллельные  поиски

   Яндекс  умеет искать не только сайты, но и  новости, товары, картинки и т.д. Когда  вы задаете запрос, поиск ведется  одновременно по всем «параллельным» базам, и если что-либо найдено, Яндекс покажет информацию среди результатов поиска. В правой колонке — товары и картинки, внизу или вверху страницы — новости, словари, карты, афиша, погода. И все это — одним запросом!

Информация о работе Поисковая система Яндекс