Ads Data Hub में, असली उपयोगकर्ता की निजता को सबसे ज़्यादा अहमियत दी जाती है. यह हमारे प्लैटफ़ॉर्म का आधार है. इस निजता को बनाए रखने और अपने ग्राहकों को नियमों का पालन करने में मदद करने के लिए, हम कुछ जांच और पाबंदियां लगाते हैं. इनका मकसद, प्लैटफ़ॉर्म से मिलने वाले डेटा में, अलग-अलग उपयोगकर्ताओं1 का डेटा ट्रांसफ़र होने से रोकना है.
यहां Ads Data Hub की निजता से जुड़ी सुविधाओं के बारे में खास जानकारी दी गई है. इन सुविधाओं के बारे में ज़्यादा जानकारी, नीचे दिए गए सेक्शन में दी गई है:
- स्टैटिक जांच, आपकी क्वेरी में मौजूद स्टेटमेंट की जांच करती है, ताकि निजता से जुड़ी साफ़ तौर पर और तुरंत दिखने वाली समस्याओं का पता लगाया जा सके.
- डेटा ऐक्सेस बजट से यह तय होता है कि किसी डेटा को कितनी बार ऐक्सेस किया जा सकता है.
- एग्रीगेशन की जांच से यह पक्का होता है कि हर पंक्ति में उपयोगकर्ताओं की संख्या ज़रूरत के मुताबिक हो, ताकि असली उपयोगकर्ता की निजता को सुरक्षित रखा जा सके.
- अंतर की जांच (या "अंतर की जांच") की सुविधा, नतीजों के सेट की तुलना करती है. इससे, उपयोगकर्ताओं के कई सेट के डेटा की तुलना करके, अलग-अलग उपयोगकर्ताओं की जानकारी इकट्ठा करने से रोका जा सकता है.
- नॉइज़ इंजेक्शन, अंतर की जांच करने का एक विकल्प है. शोर कम करने वाला मोड, सिर्फ़ मार्केटर के लिए उपलब्ध Ads Data Hub में उपलब्ध है. ग़ैर-ज़रूरी डेटा जोड़ने के बारे में जानने के लिए, मार्केटर के लिए Ads Data Hub की साइट पर यह पेज देखें.
जब कोई नतीजा निजता जांच में पास नहीं होता, तो 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 Ads खाते में, एट्रिब्यूशन इवेंट टाइप के हिसाब से सभी कन्वर्ज़न चाहिए. इसमें ईईए का डेटा भी शामिल है.
- आप एक मेज़रमेंट पार्टनर हैं और आपको अपने लिंक किए गए Google Ads खाते में, एट्रिब्यूशन इवेंट टाइप के हिसाब से सभी कन्वर्ज़न चाहिए.
अपने Google Ads खाते के लिए कन्वर्ज़न की कुल संख्या पाने के लिए, OPTIONS(privacy_checked_export=TRUE)
क्लॉज़ का इस्तेमाल करके क्वेरी को फिर से लिखा जा सकता है. इससे, Google की हर सेवा पर निजता जांच को अलग-अलग लागू किया जा सकता है.
इस सेक्शन में दिए गए उदाहरण में, ये काम किए गए हैं:
- यह Google की हर सेवा के लिए अलग-अलग क्वेरी करता है. साथ ही, हर इंटरमीडिएट नतीजे के सेट पर निजता जांच को साफ़ तौर पर लागू करता है.
- यह Google की हर सेवा के लिए, निजता की जांच किए गए नतीजों के लिए एक अलग टेम्पल टेबल बनाता है: YouTube, Gmail, और नेटवर्क.
- यह टेम्पो मेज़र से, निजता की जांच के बाद मिले कन्वर्ज़न की संख्या को इकट्ठा और जोड़ता है.
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
तरीके का इस्तेमाल करें.
-
पैनल के सदस्यों के मामले में, वे डेटा शेयर नहीं किया जा सकता जिसे शेयर करने की सहमति उन्होंने दी है. ↩
-
जब तक निजता से जुड़ी पाबंदियों से रोक न लगाई गई हो. जैसे, जब फ़िल्टर की गई लाइन की खास जानकारी में मौजूद उपयोगकर्ता, एग्रीगेशन की ज़रूरी शर्तें पूरी न करते हों. ↩