Comments 33
Какая та уж очень ознакомительная статья получилось. Я конечно понимаю что краткость — сестра таланта…
Но лично мне интереснее было бы на эту тему что то более подробное почитать.
Но лично мне интереснее было бы на эту тему что то более подробное почитать.
Какого рода данные обрабатываются в DMP? На сколько я понимаю DMP должен отдавать данные DSP исходя из которых принимается решение об отдачи рекламы (по этим данным производится таргетирование).
Я посмотрел интерфейс Hybrid — в тестовом режиме увидел только гео-таргетирование.
Я посмотрел интерфейс Hybrid — в тестовом режиме увидел только гео-таргетирование.
В тестовом режиме доступна только ремаркетинговая кампания(ретаргетинг). А так данных много: соцдем, аудитории, контекстные таргетинги и т.д.
А откуда берется соцдем? Каким то образом получаются из соцсетей? Или исходя из статистик посещений сайтов?
Источников несколько. Сторонние поставщики(aidata, tbh), интеграция с mail.ru и их DSP, небольшой процент своих данных(посещения, поведение).
А каким образом интеграция с _DSP_ mail.ru даёт вашей DMP данные о соц.деме?
Получается, мейл вам просто дарит или продает свои данные про соц.дем?
Получается, мейл вам просто дарит или продает свои данные про соц.дем?
Мы синхронизируем нашу DMP и DMP MyTarget для кроссканального ретаргетинга. Не DSP.
Погодите, вы говорили о том, откуда получаете соц.дем. Уточнили, что за счет интеграции с Mail.ru, сейчас уточнили про «синхронизацию». Расскажите подробнее, как интеграция с mail.ru позволяет вам получать соц.дем для таргетинга в системе, про которую написано в исходном посте?
В тестовом режиме вы можете запустить ремаркетинговую кампанию. Геотаргетинг в ней — это можно сказать дополнительная «плюшка» к таргетингу по аудиториям. Для сбора аудитории вы сначала устанавливаете SmartPixel на свой сайт. Затем можно сегментировать аудиторию своего сайта по посещенным страницам, разделам, совершенным действиям.
В аудиторной кампании, которая становится доступной при пополнении от 500 руб. уже есть таргетинги по данным, которые мы получаем от сторонних DMP и храним в своей. Это такие данные, как: пол, интересы, ключевые слова (по истории посещений и в меньшей мере поисковым запросам).
В аудиторной кампании, которая становится доступной при пополнении от 500 руб. уже есть таргетинги по данным, которые мы получаем от сторонних DMP и храним в своей. Это такие данные, как: пол, интересы, ключевые слова (по истории посещений и в меньшей мере поисковым запросам).
Все пытаюсь разобраться, простите)
есть таргетинги по данным, которые мы получаем от сторонних DMP и храним в своей
В том числе от Mail.ru?
есть таргетинги по данным, которые мы получаем от сторонних DMP и храним в своей
В том числе от Mail.ru?
Мой первый комментарий был не совсем корректен. Именно DSP не работает с mail.ru. С mail.ru работает Hybrid, где можно создавать соответствующие кампании.
Спасибо за пояснение!
Правда, я еще больше запутался)
Вы пишете Именно DSP не работает с mail.ru. С mail.ru работает Hybrid
При этом у вас на схеме сначала идет Hybrid, после которого идет стрелочка к DSP. То есть это — не ваша DSP, а, например, Mail.ru?
Правда, я еще больше запутался)
Вы пишете Именно DSP не работает с mail.ru. С mail.ru работает Hybrid
При этом у вас на схеме сначала идет Hybrid, после которого идет стрелочка к DSP. То есть это — не ваша DSP, а, например, Mail.ru?
Схема показывает именно нашу DSP. Но есть то, что схема не показывает(решили не усложнять). Hybrid(как TradingDesk) работает как с нашей DSP, так и с TradingDesk mail.ru(а через неё с их DSP). То есть на схеме не хватает Trading Desk mail.ru, с которой взаимодействует Hybrid.
А в случае работы с DMP и DSP mail.ru — как именно работают технологии Hybrid (Targetix)?
Как эту интеграцию делали? Там ведь напрямую крайне трудно обеспечить взаимодействие.
Имхо это же очень важная и интересная часть.
Как эту интеграцию делали? Там ведь напрямую крайне трудно обеспечить взаимодействие.
Имхо это же очень важная и интересная часть.
Нет. С Mail.Ru не так.
DMP — это комплексная штука. DMP отвечает за хранение готовых профилей, хранение raw-data и обработка данных. Что касается обработки данных. Во-первых данные ретаргетинга — здесь работают batch-процессор и stream-процессор. Пример обработки ретаргетинговых данных — клиент хочет собрать пользователей, посещавших страницы, и наложить на эти страницы regex-паттерн, собрать пользователей, пришедших из поиска по определенным запросам. Кластер для работы с 1st-party данными (ретаргетинговые данные) изолирован от всех других.
Во-вторых: мы предоставляем возможность собрать аудиторию по ключевым словам. Здесь мы от поставщиков данных получаем огромное количество кликстрима, каждую страницу анализируем на ключевые слова, а затем смотрим, кто из пользователей сталкивался с заданными ключевыми словами.
В третьих: мы логируем все показы и клики рекламы. На основе этой информации мы можем собирать аудитории, которые видели рекламу, но не кликнули, затем пересечь этих пользователей с каким-нибудь сегментом (н-р интересовались космосом) и результирующую аудиторию отправить в рекламную кампанию.
Это только небольшой список того, за что отвечает DMP. Также мы строим look alike аудитории, проводим исследования на основе логов (например найти статистическую взаимосвязь между какой-то информацией о пользователе и ctr или конверсией). Построение кастомных аудиторий, прогнозирование kpi рекламной кампании и тд
В итоге, любая собранная нами в результате обработки данных аудитория отправляется в Aerospike, и там эту информацию использует DSP.
Во-вторых: мы предоставляем возможность собрать аудиторию по ключевым словам. Здесь мы от поставщиков данных получаем огромное количество кликстрима, каждую страницу анализируем на ключевые слова, а затем смотрим, кто из пользователей сталкивался с заданными ключевыми словами.
В третьих: мы логируем все показы и клики рекламы. На основе этой информации мы можем собирать аудитории, которые видели рекламу, но не кликнули, затем пересечь этих пользователей с каким-нибудь сегментом (н-р интересовались космосом) и результирующую аудиторию отправить в рекламную кампанию.
Это только небольшой список того, за что отвечает DMP. Также мы строим look alike аудитории, проводим исследования на основе логов (например найти статистическую взаимосвязь между какой-то информацией о пользователе и ctr или конверсией). Построение кастомных аудиторий, прогнозирование kpi рекламной кампании и тд
В итоге, любая собранная нами в результате обработки данных аудитория отправляется в Aerospike, и там эту информацию использует DSP.
Это очень круто что вы и DCA делитесь своим опытом!
В свою очередь подкину, что еще по этой теме на Хабре же выходило интервью Segmento/Rutarget с Кириллом Сафоновым про разработку системы и очень классно если таких материалов будет 10-20.
Я бы послушал еще ребят из Аудиториус, AiData, AmberData, Vi.
В свою очередь подкину, что еще по этой теме на Хабре же выходило интервью Segmento/Rutarget с Кириллом Сафоновым про разработку системы и очень классно если таких материалов будет 10-20.
Я бы послушал еще ребят из Аудиториус, AiData, AmberData, Vi.
>>Теперь время отклика DSP менее 10 миллисекунд, при нагрузке в 7000 запросов в секунду на один сервер.
А можете более подробно рассказать про архитектуру и как добились такой производительности:
— как вы интегрированы со сторонними DMP? Некоторые из них сами по себе имеют латенси больше 10мс. Или вы подтягиваете из данные в свою DMP?
— где хоститесь, в облаке или на реальном железе?
— какой мощности сервер выдает 7000 запросов от SSP?
Еще интересно услышать про DSP:
— какой сложности таргетинги поддерживаете
— как управляете и синхронизируете бюджеты компаний, боритесь с перетратами/недотратами
А можете более подробно рассказать про архитектуру и как добились такой производительности:
— как вы интегрированы со сторонними DMP? Некоторые из них сами по себе имеют латенси больше 10мс. Или вы подтягиваете из данные в свою DMP?
— где хоститесь, в облаке или на реальном железе?
— какой мощности сервер выдает 7000 запросов от SSP?
Еще интересно услышать про DSP:
— какой сложности таргетинги поддерживаете
— как управляете и синхронизируете бюджеты компаний, боритесь с перетратами/недотратами
— Со сторонними DMP интегрируемся путем копирования всех данных к себе в кластер.
— Хостимся на реальных серверах. Когда создавали кластер (2-3 года назад) облака не давали такой производительности как сейчас, а если и давали то инстансы стоили столько же, сколько покупка железа.
— Сервер приложения — 2x Xeon E5 2620 по 6 ядер на каждый, 64 ГБ ОЗУ. Сервер базы данных — 1x Xeon E5 2620, 200 ГБ ОЗУ. Следует отметить, недавно проводили тесты на более крутом железе, производительность выше в 1.7 раз, тогда как стоимость сервера- в 3 раза. Поэтому продолжаем сидеть на попсовом 2620.
— По поводу таргетингов. Как-то сложно оценить их сложность, пожалуй, самый сложный — это предсказание (предиктор) вероятности совершения действия пользователем
— Все управляется через базу, информация на каждой ноде обновляется каждую 1-2 мс. Перекруты бюджета кампании большая редкость. По факту все в рамках среднестатистических показателей отрасли (Adwords, Директ и тд)
— Хостимся на реальных серверах. Когда создавали кластер (2-3 года назад) облака не давали такой производительности как сейчас, а если и давали то инстансы стоили столько же, сколько покупка железа.
— Сервер приложения — 2x Xeon E5 2620 по 6 ядер на каждый, 64 ГБ ОЗУ. Сервер базы данных — 1x Xeon E5 2620, 200 ГБ ОЗУ. Следует отметить, недавно проводили тесты на более крутом железе, производительность выше в 1.7 раз, тогда как стоимость сервера- в 3 раза. Поэтому продолжаем сидеть на попсовом 2620.
— По поводу таргетингов. Как-то сложно оценить их сложность, пожалуй, самый сложный — это предсказание (предиктор) вероятности совершения действия пользователем
— Все управляется через базу, информация на каждой ноде обновляется каждую 1-2 мс. Перекруты бюджета кампании большая редкость. По факту все в рамках среднестатистических показателей отрасли (Adwords, Директ и тд)
Я возможно что-то не совсем понимаю, но:
— имеем 7k запросов в 1 секунду (1000 миллисекунд) на один сервер с 6 ядами, за время отклика возьмем 10 миллисекунд, тогда:
7000 запросов * 10 миллисекунд / 1000 миллисекунд = 70 запросов должен обработать сервер за 1 миллисекунду
70 запросов / 6 ядер = 11 запросов каждое ядро должно обработать за 1 миллисекунду
Подскажите пожалуйста, где я ошибся?
— имеем 7k запросов в 1 секунду (1000 миллисекунд) на один сервер с 6 ядами, за время отклика возьмем 10 миллисекунд, тогда:
7000 запросов * 10 миллисекунд / 1000 миллисекунд = 70 запросов должен обработать сервер за 1 миллисекунду
70 запросов / 6 ядер = 11 запросов каждое ядро должно обработать за 1 миллисекунду
Подскажите пожалуйста, где я ошибся?
Дополню расчет:
70 запросов / 24 потока (2 процессора по 6 ядер с включенным Hyper Threading) = 3 запроса на 1 поток за мс. Также учитывая, что каждый запрос не выполняется меньше, чем 10 мс, а 2-3 в среднем, то получаем 1 запрос на 1 поток на мс.
70 запросов / 24 потока (2 процессора по 6 ядер с включенным Hyper Threading) = 3 запроса на 1 поток за мс. Также учитывая, что каждый запрос не выполняется меньше, чем 10 мс, а 2-3 в среднем, то получаем 1 запрос на 1 поток на мс.
Если так, то это более близко к реальности.
Однако с точки зрения моего опыта, DSP редко может обработать запрос за 2-3 мс. Расскажите, какие действия выполняет DSP при запросе, что он обрабатывается за 2-3 мс? Я не пытаюсь Вас закидать шапками, мне просто интересен Ваш опыт. Было бы очень любопытно посмотреть на Ваши бенчмарки!
Однако с точки зрения моего опыта, DSP редко может обработать запрос за 2-3 мс. Расскажите, какие действия выполняет DSP при запросе, что он обрабатывается за 2-3 мс? Я не пытаюсь Вас закидать шапками, мне просто интересен Ваш опыт. Было бы очень любопытно посмотреть на Ваши бенчмарки!
Я думаю по мотивам этих вопросов лучше статью написать с бенчмарками. Пока стоит на слово поверить, 7 000 rps наш биддер держит, но пришли мы к этому тоже не за один день.
Еще стоит учесть, что значительная часть из этих 10 мс проводится в ожидании ответа от БД. На один запрос от SSP, приходится несколько запросов к БД, многие из которых синхронные. Естественно процессорное время при этом не расходуется.
Ну если вы все таки подготовите честные бенчмарки и приоткроете завесу тайны, что же все таки там у вас под капотом это будет намного лучше, нежели голословное декларирование производительности вашего кода!
Что под капотом DSP читать здесь habrahabr.ru/company/targetix/blog/261745/#first_unread
Очень круто!
Думаю вам стоит попробовать добавить фреймворк Orleans, наподобие того что сделали тут:
habrahabr.ru/company/dca/blog/260845
Думаю вам стоит попробовать добавить фреймворк Orleans, наподобие того что сделали тут:
habrahabr.ru/company/dca/blog/260845
А какие СУБД используете для DMP и DSP? В DSP надо ведь очень быстро обработать запрос от SSP и принять решение какой баннер показать.
Sign up to leave a comment.
Targetix — разработка full-stack RTB технологий