Отправляет email-рассылки с помощью сервиса Sendsay

Создание сайта от А до Я

  Все выпуски  

Создание сайта от А до Я


Блог Елизаветы Трибунской
      Об авторе      О блоге      Отправить сообщение      Лучшее
   

Как устроен Яндекс

Автор: Lisa

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

Начало работы

Все начинается с того, что сайт публикуется в Интернете. Однако поисковая система не сразу узнает об этом, и поэтому поисковой системе нужно дать знать о том, что появился новый сайт. В случае с Яндекс можно поступить двумя способами. Во-первых, можно указать адрес нового сайта в специальной форме на странице сайта компании Яндекс http://webmaster.yandex.ru/ или ждать, пока Яндекс узнает о вашем сайте благодаря гиперссылке с его координатами, расположенной на другом ресурсе. После того, как Яндекс получил ссылку на ваш сайт, он отправляет по ней робота (crawler), который с определенной периодичностью будет выкачивать информацию с вашего сайта. По принципу своего устройства поисковый робот очень напоминает обычный интернет-браузер, которым вы пользуетесь каждый день: робот сканирует содержимое страницы и переходит по указанным на ней ссылкам точно так же, как и вы переходите на другие страницы, кликнув по гиперссылке.

Роботы поисковой системы Яндекс

Яндекс использует роботов-пауков (краулер) для индексации страниц. Каждый поисковый паук посещает сайт с определенной целью. Узнать о том, зачем заходил паук Яндекса, можно по логам сервера, посмотрев строку User-agent:

Список роботов поисковой системы Яндекс

Yandex/1.01.001 (compatible; Win16; I) основной индексирующий роботYandex/1.01.001 (compatible; Win16; P) индексатор картинок (на основе данных этого робота осуществляется поиск по изображениям http://images.yandex.ru/ )

Yandex/1.01.001 (compatible; Win16; H) робот, определяющий зеркала сайтов. В Интернете зеркалом сайта называют точную копию другого сайта. Наиболее часто зеркала сайтов используются для предоставления нескольких источников одной и той же информации.

Yandex/1.02.000 (compatible; Win16; F) робот, индексирующий пиктограммы сайтов (favicons)

Yandex/1.03.003 (compatible; Win16; D) робот, обращающийся к странице при добавлении ее через форму «Добавить URL»

YaDirectBot/1.0 (compatible; Win16; I) робот, индексирующий страницы сайтов, участвующих в Рекламной сети Яндекса

YandexBlog/0.99.101 (compatible; DOS3.30; Mozilla/5.0; B; robot) робот поиска по блогам, индексирующий комментарии постов

Кроме роботов, у Яндекса есть несколько агентов-«простукивалок», которые определяют, доступен ли в данный момент сайт или документ, на который стоит ссылка в соответствующем сервисе.

Yandex/2.01.000 (compatible; Win16; Dyatel; C) «простукивалка» Яндекс.Каталога. Если сайт недоступен в течение нескольких дней, он снимается с публикации. Как только сайт начинает отвечать, он автоматически появляется в Каталоге.Yandex/2.01.000 (compatible; Win16; Dyatel; Z) «простукивалка» Яндекс.Закладок. Ссылки на недоступные сайты помечаются серым цветом.

Yandex/2.01.000 (compatible; Win16; Dyatel; D) «простукивалка» Яндекс.Директа. Она проверяет корректность ссылок из объявлений перед модерацией. Никаких автоматических действий не предпринимается.

Yandex/2.01.000 (compatible; Win16; Dyatel; N) «простукивалка» Яндекс.Новостей. Она формирует статистические отчеты для контент-менеджера и информирует его о возможных проблемах у партнеров-поставщиков новостей.

Вопреки распространенному мнению, нужно отметить, что Яндекс индексирует документы, созданные при помощи технологии flash. Однако вопрос качества в данном случае пока оставляет желать много лучшего. Если на вашем сайте кроме html размещены документы в форматах PDF, DOC, RTF , то они без проблем будут проиндексированы.

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

Новую базу выкладывают сразу на все кластеры — этот процесс можно обозначит как апдейт – результат обновления базы поисковой системы (обновленная база мгновенно заменяет старую), но из-за сложной архитектуры поискового кластера и наличия кеширования это изменение видят не все пользователи одновременно.[1]

Поведением робота на сайте можно управлять, а именно указать ему маршрут передвижения по внутренним ссылкам. Это делается при помощи файла robots.txt.

Проверить наличие своего сайта в индексе поисковой системы Яндекс можно следующим образом. В строке поиска Яндекс нужно ввести следующий параметр url=»www.example.com», где example.com — ваш сайт.

Балансировка нагрузки в поиске Яндекс

Каждый день Яндекс обслуживает приблизительно 30 000 000 пользовательских запросов. Всего в базе Яндекса на текущий момент находится около 3 000 000 000 документов. Эти 3 000 000 000 документов представляют собой т.н. «порезанный интернет» – скаченные и хранящиеся в базе данных Яндекса документы веб-страниц. Таким образом, составленный вами запрос в окне поиска попадает на сервер «метапоиска», откуда он в последствии перебрасывается на сотни серверов, где происходит обработка данных. С каждого из таких серверов подбирается 10 наиболее релевантных ответов, которые передаются на сервер «метапоиска», где в свою очередь выдача также сортируется по релевантности и только потом отдается вам в виде HTML документа. За время одного запроса может быть обработано несколько сотен мегабайт данных. Таким образом мы видим, насколько большие создаются нагрузки. Естественно процесс обработки данных в данном случае нуждается в оптимизации и для этого поисковая система Яндекс использует кэширование. В широком смысле слова кэширование — это промежуточный буфер с быстрым доступом, содержащий копию той информации, которая хранится в памяти с менее быстрым доступом.

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

Читать далее >>


 

 
 

В избранное