Ads Data Hub में निजता जांच

Ads Data Hub, एंड-यूज़र की निजता को सबसे ज़्यादा अहमियत देता है. यह हमारे प्लैटफ़ॉर्म का आधार है. निजता बनाए रखने और नियमों का पालन करने में अपने ग्राहकों की मदद करने के लिए, हम कुछ जांच और पाबंदियां लगाते हैं. इन्हें इस तरह से डिज़ाइन किया गया है कि प्लैटफ़ॉर्म से मिलने वाले डेटा में, अलग-अलग उपयोगकर्ताओं1 के डेटा को ट्रांसफ़र होने से रोका जा सके.

Ads Data Hub की निजता से जुड़ी सुविधाओं के बारे में खास जानकारी यहां दी गई है. इसके बारे में ज़्यादा जानकारी, यहां दिए गए सेक्शन में दी गई है:

  • स्टैटिक जांच में, आपकी क्वेरी में दिए गए स्टेटमेंट की जांच की जाती है. इससे निजता से जुड़ी समस्याओं का पता चलता है.
  • डेटा ऐक्सेस करने के बजट से, किसी डेटा को ऐक्सेस करने की कुल संख्या सीमित की जाती है.
  • एग्रीगेशन की जांच से यह पक्का किया जाता है कि हर लाइन में, असली उपयोगकर्ता की निजता को सुरक्षित रखने के लिए, उपयोगकर्ताओं की संख्या काफ़ी ज़्यादा हो.
  • डिफ़रेंस चेक (या "डिफ़ चेक") की मदद से, नतीजों के सेट की तुलना की जाती है. इससे आपको उपयोगकर्ताओं के कई सेट के डेटा की तुलना करके, किसी व्यक्ति के बारे में जानकारी इकट्ठा करने से रोकने में मदद मिलती है.
  • नॉइज़ इंजेक्शन, अंतर की जांच करने का एक विकल्प है. क्वेरी के एग्रीगेट करने वाले SELECT क्लॉज़ में रैंडम नॉइज़ जोड़ने से, उपयोगकर्ता की निजता सुरक्षित रहती है. साथ ही, सटीक नतीजे मिलते हैं. इससे अंतर की जांच करने की ज़रूरत नहीं पड़ती और आउटपुट के लिए ज़रूरी एग्रीगेशन थ्रेशोल्ड कम हो जाता है.

अगर कोई नतीजा, निजता से जुड़ी जांचों को पूरा नहीं करता है, तो 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, नए नतीजे की कमज़ोरी का पता लगाने के लिए, आपके पिछले नतीजों के डेटा का इस्तेमाल करता है. इसका मतलब है कि एक ही क्वेरी को बार-बार चलाने से, अंतर की जांच करने के लिए ज़्यादा डेटा मिलता है. इस डेटा का इस्तेमाल, नए नतीजे की कमज़ोरी का आकलन करते समय किया जाता है. इसके अलावा, क्वेरी में इस्तेमाल किया गया डेटा भी बदल सकता है. इससे, निजता की जांच से जुड़े सिद्धांतों का उल्लंघन हो सकता है. ऐसा उन क्वेरी के साथ हो सकता है जिन्हें स्टेबल माना जाता है.

जब आपके जॉब-लेवल के नतीजे काफ़ी अलग होते हैं, लेकिन कोई एक लाइन पिछली जॉब की लाइन से मिलती-जुलती होती है, तो Ads Data Hub उस मिलती-जुलती लाइन को फ़िल्टर कर देगा. इस उदाहरण में, दूसरे जॉब के नतीजों में कैंपेन 123 वाली लाइन को फ़िल्टर किया जाएगा, क्योंकि यह पिछले नतीजे से एक उपयोगकर्ता के हिसाब से अलग है.

जॉब 1
कैंपेन आईडी उपयोगकर्ता
123 400
124 569
जॉब 2
कैंपेन आईडी उपयोगकर्ता
123 401
224 1325

अगर नतीजे के सेट की सभी लाइनों में मौजूद उपयोगकर्ताओं की संख्या, पिछले जॉब के उपयोगकर्ताओं की संख्या से मिलती-जुलती है, तो Ads Data Hub पूरे नतीजे के सेट को फ़िल्टर कर देगा. इस उदाहरण में, दूसरी नौकरी के सभी नतीजे फ़िल्टर किए जाएंगे.

जॉब 1
कैंपेन आईडी उपयोगकर्ता
123 400
124 1367
जॉब 2
कैंपेन आईडी उपयोगकर्ता
123 402
124 1367

नॉइज़ इंजेक्शन का इस्तेमाल करना

नॉइज़ इंजेक्शन एक ऐसी तकनीक है जिसका इस्तेमाल डेटाबेस से क्वेरी करते समय, उपयोगकर्ता की निजता को सुरक्षित रखने के लिए किया जाता है. यह क्वेरी के एग्रीगेट करने वाले SELECT क्लॉज़ में रैंडम नॉइज़ जोड़कर काम करता है. इस नॉइज़ से उपयोगकर्ता की निजता सुरक्षित रहती है. साथ ही, सटीक नतीजे मिलते हैं. इससे अंतर की जांच करने की ज़रूरत नहीं पड़ती. साथ ही, आउटपुट के लिए ज़रूरी एग्रीगेशन थ्रेशोल्ड कम हो जाता है. ज़्यादातर मौजूदा क्वेरी को नॉइज़ मोड में चलाया जा सकता है. हालांकि, ऐसा कुछ सीमाओं के साथ किया जा सकता है. नॉइज़ मोड और नॉइज़ इंजेक्शन से निजता से जुड़ी ज़रूरी शर्तों पर पड़ने वाले असर के बारे में ज़्यादा जानने के लिए, नॉइज़ इंजेक्शन लेख पढ़ें.

