Конфиденциальность конечных пользователей лежит в основе всего, что делает Ads Data Hub; это фундамент, на котором построена наша платформа. Чтобы обеспечить конфиденциальность и помочь нашим клиентам соблюдать нормативные требования, мы вводим определенные проверки и ограничения, призванные помочь предотвратить передачу данных об отдельных пользователях 1 в данных, которые вы получаете с платформы.
Ниже представлен обзор функций конфиденциальности Ads Data Hub, более подробная информация представлена в следующих разделах:
- Статические проверки проверяют утверждения в ваших запросах на предмет очевидных и непосредственных проблем с конфиденциальностью.
- Бюджеты доступа к данным ограничивают общее количество раз, когда вы можете получить доступ к определенному фрагменту данных.
- Проверки агрегирования гарантируют, что каждая строка содержит достаточно большое количество пользователей для защиты конфиденциальности конечных пользователей.
- Проверки различий (или «проверки различий») сравнивают наборы результатов, чтобы предотвратить сбор информации об отдельных пользователях путем сравнения данных от нескольких наборов пользователей.
- Внедрение шума является альтернативой проверке разностей.Режим шума доступен только в интерфейсе Ads Data Hub for Marketers. Чтобы узнать о внедрении шума, посетите эту страницу на сайте Ads Data Hub for Marketers .
Если результат не проходит проверку конфиденциальности, Ads Data Hub отобразит или вернет сообщение о конфиденциальности, информирующее вас о том, что строка была отфильтрована. Это может быть что угодно: от одной строки до целого набора результатов. Чтобы итоговые данные в отчетах оставались точными, используйте отфильтрованную сводку строк для подсчета данных из удаленных строк 2 .
Статические проверки
Статические проверки проверяют утверждения в ваших запросах на предмет очевидных и непосредственных проблем конфиденциальности, таких как экспорт идентификаторов пользователей, любые функции идентификаторов пользователей или использование запрещенных функций над полями, содержащими данные уровня пользователя. Чтобы избежать ошибок запросов при статических проверках, ознакомьтесь с рекомендациями и выясните , какие функции разрешены .
Бюджет доступа к данным
Ваш бюджет доступа к данным ограничивает общее количество раз, когда вы можете получить доступ к определенному фрагменту данных. Пользователи, приближающиеся к концу своего бюджета, будут уведомлены сообщением о конфиденциальности типа DATA_ACCESS_BUDGET_IS_NEARLY_EXHAUSTED
. Вы можете отслеживать бюджет, используя точку входа в бюджет доступа к данным или наблюдая за уведомлениями о бюджете в пользовательском интерфейсе.
Требования к агрегации
В основе проверок конфиденциальности Ads Data Hub лежит порог агрегации пользователей. По большинству запросов вы можете получить отчетные данные только по 50 и более пользователям. Однако запросы, которые получают доступ только к кликам и конверсиям, можно использовать для получения отчетов по 10 и более пользователям.
- События с нулевыми идентификаторами пользователей учитываются как один пользователь при расчете порога агрегации, независимо от того, сколько реальных пользователей создали события.
- Пользователи с нулевыми идентификаторами не учитываются при расчете порога агрегирования.
Рекомендация: настройте отфильтрованную сводку строк, чтобы сообщать о пропущенных данных. Это помогает поддерживать согласованность исходных показателей в ваших отчетах.
В следующем примере строка, содержащая кампанию 125, будет отфильтрована из окончательных результатов, поскольку она объединяет результаты от 48 пользователей, что ниже минимума в 50 пользователей.
Идентификатор кампании | Пользователи | Впечатления |
---|---|---|
123 | 314 | 928 |
124 | 2718 | 5772 |
125 | 48 | 353 |
Проверка разницы
Проверки различий помогают гарантировать, что пользователи не могут быть идентифицированы путем сравнения нескольких достаточно агрегированных результатов следующими способами:
- Они сравнивают результаты выполняемого вами задания с предыдущими результатами.
- Они сравнивают строки в одном и том же наборе результатов.
Нарушения проверки различий могут быть вызваны изменениями в базовых данных между двумя заданиями. Сравнивая результаты задания с предыдущими результатами, Ads Data Hub ищет уязвимости на уровне отдельных пользователей. По этой причине даже результаты разных кампаний или результаты, сообщающие об одном и том же количестве пользователей, могут быть отфильтрованы, если у них большое количество перекрывающихся пользователей.
С другой стороны, два агрегированных набора результатов могут иметь одинаковое количество пользователей (выглядеть одинаково), но не использовать отдельных пользователей и, следовательно, быть безопасными для конфиденциальности, и в этом случае они не будут фильтроваться.
Ads Data Hub использует данные из ваших исторических результатов при рассмотрении уязвимости нового результата. Это означает, что повторный запуск одного и того же запроса создает больше данных для проверки различий, которые можно использовать при рассмотрении уязвимости нового результата. Кроме того, базовые данные могут измениться, что приведет к нарушениям проверки конфиденциальности по запросам, которые считаются стабильными.
Если результаты на уровне вашего задания существенно различаются, но отдельная строка похожа на строку в предыдущем задании, Ads Data Hub отфильтрует аналогичную строку. В этом примере строка, содержащая кампанию 123 в результатах второго задания, будет отфильтрована, поскольку она отличается от предыдущего результата на одного пользователя.
|
|
Если сумма пользователей во всех строках набора результатов аналогична сумме пользователей из предыдущего задания, Ads Data Hub отфильтрует весь набор результатов. В этом примере все результаты второго задания будут отфильтрованы.
|
|
Сводка отфильтрованной строки
В сводках отфильтрованных строк суммируются данные, отфильтрованные в результате проверок конфиденциальности. Данные из отфильтрованных строк суммируются и добавляются в строку сбора всех данных. Хотя отфильтрованные данные не подлежат дальнейшему анализу, они предоставляют сводную информацию о том, какой объем данных был отфильтрован из результатов.
Явная фильтрация конфиденциальности
В тех случаях, когда вам нужно разбить запрос, но вы хотите объединить агрегированные результаты, вы можете явно применить проверки конфиденциальности к нескольким меньшим запросам, а затем объединить эти результаты вместе безопасным для конфиденциальности способом.
Примеры использования:
- Вы рекламодатель, который ищет все конверсии по типам событий атрибуции в связанном аккаунте Google Рекламы, который включает данные ЕЭЗ.
- Вы являетесь партнером по сбору данных и ищете все конверсии по типам событий атрибуции в связанном аккаунте Google Рекламы.
Чтобы получить сумму конверсий для вашей учетной записи Google Рекламы, вы можете переписать запрос, используя предложение OPTIONS(privacy_checked_export=TRUE)
чтобы применять проверки конфиденциальности к каждой службе Google индивидуально.
Пример перезаписи в этом разделе делает следующее:
- Он запрашивает каждую службу Google индивидуально, явно применяя проверки конфиденциальности к каждому промежуточному набору результатов.
- Он создает отдельную временную таблицу для результатов проверки конфиденциальности каждой службы Google: YouTube, Gmail и Network.
- Он агрегирует и суммирует количество конверсий с проверкой конфиденциальности из временных таблиц.
CREATE TEMP TABLE youtube_agg OPTIONS(privacy_checked_export=TRUE) AS
SELECT
impression_data.campaign_id,
attribution_event_type,
COUNT(1) AS num_convs
FROM adh.google_ads_conversions_policy_isolated_youtube
WHERE impression_data.campaign_id IN UNNEST(@campaign_ids)
AND conversion_type IN UNNEST(@conversion_type_list)
GROUP BY campaign_id, attribution_event_type;
CREATE TEMP TABLE network_agg OPTIONS(privacy_checked_export=TRUE) AS
SELECT
impression_data.campaign_id,
attribution_event_type,
COUNT(1) AS num_convs
FROM adh.google_ads_conversions_policy_isolated_network
WHERE impression_data.campaign_id IN UNNEST(@campaign_ids)
AND conversion_type IN UNNEST(@conversion_type_list)
GROUP BY campaign_id, attribution_event_type;
CREATE TEMP TABLE gmail_agg OPTIONS(privacy_checked_export=TRUE) AS
SELECT
impression_data.campaign_id,
attribution_event_type,
COUNT(1) AS num_convs
FROM adh.google_ads_conversions_policy_isolated_gmail
WHERE impression_data.campaign_id IN UNNEST(@campaign_ids)
AND conversion_type IN UNNEST(@conversion_type_list)
GROUP BY campaign_id, attribution_event_type;
SELECT
campaign_id,
attribution_event_type,
SUM(num_convs) AS num_convs
FROM (
SELECT * FROM youtube_agg
UNION ALL
SELECT * FROM network_agg
UNION ALL
SELECT * FROM gmail_agg
)
GROUP BY campaign_id, attribution_event_type
Обратите внимание, что этот запрос не использует JOIN
для прямого объединения данных между таблицами, а вместо этого сначала выполняет запрос для каждой таблицы, применяет проверки конфиденциальности к каждой промежуточной таблице, а затем использует UNION
для суммирования проверенных значений конфиденциальности.
Советник по запросам
Если ваш SQL действителен, но может вызвать чрезмерную фильтрацию, советник по запросам предоставляет полезные советы в процессе разработки запроса, чтобы помочь вам избежать нежелательных результатов.
Триггеры включают в себя следующие шаблоны:
- Объединение агрегированных подзапросов
- Объединение неагрегированных данных с потенциально разными пользователями
- Рекурсивно определенные временные таблицы
Чтобы использовать советник по запросам:
- Пользовательский интерфейс . Рекомендации будут отображаться в редакторе запросов над текстом запроса.
- API . Используйте метод
customers.analysisQueries.validate
.
Помимо данных, которыми они согласились поделиться, например, в случае с участниками дискуссии. ↩
Если это не запрещено ограничениями конфиденциальности, например, когда пользователи в отфильтрованной сводке строк не соответствуют требованиям агрегирования. ↩