Выбрать главу

Поля Блю.

SEO для Чайников.

Практический курс по продвижению сайтов в поисковых системах.

Глава 1.

«Архитектура поисковых систем. Матрикснет»

План:

Яндекс

1.1. Архитектура ответа на вопрос

1.2. Индексирование интернета

1.3. Поисковая база

1.4. Язык запросов

1.5. Оценка качества поиска

1.6. Колдунщики

1.7. Роботы ПС Яндекс

Матрикснет

Google

3.1. Основные сведения о Google

3.2 Архитектура Google

3.3 Роботы Google

3.4 Оценка качества ресурсов

3.5 Специальные поисковые запросы

1. Яндекс

1.1. Архитектура ответа на вопрос

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

Безусловно, поиск с помощью индекса ускоряет процесс ответа пользователю, как, например, предметный указатель в книге помогает быстрее найти нужное слово. Но размеры самого «предметного указателя» в поиске — огромны. Чтобы обрабатывать такие объемы данных и делать это быстро, Яндекс использует тысячи серверов. Сервера объединены в кластеры и даже в кластеры кластеров.

Рис. 1. Архитектура ответа на вопрос в ПС Яндекс.

Все пользовательские запросы сначала попадают в компьютерную систему «метапоиск» (рис. 1).

«Метапоиск» обрабатывает каждый запрос в реальном времени — выясняет все необходимые данные про запрос (из какого региона он был задан, к какому классу относится и т.п.), проводит лингвистическую обработку. Затем метапоиск проверяет, формировались ли в последнее время результаты поиска для этого запроса. Результаты поиска по часто задаваемым запросам некоторое время хранятся в памяти метапоиска, а не формируются каждый раз заново. И если вновь пришедший запрос оказался популярным, метапоиск покажет пользователю заранее сохраненные результаты.

Если же ответа в памяти нет, то метапоиск передаёт запрос на сервера другой компьютерной системы — «базового поиска» (рис. 1).

На базовом поиске хранится слепок интернета, по которому ищет Яндекс, — поисковая база. Она разбита на части, которые хранятся на разных серверах — искать ответ одновременно по нескольким частям базы данных быстрее, чем по всей базе целиком. Кроме того, у каждого сервера есть несколько копий. Это позволяет распределять нагрузку и не терять данные — если один из серверов не сможет своевременно ответить, информация всё равно найдется на дублирующих серверах. Из тысяч серверов базового поиска метапоиск выбирает наименее загруженные – таким образом, чтобы вместе они содержали целую поисковую базу.

Каждый из серверов отдаёт список документов, в которых есть слова из запроса, обратно в метапоиск. Там они объединяются, ранжируются с помощью технологии Матрикснет и попадают на страницу результатов поиска (рис. 1).

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

1.2. Индексирование интернета

1.2.1. Понятие индекса

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

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

1.2.2. Подготовка к ответам

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

У Яндекса два поисковых робота — основной и быстрый (он называется Orange). Основной робот индексирует интернет в целом, а Orange отвечает за то, чтобы в поиске можно было найти самые свежие документы, которые появились минуты или даже секунды назад. У каждого робота есть список адресов документов, которые нужно проиндексировать.