Netflix сделал ставку на то, чтобы у каждого нового зрителя в списке просмотров было минимум три фильма или сериала «на потом». Для этого они упрощают интерфейс, мотивируют добавлять контент в очередь и персонализируют всё, что вы видите. Они постоянно экспериментируют с разными версиями интерфейса, тестируют расположение кнопок и оформление. Для одного и того же фильма создаются десятки вариантов обложек, чтобы показать вам именно то, что вас зацепит. Сразу после регистрации вы получаете трейлер оригинального контента, подобранного под ваши предпочтения, а настройки профиля встроены в сам процесс адаптации.

Как Netflix научился читать мысли пользователей? Зачем собирает и анализирует сотни терабайт данных? Какой подход помогает обгонять конкурентов?

Привет, Хабр! Меня зовут Алексей Жиряков. Я руководитель направления в KION и член программного комитета конференции Data Internals. Давайте поговорим о том, зачем нужен Data-driven (и как он устроен в KION), его проблемах и том, нужен ли он вам.

Data-driven и юнит-экономика — ключевые инструменты принятия решений, основанных на данных, оценке и оптимизации их стоимости. В KION все продуктовые фичи катятся в прод только через A/B эксперименты. По их результатам мы получаем конкретные цифры — например, как нововведение повлияло на пользователей. Смотрим на наши основные показатели для каждой продуктовой вертикали. Важно, чтобы это было статистически значимое нововведение. У каждой фичи своя стоимость поддержки, и если она не выстрелила в MVP (минимальный жизнеспособный продукт), то её не стоит катить в прод.

Например, мы на соответствующей странице в KION придумали показывать полку, в которой выводятся самые часто просматриваемые пользователем ТВ-каналы. Гипотеза заключалась в том, что эта полка будет поднимать просмотры ТВ эфира. Мы начали собирать статистику, создали для каждого пользователя персональную полку и запустили A/B эксперимент. Спустя две недели увидели, что полка на ТВ витрине в KION дала прирост просмотров — больше 2,5%. Поэтому решили масштабировать её на все платформы (Веб, Smart TV, Android TV и другие). Так у нас происходит для каждой новой фичи: гипотезы, A/B эксперимент, факты и масштабирование.

От гипотезы до масштабирования

Я работаю в KION с самого начала — с тех пор, как в МТС решили объединить медиаактивы под единым брендом. Прошёл путь от разработчика до руководителя направления. Начал с задачи по созданию персональных витрин для каждого пользователя. Например, если зрителю больше нравятся комедии, то на главном экране приложения ему будет показываться больше комедий. Персональные витрины — это ML, а ML без данных невозможен. Так я сначала написал сервис бэкенд витрины и ETL процессы для получения данных продуктовых событий, а потом со временем всё это возглавил.

Я люблю задачи-вызовы, когда в них много RPS, много данных и высокая техническая сложность. Например, обработка, валидация и хранение продуктовых событий. Сейчас в KION прилетает 8000 RPS событий от пользователей в секунду. Их все нужно принять, распарсить, провалидировать и сложить в базу данных. При этом нельзя потерять ни один запрос. Задача со звёздочкой. Для этого, в том числе, и нужен Data-driven.

У нас в KION всё на нём. Мы оцифровываем все процессы: собираем данные, анализируем их и выбираем оптимальные решения. Особое внимание уделяется ETL — это одно из самых загруженных направлений, включающее сбор продуктовых событий, парсинг, валидацию, хранение и оценку экономической эффективности хранения данных. Все решения по раскатке фич в прод принимаются на основе Data-driven. Первичным являются цифры и A/B эксперименты.

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

  • количество опустошений буфера;

  • общее количество времени на юзера, когда они видят бублик (подгрузку видео — чем меньше, тем лучше);

  • для вертикали витрины — это время смотрения в KION, конверсия в осознанный просмотр.

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

На стороне бэкенда эти поля проходят полный путь: начиная от парсера с валидаторами и заканчивая целевой таблицей в базе данных. После того, как событие размечено, приложение выкатывается в прод. Это если говорить упрощённо.

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

