Сначала создавайте новые отчеты в пользовательском интерфейсе.
На отчеты распространяется ряд ограничений и требований, касающихся типов отчетов, фильтров, параметров и показателей. Эти ограничения применяются в API, возвращающем ошибку HTTP 400
. Чтобы избежать ошибок при построении отчетов, мы рекомендуем сначала создавать новые отчеты в пользовательском интерфейсе Display & Video 360.
После создания отчета нажмите кнопку «Попробовать этот API» на странице справочной документации, чтобы выполнить запрос queries.get
ресурса Query
. Вы можете использовать возвращенный JSON для создания будущих отчетов.
Используйте метрики и фильтры, специфичные для типа отчета.
Некоторые значения показателей и фильтров относятся к определенным типам отчетов. Помимо создания отчетов сначала в пользовательском интерфейсе , вы также можете идентифицировать метрики и фильтры, принадлежащие определенным значениям ReportType
, по их значению Bid Manager API.
Вот несколько способов определить соответствующие значения фильтров и показателей Bid Manager API. Эта таблица не является исчерпывающим списком фильтров и показателей, которые можно использовать в отчетах такого типа. Не все значения можно использовать вместе в одном отчете.
ReportType | Соответствующие фильтры и метрики |
---|---|
INVENTORY_AVAILABILITY |
|
YOUTUBE |
|
GRP |
|
YOUTUBE_PROGRAMMATIC_GUARANTEED |
|
REACH |
|
UNIQUE_REACH_AUDIENCE |
|
Сохраняйте и повторно используйте отчеты
Мы рекомендуем вам создавать и сохранять отчеты для запросов, которые вы выполняете регулярно, поскольку вставка и удаление одного и того же отчета несколько раз приводит к пустой трате ресурсов. Использование заданных значений Range
, таких как PREVIOUS_DAY
или LAST_7_DAYS
, в поле dataRange
делает отчеты более пригодными для повторного использования.
Планирование отчетов
Специальные или разовые отчеты могут привести к расточительству ресурсов, поскольку они запускаются индивидуально и могут выполняться на основе неполного набора данных. Запланированные отчеты позволяют максимально эффективно использовать ресурсы отчетов, поскольку они запускаются массово и гарантированно не будут выполняться до тех пор, пока не завершатся обработка данных предыдущего дня. Подробную информацию см. в доступных полях планирования .
Объединение похожих отчетов
Если вы регулярно создаете отчеты с одинаковыми показателями и диапазонами дат для разных рекламодателей или партнеров, мы рекомендуем вам объединить отчеты, чтобы оптимизировать их объем.
Вы можете объединить похожие отчеты, добавив фильтры всех отчетов и добавив все типы фильтров в качестве измерений . После создания вы можете разделить строки результирующего отчета по исходным значениям фильтра для создания исходных отчетов.
Рассмотрите возможность предоставления квот
Ответственное использование функции отчетов Display & Video 360 обеспечивается посредством следующих квот на использование для всего продукта.
Выполнение специальных отчетов в день
Ограничивает количество специальных отчетов, которые пользователь может запустить в течение 24 часов. Чтобы остаться в рамках этой квоты:
- Объедините похожие отчеты , чтобы уменьшить объем отчетов.
- Запланируйте повторяющиеся специальные отчеты , чтобы специально сократить объем специальных отчетов.
- Деактивируйте ненужные скрипты API.
Активные запланированные отчеты
Ограничивает количество отчетов, которые пользователь может активно запланировать на определенный момент времени. Чтобы остаться в рамках этой квоты:
- Объедините похожие запланированные отчеты , чтобы уменьшить общее количество запланированных отчетов.
- Деактивируйте ненужные запланированные отчеты.
- Деактивируйте ненужные скрипты API.
Параллельные отчеты
Ограничивает количество отчетов, которые пользователь может запускать одновременно. Чтобы остаться в рамках этой квоты:
- Запланируйте регулярные отчеты.
- Деактивируйте ненужные скрипты API.
- Отслеживайте, когда ваши отчеты готовы, путем опроса с использованием экспоненциальной логики отсрочки .
Если вы оптимизировали реализацию отчетов, но по-прежнему превышаете установленную квоту, обратитесь в службу поддержки Display & Video 360, используя контактную форму .
Используйте экспоненциальную задержку при опросе статуса отчета
Невозможно предсказать, сколько времени займет создание отчета. Продолжительность времени может варьироваться от секунд до часов в зависимости от многих факторов, включая, например, диапазон дат и объем данных, подлежащих обработке. Также нет корреляции между временем выполнения отчета и количеством строк, возвращаемых в отчете. Поэтому вам необходимо регулярно получать ресурс отчета с помощью метода queries.reports.get
и проверять, обновлено ли поле metadata.status.state
ресурса до DONE
или FAILED
, чтобы определить, завершилась ли его работа. Это процесс, известный как «опрос».
Хотя опрос необходим, неэффективная реализация может быстро исчерпать вашу квоту при обнаружении длительного выполнения отчета. Поэтому мы рекомендуем использовать экспоненциальную отсрочку для ограничения повторных попыток и сохранения квоты.
Экспоненциальный откат
Экспоненциальная отсрочка — это стандартная стратегия обработки ошибок для сетевых приложений, при которой клиент периодически повторяет запрос в течение увеличивающегося промежутка времени. При правильном использовании экспоненциальная отсрочка повышает эффективность использования полосы пропускания, уменьшает количество запросов, необходимых для получения успешного ответа, и максимизирует пропускную способность запросов в параллельных средах.
Порядок реализации простого экспоненциального отката следующий:
- Отправьте запрос
queries.reports.get
к API. - Получите объект отчета. Если поле
metadata.status.state
неDONE
илиFAILED
, это указывает на то, что выполнение отчета не завершено, и следует продолжить опрос. - Подождите 5 секунд + случайное количество миллисекунд и повторите запрос.
- Получите объект отчета. Если поле
metadata.status.state
неDONE
илиFAILED
, это указывает на то, что выполнение отчета не завершено, и следует продолжить опрос. - Подождите 10 секунд + случайное количество миллисекунд и повторите запрос.
- Получите объект отчета. Если поле
metadata.status.state
неDONE
илиFAILED
, это указывает на то, что выполнение отчета не завершено, и следует продолжить опрос. - Подождите 20 секунд + случайное количество миллисекунд и повторите запрос.
- Получите объект отчета. Если поле
metadata.status.state
неDONE
илиFAILED
, это указывает на то, что выполнение отчета не завершено, и следует продолжить опрос. - Подождите 40 секунд + случайное количество миллисекунд и повторите запрос.
- Получите объект отчета. Если поле
metadata.status.state
неDONE
илиFAILED
, это указывает на то, что выполнение отчета не завершено, и следует продолжить опрос. - Подождите 80 секунд + случайное количество миллисекунд и повторите запрос.
- Продолжайте использовать этот шаблон до тех пор, пока объект отчета не будет обновлен или не будет достигнуто максимальное время.
Если выполнение отчета завершено и находится в состоянии DONE
, вы можете получить сгенерированный файл отчета из Google Cloud Storage по пути, указанному в поле metadata.googleCloudStoragePath
.