Результативное продвижение сайта в интернете!

г. Москва, м. Сокольники, ул. Маленковская, д. 32, стр. 3

с 10:00 до 19:00, пн.- пт. (сб./вс. - выходной)

Как работает Яндекс.Вебмастер? Откуда берутся данные?

В этой статье будет рассказано о том, как Яндекс.Вебмастер устроен изнутри, откуда он берет данные и как с ними работает.

Зачем нужен Яндекс.Вебмастер

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

  • пользователи, которые приходят в Яндекс за ответами на свои вопросы;
  • владельцы сайтов, которые предоставляют контент и хотят получить трафик;
  • Яндекс, который предоставляет поисковую технологию.
Яндекс Вебмастер: Все чего-то хотят

Яндекс.Вебмастер – это один из инструментов, который позволяет удовлетворить потребность всех трех этих сторон. Владельцы сайтов могут заходить в Яндекс.Вебмастер и получить информацию о том, что происходит с их сайтом. Яндекс показывает им существующие проблемы и пути их решения. Вебмастера исправляют проблемы и улучшают контент, у Яндекса улучшается выдача, пользователи тоже довольны. Triple win!

Сервис Яндекс.Вебмастер умеет делать хорошо ровно две вещи – собирать данные и показывать их. Тому, как этот сервис собирает данные, где он их берет и как обрабатывает, и будет посвящена сегодняшняя статья. Надеемся, эта информация поможет Вам более эффективно использовать Яндекс.Вебмастер для решения своих задач. Также она может быть весьма полезной аналитикам и другим людям, занимающимся обработкой данных.

Nota bene: у Google есть свой сервис для контроля и поддержки трафика – Google Search Console.

Раздел «Поисковые запросы»

На данном скриншоте показана информация о каком-то запросе в сервисе Яндекс.Вебмастер. О запросе предоставляются максимально подробные данные: количество показов, количество кликов, ctr и т.д. Причем эти данные показываются для различных позиций. Это информация является самой точной, потому что предоставляет ее непосредственно Яндекс.

Яндекс Вебмастер: Информация о ключевом запросе

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

  • Поиск Яндекса – большая программа;
  • хорошие программы ведут лог;
  • в логе поиска есть все что нужно.

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

Map Reduce

Map Reduce – это модель вычислений, которой активно пользуются разные команды Яндекса. Это довольно известная модель, для нее есть разные реализации и платформы, самой популярной из которых является Apache Hadoop.

В чем заключается идея Map Reduce? Возьмем классическую схему работы сервиса с данными. В такой схеме у сервиса есть кластер с базами данных и вычислительный кластер, где работают бэкенды, отправляющие и обрабатывающие запросы к этим базам. Нетрудно заметить, что в такой схеме всегда есть машины, у которых простаивают процессоры, потому что их основной задачей является хранение данных, и машины у которых простаивают жесткие диски, на которых ничего не хранится. Map Reduce – это концепция, которая призвана решить, в числе прочего, эту проблему. Согласно ей данные хранятся и обрабатывается в едином кластере, что позволяет снизить простой мощностей и минимизировать сетевой трафик. Яндекс.Вебмастер использует именно эту модель вычислений.

Поисковый лог

Яндекс Вебмастер: Поисковый лог

Каждый поисковый лог представляет собой строчку таблицы, в которой указан сам запрос и далее пункты выдачи, в соответствии с их позицией. Легко заметить, что в этой таблице записаны некие факты. Например, по запросу «котики» сайт котики.рф оказался на первой позиции – это факт. Map Reduce позволяет обработать эту огромную таблицу с помощью специальной программы и собрать факты в другую таблицу.

Теперь в каждой строчке находится не отдельный запрос, а отдельный факт. Например, говорящий о том, что по определенному запросу определенный сайт оказался на определенной позиции. Эта таблица существенно больше и уже немного ближе к тому, что показывает в интерфейсе Яндекс.Вебмастер.

Далее встает задача агрегировать полученные данные по хостам. Для этого выполняется операция Reduce, которая группирует все строчки с одинаковым ключом.

Яндекс Вебмастер: MapReduce

Nota bene: Если Вы занимаетесь обработкой больших данных, и Вам не хватает мощностей, Вы также можете использовать модель вычислений Map Reduce. Это отличный способ сократить расходы на «железо» для вычислений.

MapReduce в Яндексе

Яндекс использует собственную реализацию парадигмы MapReduce, которая называется YT (Ыть). Эта реализация развернута на кластере в несколько тысяч машин. При этом у сервиса Яндекс.Вебмастер есть гарантия доступности нескольких тысяч процессорных ядер, на которых в любой момент времени можно производить вычисления. И это действительно происходит – каждую минуту Яндекс.Вебмастер обрабатывает несколько гигабайт данных. В последнее время команда Яндекс.Вебмастер идет к тому, чтобы использовать MapReduce для всех типов данных, потому что это очень удобно.

Раздел «Страницы в поиске»

В раздел Яндекс.Вебмастера «Страницы в поиске» недавно были внесены два важных изменения:

  1. Добавлена возможность мгновенной доставки данных.
  2. Добавлена история изменений позиций сайта в выдаче.

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

  • Поиск берет страницы из поисковой базы.
  • Поисковая база — это тоже данные.
  • Любые данные можно обработать.

Как получить информацию об изменениях в поисковой базе? Для этого нужно просто сравнить две базы – старую и новую – и проверить в них наличие того или иного URL-адреса. Кроме того, в поисковой базе имеется дополнительная информация о причинах появления в ней или удаления из нее URL-адреса.