Эти показатели анализируются после проведения A/B тестов, когда одной группе пользователей раскатывают определенную фичу, а другой — нет. Если статистические данные показывают значительный рост, значит,  фича полезная и её можно раскатывать на всех пользователей.

Почему важна чистота данных?

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

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

В основу всего рано или поздно придёт Data-driven

Сейчас всё оцифровывается! Поэтому если у вас ещё нет Data-driven, то нужно срочно внедрять, иначе это внедрят конкуренты и обойдут на повороте. В качестве примера приведу истории нескольких известных компаний.

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

Как данные буквально спасли проект? Аналитики заметили, что 70% зрителей бросили смотреть научно-фантастический сериал после первой серии из-за слишком сложного сюжетного поворота. Они сообщили об этом создателям, которые пересняли сцены и сделали сюжет более понятным. В результате к третьему эпизоду просмотры выросли на 40%.

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

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

Конечно, внедрение Data-driven не происходит по щелчку пальцев. Стоит заранее продумать важные для анализа события и метрики, описать их структуру, оценить стоимость сбора, хранения и обработки данных, чтобы не вылезти из бюджета.

Цена вопроса

Сейчас всё больше компаний обращают внимание на юнит-экономику и стараются оптимизировать расходы на хранение данных. Вместо дорогих Data Lake платформ переходят на хранение информации в S3, поскольку это базовый уровень облачного хранения с более низкой стоимостью. В Enterprise-сегменте аналогичных цен не найти.

Например, хранение 1 ГБ данных в S3 без георезервирования стоит примерно 0,75 рубля, а с георезервированием — 1,63 рубля, причём репликация уже включена в цену. Для сравнения, стоимость хранения на платформах Data Lake начинается от 2,5 рублей за 1 ГБ на медленных SSD и до 9 рублей за 1 ГБ на быстрых. Если добавить расходы на репликацию (обычно умножают на 3 для георезерва), то итоговая цена может достигать 15 рублей за 1 ГБ.

Если использовать не колоночные платформы, а, например, GreenPlum, стоимость может вырасти ещё в 10 раз. В итоге, даже в самом простом случае хранение данных на S3 обходится примерно в 9 раз дешевле: 1.63 за ГБ в S3 Vs 15р на дисках.

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

Индексные файлы (Apache Iceberg), применяемые вместе с Parquet, выполняют роль индексов. Они аналогичных тем, что используются в СУБД, но представляют собой файлы в S3, содержащие метаданные для ускорения доступа к данным.

На мой взгляд, индустрия продолжит идти по пути улучшения экономической эффективности хранения и обработки данных.

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

Хранение и обработка данных — два самых больных вопроса

Хочется хранить много и дёшево. А ещё так же дёшево и быстро обрабатывать и анализировать данные. А кто откажется? Все этого хотят. Конечно, всё это ресурсы. Data-driven подход в продукте, как правило, требует и специализированной разметки, и парсинга, и хранения. Но решений успешного внедрения этого подхода много и становится всё больше. А значит это не уменьшает прибыль, а наоборот, увеличивает. Иначе такой подход не распространялся.

В основном это компании, где работает продуктовый подход и все решения принимаются на основании A/B тестов. Например, у нас в KION. Да и во всех онлайн-кинотеатрах из ТОП 5. Но таких примеров хватает и в финтехе.

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

Т-Банк (ex. Тинькофф) создал полностью цифровой банк без физических отделений, используя данные для создания клиентоориентированных сервисов. Банк анализирует поведение клиентов в приложении, их финансовые операции и даже пользовательский опыт при навигации по интерфейсу. Это позволяет формировать индивидуальные предложения с высокой конверсией, в то время как традиционные банки предлагали стандартизированные продукты всем клиентам. Благодаря этому Тинькофф показывает один из самых высоких показателей доходности на клиента в отрасли.

Да, Data-driven — это подход на объективных цифрах, и он, безусловно  дороже, чем подход принятия решения на субъективном экспертном уровне или интуиции. Ведь требуется: разметить продуктовые события, провести A/B эксперимент, потом собрать результирующие метрики, провести анализ. Приведу два примера: сначала наиболее сложный случай, где начальный этап и требуется разметка событий.

И второй пример, когда события размечены, дашборды созданы и требуется только реализовать фичу и провести A/B эксперимент:

