×
Россия +7 (495) 139-20-33

Как работает Яндекс.Метрика

Россия +7 (495) 139-20-33
Шрифт:
3 19367
Подпишитесь на нас в Telegram

Команда Яндекса подготовила статью, где вы узнаете о технических аспектах работы Яндекс.Метрики. 

В интернете все можно измерить. Если у вас есть сайт, несложно посмотреть, сколько посетителей на него приходит, на каких страницах они бывают, как долго там задерживаются и что делают. Можно составить портрет своей аудитории: узнать возраст и интересы разных категорий посетителей. Эти данные помогают развивать сайт и делать его понятнее и удобнее для разных людей.

Системы веб-аналитики

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

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

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

Сбор данных

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

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

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

Для системы статистики один человек может стать несколькими посетителями. Например, если он зайдет на сайт с двух разных устройств, из разных браузеров или из одного браузера, но после его переустановки. Бывает и наоборот: Метрика может считать одним посетителем семью из пяти человек, если все ее члены пользуются одним браузером.

Отчеты

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

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

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

1 яндекс.png

Хранение и обработка данных

Поскольку отчеты создаются в реальном времени, их структура становится известна только в тот момент, когда владелец сайта делает через интерфейс Метрики запрос для получения отчета. Структура отчета может быть практически любой, а составляется он за долю секунды. Чтобы владелец сайта получал актуальную и полную информацию, нужно постоянно собирать данные о посещаемости и уметь тут же их обрабатывать. Для этого в 2012 году Яндекс разработал свою систему управления базами данных (СУБД) — ClickHouse.

Есть два варианта подготовки данных для аналитических отчетов. В первом, с которым раньше работала Метрика, данные агрегируются предварительно, и на их основе составляется фиксированный набор отчетов. Это позволяет загружать отчеты достаточно быстро, но ограничивает гибкость аналитики: пользователь может получить только один из набора предусмотренных отчетов. Другой вариант — хранить поступающие в систему события без предварительной агрегации, а вычисления выполнять в онлайне — в тот момент, когда пользователь загружает отчет. Это сильно расширяет аналитические возможности, но накладывает очень серьезные требования на скорость обработки данных.

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

2 яндекс.gif

В столбцовых СУБД, к которым как раз и относится ClickHouse, данные хранятся в порядке столбцов: значения, относящиеся к одному столбцу, расположены рядом. Яндекс.Метрика хранит события (визиты, просмотры и т. п.) в нескольких таблицах, где строки — это все те же события, а столбцы — их параметры. Такая структура СУБД позволяет увеличивать количество параметров событий без потери производительности. Например, если нужно получить отчет по количеству уникальных посетителей в разрезе регионов, достаточно прочитать с диска только два столбца.

3 яндекс.gif

В октябре 2015 года объем данных Метрики только для веб-сайтов составил 10,65 триллиона строк. В наиболее крупной таблице содержится 349 столбцов. Каждый раз, когда владелец сайта открывает страницу в Метрике, в ClickHouse отправляется несколько запросов. Всего база данных получает примерно 2000 запросов в секунду; пиковая скорость обработки данных превышает два терабайта в секунду.

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

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

Система ClickHouse, разработанная в команде Метрики и для ее нужд, оказалась полезна и для других задач Яндекса. В том числе СУБД используется в Маркете, рекламных технологиях, системе мониторинга серверов и внутренней бизнес-аналитике. ClickHouse сравнительно прост для изучения, так как для запросов используется язык SQL.

Оригинал статьи, опубликованный в блоге Яндекса

Есть о чем рассказать? Тогда присылайте свои материалы Марине Ибушевой


Новые 
Новые
Лучшие
Старые
Сообщество
Подписаться 
Подписаться на дискуссию:
E-mail:
ОК
Вы подписаны на комментарии
Ошибка. Пожалуйста, попробуйте ещё раз.
Отправить отзыв
  • Vitaly Baranov
    1
    комментарий
    0
    читателей
    Vitaly Baranov
    больше года назад
    Выражаю пожелание починить, наконец, отображение поискового трафика. По всем проектам, где есть Яндекс Маркет, часть трафика ЯМ идет в трафик из поисковых систем.
    Скрин clip2net.com/s/3rsWLR6
    Раньше хотя бы раз в месяц служба поддержки отвечала, что проблемой занимаются. Сейчас даже писать перестали.
    -
    0
    +
    Ответить
  • Омномном
    больше года назад
    Заполнили эфир... писать нечего.... омномномном
    -
    1
    +
    Ответить
  • Alex
    1
    комментарий
    0
    читателей
    Alex
    больше года назад
    Приятная, и интересная статья, но хотелось бы больше узнать о работе Вебвизора, сроках хранения данных, возможности их расширения. А также интересно как повлияет наличие API Яндекс метрики на продвижение англоязычного сайта. Если есть статьи содержащие ответы на мои вопросы с радостью бы их почитал.
    -
    1
    +
    Ответить
