Информационно-поисковые системы на примере Рамблера
Категория реферата: Рефераты по информатике, программированию
Теги реферата: первый снег сочинение, мировая экономика
Добавил(а) на сайт: Galiaskarov.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8
Скорость поиска
Скорость поиска тесно связана с его устойчивостью к нагрузкам. На
сегодняшний день в рабочие часы к поисковой машине Рамблер приходит около
60 запросов в секунду. Такая загруженность требует сокращения времени
обработки отдельного запроса. Здесь интересы пользователя и поисковой
системы совпадают: посетитель хочет получить результаты как можно быстрее, а поисковая машина должна отрабатывать запрос максимально оперативно, чтобы
не тормозить вычисление следующих. Схематично обработка поискового запроса
изображена на рисунке 1.
Запрос поступает в поисковую систему через маршрутизатор 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, на рис. 6.1).
На текущий момент в поиск включено 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, который маршрутизирует информацию пользователю.
Каждый из этапов обработки запроса многократно продублирован и защищен системой балансировки нагрузки. Благодаря дублированию информации поисковая система Рамблер является устойчивой к сбоям на отдельных участках, авариям, отказам оборудования. Если одна их машин перестала функционировать, нагрузка перераспределяется на другие машины, и выпадения документов из поиска не происходит. Масштабируемость достигается простым добавлением в систему машин соответствующего уровня. До недавнего времени в Рамблере работало 45 backend'а. В связи с тем, что осенью нагрузка на поисковые системы обычно возрастает, число backend'ов было увеличено до 77, что позволило значительно ускорить вычисление запросов.
Еще один способ повышения скорости поиска - "кэширование", сохранение
информации о запросах и результатах поиска в буфере. Многие люди дают одни
и те же поисковые запросы. Вычислять их каждый раз заново было бы
неразумной тратой времени. Поэтому если запрос уже обрабатывался в течение
некоторого интервала времени, результаты поиска отдаются пользователю из
"кэша".
Лингвистический анализ текста документов и запроса также позволяет ускорить обработку информации. Например, определение значения омонимов уменьшает количество нерелевантных запросу документов, которые нужно ранжировать и цитировать. Выделение устойчивых обозначений (С++, б/у) на этапах индексации и обработки запроса приводит одновременно к повышению точности и сокращению временных затрат на обработку каждого отдельного элемента обозначения (раньше запрос С++ обрабатывался как отдельно латинское С, отдельно плюс и еще один плюс. Запрос вычислялся долго, а среди результатов поиска было много нерелевантных документов, например, страницы, содержащие математические формулы и т.п.) С этой же целью используются словари стоп-слов. Стоп-слова - это наиболее частотные слова языка, которые встречаются практически в любом тексте и являются малоинформативными. В основном, это служебные слова - предлоги, частицы, артикли. Если нет специальных указаний, поисковая машина игнорирует стоп- слова, встречающиеся в запросе, чтобы не тратить время на обработку дополнительной информации, снижающей качество поиска.
Наглядность
Наглядность представления результатов является необходимым компонентом
удобного поиска. На плохой витрине легко не заметить хороший товар. По
большинству запросов поисковая машина находит сотни, а то и тысячи
документов. В следствие нечеткости запросов или неточности поиска, даже
первые страницы не всегда содержат только нужную информацию. Это означает, что пользователю часто приходится проводить свой собственный поиск внутри
списка найденного. Различные элементы ответной страницы помогают
ориентироваться в результатах поиска.
Группировка по сайтам предназначена для того, чтобы на странице можно было
вывести как можно больше Интернет-ресурсов, релевантных запросу
пользователя. Это бывает важным, когда необходимо получить информацию из
различных источников. Если более информативной для посетителя является дата
обновления или релевантность отдельных документов, в ответной странице
Рамблера существует возможность сортировки по этим параметрам.
В некоторых случаях полезным бывает знание имени сайта. Если пользователя интересует конкретный Интернет-ресурс, имя может дать ему гораздо больше информации, чем заголовок страницы или цитата. Если запросу соответствует больше одной страницы с сайта, то в качестве результата поиска предъявляется наиболее релевантная из них, а ниже располагается частичный список остальных документов. Это увеличивает количество потенциально полезной информации на ответной странице и часто позволяет уточнить поиск без дополнительного запроса.
Цитата помогает определить, насколько полезную информацию содержит найденный документ. Очень часто посетителю не требуется переходить по ссылке, чтобы обнаружить, что текст не соответствует его интересам и потребностям. Иногда ответ на вопрос пользователя содержится непосредственно в цитате документа. Это экономит время и повышает эффективность работы поисковой системы.
Восстановить текст - иногда единственный способ получить доступ к
содержимому найденного документа. Ресурс бывает недоступен по разным
причинам. Документ может быть удален, перенесен, изменен, но его текстовое
содержание некоторое время сохраняется в индексной базе. Кроме того, внутри
самого документа часто отсутствует навигация, позволяющая быстро найти
фрагмент, релевантный запросу. В восстановленном тексте все слова запроса
подсвечиваются.
Ассоциации представляют собой список запросов, которые часто подаются
пользователями в течении одной поисковой сессии. Алгоритм построения
ассоциаций устроен так, что они почти всегда связаны между собой по смыслу.
В некоторых случаях ассоциации позволяют повысить качество поиска за счет
уточнения запроса (запрос "отдых в Польше" - ассоциации "отдых в Польше с
детьми", "семейный отдых", "пансионаты в Польше"), исправления
распространенных ошибок (запрос "gjujlf" - ассоциация "погода"), возможности сориентироваться в незнакомой тематике (запрос "антибиотик" -
ассоциации "сумамед", "цифран", "бисептол" и т.д.)
Заключение
Заключение пишется в конце и предполагает конечность. Но рост информации бесконечен, а потому нет предела совершенствованию поисковых машин. Важнейшей задачей разработчиков является улучшение качества поиска, движение в сторону большей эффективности и удобства в использовании системы. С этой целью постоянно меняются поисковые алгоритмы, создаются дополнительные сервисы, дорабатывается дизайн.
Однако для того, чтобы выжить в мире динамичного Интернета, при
разработке необходимо закладывать большой запас устойчивости, постоянно
заглядывать в завтрашний день и примерять будущую нагрузку на сегодняшний
поиск. Все, что сегодня программируется в Рамблере, рассчитано "на вырост".
Такой подход позволяет заниматься не только постоянной борьбой и
приспособлением поисковой машины к растущим объемам информации, но и
реализовывать что-то новое, действительно важное и нужное для повышения
эффективности поиска в сети Интернет.
При подготовке реферата использовались официальные материалы компании
«Rambler».
Скачали данный реферат: Каменчук, Анисья, Ледовской, Богдана, Jakovlenko, Яльцев, Chicherinov.
Последние просмотренные рефераты на тему: реферат на тему россия, конспект урока 8 класс, реферат загрязнение, реферат по английскому.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8