MapReduce – это технология, которая идеально подходит именно для таких задач по сравнению данных. Команде Яндекс.Вебмастер оставалось только написать соответствующую функцию сравнения.

Что касается мгновенной доставки данных, понятно, что это некоторое преувеличения – они доставляются не за одну секунду. На больших базах данных расчет может длиться часами. Тем не менее в течение 5–6 минут после переключения базы на поиске данные уже есть в сервисе.

Яндекс Вебмастер: Мгновенная доставка данных

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

Раздел «Нарушения и безопасность»

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

  • непосредственно в выдаче – рядом с URL-адресом зараженного сайта;
  • через Яндекс.Браузер.

Однако в такой схеме страдают владельцы сайтов, потому что, когда Яндекс помечает сайт как зараженный, у них происходит падение трафика. Поэтому одной из задач сервиса Яндекс.Вебмастер является доведение до вебмастеров информации о взломе или заражении сайта. Данные о зараженных страницах берутся Яндекс.Вебмастером непосредственно из первоисточника – оттуда же, откуда их забирает поиск и Яндекс.Браузер.

Яндекс Вебмастер: Нарушения и безопасность

Хранятся они в простой таблице, где указаны адреса сайтов и обнаруженные проблемы. Размер этой таблицы относительно невелик, однако изменения в нее все равно вносятся частями. Она не переписывается целиком каждые 10 минут, поэтому в ней все время находятся примерно одинаковые данные.

Для того чтобы минимизировать время доставки информации об обнаружении вируса до вебмастера, Яндекс.Вебмастер раз в 10 минут снимает полную копию таблицы с вирусами и сравнивает ее с предыдущей версией. Благодаря технологии MapReduce, это занимает совсем немного времени. Получается небольшая таблица с изменениями, и именно она и загружается в Яндекс.Вебмастер. Благодаря этому время доведения до вебмастера информации о заражении сократилось до 10 минут.

Кстати о базах данных

MapReduce – это офлайновая технология. В большинстве случаев она нужна для того, чтобы что-то посчитать в офлайне в течение нескольких часов. С ее помощью нельзя быстро показывать данные пользователю в интерфейсе. Поэтому команде Яндекс.Вебмастера все равно были нужны классические базы данных.

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

Clickhouse

Для уменьшения объема данных команда Яндекс.Вебмастера также использовала технологию MapReduce, однако даже после обработки объем был слишком велик. Тогда они обратились за помощью к команде Яндекс.Метрики, которые для похожих целей разработали собственную базу данных Clickhouse.

  • Clickhouse – это колоночная база данных, разработанная командой Яндекс.Метрики$
  • поддерживает SQL-синтаксис;
  • эффективно хранит данные.

Первым делом разработчики Яндекс.Вебмастера попытались поместить в эту базу данных раздел «Поисковые запросы». Оказалось, что Clickhouse очень эффективно хранит информацию – объем данных на входе и выходе оказался не сопоставимым. В результате на проект Clickhouse была выделена отдельная команда, и теперь эта база данных является opensource продуктом. Документация по продукту выложена на clickhouse.yandex. Так что, если у вас тормозит PostgreSQL, теперь есть хорошая альтернатива.

Тем не менее у Clickhouse есть и обратная сторона медали. Ради эффективности пришлось пожертвовать функционалом – в этой базе данных нельзя обновлять и удалять данные. Можно только делать insert и удалять таблицу целиком. По этой причине для некоторых разделов в Яндекс.Вебмастере используется еще одна база данных – Apache Cassandra.

Apache Cassandra

Apache Cassandra – это также опенсорсная база данных.

  • Apache Cassandra – это распределенная база данных;
  • более простой язык запросов;
  • каждым данным выделяется своя база;
  • умеет удалять данные.

Пирамида юзабилити

Можно заметить, что любые сложные системы растут предсказуемым образом – иерархически.  Например, если в компании появляется больше людей, в ней появляются слои управления и т.д. То же самое происходило с интернетом, в который люди выходили, каждый раз забивая адрес нужного сайта в браузер. Потом появился поиск – производный инструмент, который привнес новый сценарий пользования интернетом. В свою очередь, поиск Яндекса также рос, и владельцам сайтов становилось все сложнее понимать его механизм. Для того чтобы дать обратную связь владельцам сайтов, появился Яндес.Вебмастер. Потом сам Яндекс.Вебмастер разросся до внушительных размеров, и у него появился свой производный инструмент – раздел диагностики сайта.

Яндекс Вебмастер - Пирамида юзабилити

Раздел диагностики сайта

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

Яндекс Вебмастер: Диагностика сайта

Чтобы вебмастер точно ничего не пропустил, разработчики создали еще одну функцию. Теперь, если с Вашим сайтом что-то не так, в списке сайтов на странице диагностики рядом с ним появится красный треугольник с восклицательным знаком.

С технической точки зрения, раздел диагностики сайта также имеет некоторые особенности. Во-первых, в отличие от других разделов, источником данных является сам Яндекс.Вебмастер. Во-вторых, эти данные должны быть на 100 % консистентны с другими разделами. Недопустима ситуация, когда в разделе диагностики сайта, к примеру, выложена одна информация о наличии вирусов на сайте, а в другом разделе – совершенно другая.

Источник (видео): Вебмастер: Рассказ о данных — Андрей Халлиулин (Яндекс).

1 комментарий

Почеиу в поисковой системе не совпадают дпнные по сельским населенным пунктам а именно номера строений и откуда брались новые данные

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Нажимая на кнопку «Отправить комментарий», вы соглашаетесь с Условиями использования