ПОПУЛЯРНЫЕ ОБСУЖДЕНИЯ НА SEONEWS
Накрутка поведенческих факторов: дорого, сложно, но можно. Если очень хочется
Oleg_bobr2012
1
комментарий
0
читателей
Полный профиль
Oleg_bobr2012 - Мда...Может Анне сразу в Яндекс написать кейсы по накрутке ПФ. Я бы такого сотрудника гнал вон.
28 способов повысить конверсию интернет-магазина
Татьяна
1
комментарий
0
читателей
Полный профиль
Татьяна - Очень действенные рекомендации представлены в статье! Всё четко расписано и легко внедряемо в работу интернет-магазинов.Удобство и наглядность+различные бонусы и скидки-именно то, что и цепляет покупателя.
Какие сайты лидировали в поиске Яндекса и Google в 2023 году
Гость
1
комментарий
0
читателей
Полный профиль
Гость - Если что по рейтингу вы не правы, есть ядро по которому производиться оценка и вы можете по нему самостоятельно все посмотреть. Единственный объективный рейтинг по SEO. Других не знаю Ну я вам скажу что это не так и в предыдущие года сайт моего клиента попадал в рейтинг, при чем несколько раз. И я прекрасно знал еще до объявления результатов кто лидер - рейтинг прозрачный, есть фразы по которым набираются баллы. В этом году наш сайт не попал в рейтинг например и это было понятно, что не попадет (по статистике позиций)
Создали ресурс для металлургов, который позволяет следить за аналитикой рынка и осуществлять продажи
Наталья Сталь
3
комментария
0
читателей
Полный профиль
Наталья Сталь -
5 способов увидеть сайт глазами поисковика: анализируем скрытый контент и cloaking
Гость
1
комментарий
0
читателей
Полный профиль
Гость - Сейчас клоаку прячут, так что под нее можно глянуть только с гуггловских ip. Сейчас только гуггл сервисами можно глянуть
7 актуальных сервисов для анализа сайта: сравнительная характеристика
Jenimeon
1
комментарий
0
читателей
Полный профиль
Jenimeon - SimilarWeb один из моих фаворитов, частенько им пользуюсь. Ценник не малый, но функционал хороший. Be1 тоже годный.
Насколько вечные – вечные ссылки?
daniilastaaahov
1
комментарий
0
читателей
Полный профиль
daniilastaaahov - Я где-то пару месяцев назад заказывал размещение вечных ссылок, до сих пор рабочие, не удалены. Буду надеется что и дальше с ними ничего не произойдёт.
Optimization 2023: текстовый анализ в 2024 году и методы увеличения релевантности страниц
Игорь
1
комментарий
0
читателей
Полный профиль
Игорь - это информация максимум уровня middle seo. что такой проходняк делает в секции hard seo когда-то великой ашмановки, еще и в исполнении токсичного инфоцыгана большая загадка)) ходил последние 5 лет на нее, но больше пожалуй не стоит
5 ошибок отдела продаж, из-за которых вы теряете клиентов
Андрей
1
комментарий
0
читателей
Полный профиль
Андрей - Крутая статья! Можно еще указать: Работу без CRM-системы - я считаю, что это основа отдела продаж. Потому что не все компании решаются на внедрение отдельно системы для отдела продаж. Но зато можно что то многофункциональное внедрить аспро.клауд или что то подобное
Простые SEO-работы, которые могут увеличить прибыль компании. Часть 1
roma.lisov
1
комментарий
0
читателей
Полный профиль
roma.lisov - Воспользовался советом по проверке и настройке картинок на сайте – реально дельный совет. Вот вроде и просто, казалось бы, а мне в голову раньше не пришло. А такие нюансы, конечно, нужно знать)
ТОП КОММЕНТАТОРОВ
Комментариев
910
Комментариев
834
Комментариев
554
Комментариев
540
Комментариев
483
Комментариев
386
Комментариев
373
Комментариев
262
Комментариев
249
Комментариев
171
Комментариев
156
Комментариев
141
Комментариев
121
Комментариев
120
Комментариев
100
Комментариев
97
Комментариев
97
Комментариев
96
Комментариев
80
Комментариев
77
Комментариев
74
Комментариев
67
Комментариев
64
Комментариев
60
Комментариев
59

Отправьте отзыв!
Отправьте отзыв!