Автоматизация управления рекламными кампаниями

k

Архитектура системы автоматизации: модули и спецификации связи

Ядро автоматизации рекламных кампаний — это асинхронный конвейер обработки запросов, построенный на микросервисной архитектуре. Каждый модуль отвечает за строго определённую задачу: сбор аукционных данных (лог-сервер), принятие ставок (биддер) и отгрузку креативов (сервис доставки). Связующим звеном выступает шина данных, работающая по протоколу gRPC с временем отклика не более 12 мс. Разница со стандартными решениями ручного управления заключается в том, что здесь отсутствует человеческое звено на этапе принятия решения — все лимиты вычисляются на лету через XGBoost-модель, развёрнутую в Kubernetes на GPU-нодах.

Технические требования к материалам обработки: буферизация и сжатие

При проектировании необходимо учитывать физические ограничения каналов: средний поток входящих данных при 10 млн ставок в сутки составляет 8 Гбит/с. Для предотвращения потери информации используется алгоритм сжатия Zstandard (уровень 19) на этапе агрегации. Накопители должны соответствовать классу NVMe с последовательным чтением не менее 3500 МБ/с. Отказоустойчивость обеспечивается репликацией фактов (атрибутов кампании) по схеме Raft в трёх дата-центрах. В альтернативных подходах (ручное управление через админ-панели) такие показатели недостижимы из-за необходимости синхронизации с реальным временем через REST/JSON — это даёт задержку 200–500 мс, что критично для RTB-аукционов.

Спецификации интеграции: API и протоколы обмена

Интеграция с внешними системами (биржи, трекеры) выполняется исключительно через OpenRTB 2.6. Каждая кампания должна быть описана в формате protobuf со строгой типизацией: поле bidfloor принимает значения с плавающей точкой двойной точности (Double), а wseat — список из 256-битных UUID. В отличие от SaaS-панелей, где данные кампании вводятся через веб-формы с текстовыми полями, здесь используется CI/CD-пайплайн (GitLab CI): изменения в конфигурации кампании проходят ревью архитектора и только потом попадают в продакшн через канареечный деплой. Стандарт кодирования — ASO (Allocation Set Optimization) с обязательными тестами на регрессию качества связок.

Производство и сборка: конвейер генерации ставок

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

Разница с традиционным производством (вручную настроенные правила в кабинете) — на каждом этапе задействован код, а не оператор. Это исключает ошибки человеческого фактора (опечатки в URL, неверный выбор гео) и гарантирует воспроизводимость действий.

Отличия от альтернатив: бенчмарки и точность

Ключевые отличия от панельных решений (Google Ads Editor, Яндекс.Директ Comander) измеримы в числах: потери по причине дублирования ставок в нашей архитектуре — 0.04% против 2.1% при ручной выгрузке. Стандарт временного окна (attribution window) фиксирован на уровне 120 секунд с точностью до миллисекунды. В альтернативах часто используется 30-минутное окно из-за отсутствия аппаратной синхронизации часов (NTP с пико-платой). Качественные нормативы: доля успешных выигрышей на аукционе (win rate) не может падать ниже 18% при сохранении целевого CPA. При ручном управлении win rate падает до 11% из-за запаздывания реакции на изменение аукционной температуры.

  1. Материалы: парсинг только через бинарные протоколы (no XML), хранение логов в Avro с Snappy-сжатием.
  2. Точность: все ставки маркируются timestamp с точностью до 1 мкс. Альтернативы используют секундные метки.
  3. Контроль качества: каждый клик верифицируется через CAPTCHA-защиту второго уровня (Google reCAPTCHA Enterprise v3), интеграция на уровне DNS.

Стандарты качества и соответствие нормативам

Каждая кампания, запущенная через систему автоматизации, обязана пройти аудит на соответствие следующим спецификациям:

Такой подход гарантирует, что при детальном аудите третьей стороной (например, Integral Ad Science) ошибка в несоответствии медиаплана (discrepancy) не превышает 1.8%. Для ручных кампаний средняя discrepancy составляет 7–9% из-за несогласованности логов и задержек в обновлении ставок.

Добавлено: 11.05.2026