Обе схемы основаны на продуктовом Data-driven подходе к принятию решений. Важно подсветить, что для проверки гипотезы используется MVP. Её можно реализовать наиболее дешевыми, зачастую нецелевыми средствами. Например, вместо графического интерфейса настройки (довольно дорогого) достаточно использовать текстовый конфиг, а вместо создания нового графического компонента — переиспользовать старый. Вообще для MVP желательно по максимуму переиспользовать готовое, тем самым сильно сокращая её стоимость. 

Немного мифологии

Не знаю, какие сотрудники сопротивляются Data-driven подходу. Но есть такое расхожее мнение, что не всем нравится его внедрение и изменение правил игры. По моему опыту, вначале могут возникнуть вопросы разве что у CEO или CFO из-за финансовых вопросов, но если подробно объяснить им то, что внедрение всё окупает, рассказать про все плюсы, то возражения снимаются. Получается, что компания будет действовать на основании объективного анализа, а не субъективных мнений и интуиции.

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

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

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

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

К внедрению Data-driven нужно подходить разумно

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

Без неё трудно принимать решения, основанные на данных, оптимизировать их стоимость, оценить влияние нововведений на пользователей и основные показатели продукта. Можно вложить много средств во внедрение, но не получить результатов, если заранее не оценить стоимость каждого этапа внедрения.

Мы в KION перевели в стоимость обработку и хранение 1М событий. Эти цифры позволяют нам разумно подходить к Data-driven. Кроме того, юнит-экономика позволяет принять верные решения относительно направления развития инфраструктуры — какой подход и инструменты выбирать. Это хорошо иллюстрирует пример с хранением данных на S3 вместо дорогих Data Lake платформ.

Я могу говорить об этом бесконечно

Работа с данными —  одно из моих любимых направлений. Поэтому я и подал кандидатуру в ПК Data Internals. Я был спикером на HighLoad, узнал, что в 2025 году будут новые конференции Х и пошёл делиться знаниями и развивать комьюнити аналитиков. Звучит пафосно, но без профессионального общения сложно развиваться в любой сфере. Реальный опыт трудно чем-то заменить, а его часто не хватает и непонятно, где взять. Конечно, можно искать в сети, но там возникает много вопросов к качеству исходных данных. А для аналитиков это больной вопрос. 

Data Internals его снимает. Потому что это — о профессиональном мире и экосистеме данных. О том, как убрать боли у дата-инженеров, продуктовых аналитиков, администраторов баз данных и пользователей BI-систем. А без развития комьюнити и пропагандирования подходов, таких как Data-driven, это вряд ли возможно.

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

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

Data-driven не просто тренд, а способ делать бизнес эффективнее

Работа с данными делает людей ответственнее, с решениями основанными на фактах и цифрах не поспоришь. Если в продукте сделали какую то гениальную фичу от CEO, но она показала свою неэффективность в A/B экспериментах, то авторитет не поможет. Ответ будет только один: в прод она не пойдет. И наоборот.

Data-driven — это не просто тренд, а способ делать бизнес эффективнее благодаря более точному прогнозированию, оптимизации процессов и глубокому пониманию потребностей клиентов.

Приведу ещё один пример с Netflix (я же из KION). Сериал «Карточный домик» был запущен после анализа данных, показавших пересечение интереса аудитории к политическим драмам, режиссеру Дэвиду Финчеру и актеру Кевину Спейси. Такой подход снизил риски производства с типичных для индустрии 35-40% до менее 20% и помог Netflix достичь показателя удержания подписчиков в 93%. Трудно сказать, сколько это в деньгах, но эффективность на лицо. Если бы они по классике отсматривали пилотные серии и спрашивали выборку зрителей, держались за мнение продюсеров, смогли бы они достичь таких показателей? Да, может быть, если бы им очень-очень повезло. Но везение не бесконечно и на него нельзя положиться. А факты никогда не подводят. Особенно если данные, на которых они основывались, качественные.

23 сентября в Москве пройдёт профессиональная конференция по инженерии данных, базам данных и системам хранения и обработки данных Data Internals. Планируйте свое участие заранее, информация на сайте.

Комментарии (0)