डिफ़रेंस चेक की तुलना नॉइज़ इंजेक्शन से करना

असल डेटा
कैंपेन आईडी इंप्रेशन की गिनती
101 35
102 63
201 142
202 21
301 56
302 99
डिफ़रेंस चेकर का इस्तेमाल करके मिले नतीजे
कैंपेन आईडी इंप्रेशन की गिनती
101 35
102 63
201 142
202 21
301 56
302 99
नॉइज़ इंजेक्शन का इस्तेमाल करके मिले नतीजे
कैंपेन आईडी इंप्रेशन की गिनती
101 37.8373
102 60.9104
201 182.0955
202 26.2332
301 58.0871
302 97.5018
नॉइज़ मोड में कैंपेन 101 का उदाहरण
कैंपेन आईडी असल इंप्रेशन शोर जोड़ा गया दिखाए गए इंप्रेशन (ANON_COUNT)
101 35 2.8373 37.8373

फ़िल्टर की गई लाइन की खास जानकारी

फ़िल्टर की गई लाइन की खास जानकारी में, निजता की जांच की वजह से फ़िल्टर किए गए डेटा का मिलान किया जाता है. फ़िल्टर की गई लाइनों में मौजूद डेटा को जोड़ा जाता है और 'अन्य' लाइन में शामिल किया जाता है. फ़िल्टर किए गए डेटा का आगे विश्लेषण नहीं किया जा सकता. हालांकि, इससे यह पता चलता है कि नतीजों से कितना डेटा फ़िल्टर किया गया था.

निजता से जुड़ा डेटा फ़िल्टर करने की सुविधा

अगर आपको अपनी क्वेरी को कई हिस्सों में बांटना है, लेकिन एग्रीगेट किए गए नतीजों को एक साथ रखना है, तो कई छोटी क्वेरी पर निजता की जांच साफ़ तौर पर लागू की जा सकती है. इसके बाद, उन नतीजों को निजता को सुरक्षित रखने वाले तरीके से एक साथ एग्रीगेट किया जा सकता है.

इस्तेमाल के उदाहरण:

  • आप विज्ञापन देने वाले ऐसे व्यक्ति या कंपनी हैं जिसे लिंक किए गए Google Ads खाते में, एट्रिब्यूशन इवेंट टाइप के हिसाब से सभी कन्वर्ज़न देखने हैं. इसमें ईईए का डेटा भी शामिल है.
  • आप मेज़रमेंट पार्टनर हैं और आपको लिंक किए गए Google Ads खाते में, एट्रिब्यूशन इवेंट टाइप के हिसाब से सभी कन्वर्ज़न देखने हैं.

अपने Google Ads खाते के लिए कन्वर्ज़न की कुल संख्या पाने के लिए, OPTIONS(privacy_checked_export=TRUE) क्लॉज़ का इस्तेमाल करके क्वेरी को फिर से लिखा जा सकता है. इससे हर Google सेवा पर अलग-अलग तरीके से निजता की जांच लागू की जा सकती है.

इस सेक्शन में दिए गए फिर से लिखने के उदाहरण में, यह काम किया जाता है:

  1. यह Google की हर सेवा से अलग-अलग क्वेरी करता है. साथ ही, हर इंटरमीडिएट नतीजे के सेट पर निजता से जुड़े चेक लागू करता है.
  2. यह YouTube, Gmail, और Network जैसी हर Google सेवा के लिए, निजता की जांच किए गए नतीजों की एक अलग टेम्प टेबल बनाता है.
  3. यह फ़ंक्शन, निजता की जांच किए गए कन्वर्ज़न की संख्या को एग्रीगेट करता है और उन्हें टेंप टेबल से जोड़ता है.
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 का इस्तेमाल करती है.

क्वेरी सलाहकार

अगर आपका एसक्यूएल मान्य है, लेकिन इससे बहुत ज़्यादा फ़िल्टरिंग ट्रिगर हो सकती है, तो क्वेरी एडवाइज़र, क्वेरी डेवलपमेंट प्रोसेस के दौरान कार्रवाई करने लायक सलाह देता है. इससे आपको अवांछित नतीजों से बचने में मदद मिलती है.

ट्रिगर में ये पैटर्न शामिल होते हैं:

क्वेरी एडवाइज़र का इस्तेमाल करने के लिए:

  • यूज़र इंटरफ़ेस (यूआई). सुझाव, क्वेरी एडिटर में क्वेरी टेक्स्ट के ऊपर दिखेंगे.
  • एपीआई. customers.analysisQueries.validate तरीके का इस्तेमाल करें.

  1. सिर्फ़ उस डेटा को ऐक्सेस किया जाता है जिसे शेयर करने की सहमति दी गई है. जैसे, पैनल के सदस्यों के मामले में. 

  2. हालांकि, निजता से जुड़ी पाबंदियों की वजह से ऐसा नहीं किया जा सकता. जैसे, जब फ़िल्टर की गई लाइन की खास जानकारी में मौजूद उपयोगकर्ता, एग्रीगेशन की ज़रूरी शर्तें पूरी नहीं करते हैं.