एट्रिब्यूशन रिपोर्टिंग के लिए एग्रीगेशन कुंजियों को समझना

एग्रीगेशन कुंजियां क्या होती हैं, Attribution Reporting API में उनका इस्तेमाल कैसे होता है, और लक्ष्यों को कुंजियों में कैसे बदला जा सकता है.

विज्ञापन टेक्नोलॉजी से जुड़ी सेवा देने वाली एक कंपनी होने के नाते, आप कई जगहों पर अलग-अलग प्रॉडक्ट कैटगरी के लिए कैंपेन चला रही हैं. आप चाहें, तो विज्ञापन देने वाले लोगों या कंपनियों को इन सवालों के जवाब दें:

  1. हर इलाके में, मेरे हर कैंपेन से हर प्रॉडक्ट कैटगरी की कितनी खरीदारी हुई?
  2. हर इलाके में, मेरे हर कैंपेन से हर प्रॉडक्ट कैटगरी के लिए कितना रेवेन्यू हुआ?

विज्ञापन टेक्नोलॉजी से जुड़ी सेवा देने वाली कई कंपनियां, विज्ञापन देने वाले लोगों या कंपनियों को अलग-अलग तरह के कन्वर्ज़न को कॉन्फ़िगर करने के लिए बढ़ावा देती हैं. हालांकि, खरीदारी जैसे सबसे अहम कन्वर्ज़न पर फ़ोकस करके, यह पक्का किया जा सकता है कि इन अहम इवेंट के बारे में खास जानकारी वाले नतीजे पूरी और सटीक हों.

इसके लिए, आपको डेटा इकट्ठा करने से पहले यह सोचना होगा कि आपको किन सवालों के जवाब देने हैं.

डाइमेंशन, कुंजियां, और वैल्यू

इन सवालों के जवाब के लिए, चलिए डाइमेंशन, कुंजियों, और वैल्यू पर एक नज़र डालते हैं.

डाइमेंशन

जैसा कि यहां बताया गया है, आपके कैंपेन से मिलने वाले रेवेन्यू को समझने के लिए, आपको इन डाइमेंशन को ट्रैक करना होगा:

  • विज्ञापन कैंपेन आईडी: किसी कैंपेन के लिए आइडेंटिफ़ायर.
  • भूगोल आईडी: वह भौगोलिक क्षेत्र जहां विज्ञापन दिखाया गया था.
  • प्रॉडक्ट कैटगरी: प्रॉडक्ट का वह टाइप, जो आपने बताया है.

कैंपेन आईडी और देश या इलाके का आईडी डाइमेंशन, विज्ञापन दिखाए जाने के दौरान (विज्ञापन दिखाने का समय) पता चलता है. वहीं, प्रॉडक्ट कैटगरी की जानकारी ट्रिगर इवेंट से तब मिलेगी, जब उपयोगकर्ता कन्वर्ज़न (कन्वर्ज़न का समय) को पूरा करेगा.

इस उदाहरण के लिए, जिन डाइमेंशन को ट्रैक करना है उन्हें नीचे दी गई इमेज में दिखाया गया है:

कैंपेन आईडी, देश या इलाका आईडी, और प्रॉडक्ट कैटगरी.
ट्रैक किए जाने वाले डाइमेंशन

एग्रीगेशन कुंजियां (बकेट) क्या होती हैं?

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

एग्रीगेशन कुंजी (कम शब्दों में कुंजी) डेटा का वह हिस्सा होती है जो ट्रैक किए जा रहे डाइमेंशन की वैल्यू दिखाती है. बाद में, डेटा को एग्रीगेशन की हर कुंजी के साथ एग्रीगेट किया जाता है.

उदाहरण के लिए, मान लें कि आपको प्रॉडक्ट कैटगरी, देश या इलाके का आईडी, और कैंपेन आईडी डाइमेंशन ट्रैक करने हैं.

जब 'जियोग्राफ़ी आईडी 7' में मौजूद कोई उपयोगकर्ता, कैंपेन आईडी 12 का विज्ञापन देखता है और बाद में प्रॉडक्ट कैटगरी 25 में कोई प्रॉडक्ट खरीदकर ग्राहक में बदलता है, तो आपके पास ऐसी एग्रीगेशन कुंजी सेट करने का विकल्प होता है जो नीचे दी गई इमेज में दिख रही एग्रीगेशन कुंजी से मेल खाती हो:

कन्वर्ज़न के लिए एग्रीगेशन कुंजी.

आप बाद में देखेंगे कि एग्रीगेशन कुंजी बिलकुल वैसी नहीं दिखती जैसी असल में दिखती है, लेकिन अभी के लिए आइए कुंजी में शामिल जानकारी पर फ़ोकस करते हैं.

एग्रीगेट की जा सकने वाली वैल्यू क्या होती हैं?

हमने जो डाइमेंशन बताए हैं उनसे जुड़े अपने सवालों के जवाब पाने के लिए, आपको यह जानकारी चाहिए:

  • खरीदारी की संख्या (खरीदारी की संख्या). इकट्ठा किए जाने और खास जानकारी वाली रिपोर्ट में उपलब्ध कराए जाने के बाद, यह खरीदारी की कुल संख्या (खास जानकारी वाली वैल्यू) होगी.
  • हर खरीदारी से मिलने वाला रेवेन्यू (परचेज़ कन्वर्ज़न की कुल वैल्यू). इकट्ठा किए जाने और खास जानकारी वाली रिपोर्ट में उपलब्ध होने के बाद, यह कुल रेवेन्यू (खास जानकारी की वैल्यू) होगा.

इनमें से हर एक कन्वर्ज़न के लिए खरीदारी की संख्या और एक कन्वर्ज़न के लिए परचेज़ वैल्यू—इकट्ठा की जा सकने वाली वैल्यू होती है. एग्रीगेट की जा सकने वाली वैल्यू को मेज़रमेंट के लक्ष्यों की वैल्यू माना जा सकता है.

सवाल एग्रीगेट की जा सकने वाली वैल्यू = मेज़रमेंट का लक्ष्य
कितनी खरीदारी... खरीदारी की संख्या
कितना रेवेन्यू... खरीदारी की वैल्यू

जब भूगोल आईडी 7 में मौजूद कोई उपयोगकर्ता कैंपेन आईडी 12 का विज्ञापन देखता है और बाद में 120 डॉलर में प्रॉडक्ट कैटगरी 25 का प्रॉडक्ट खरीदकर (यह मानते हुए कि आपकी मुद्रा डॉलर है) तो ग्राहक में बदलने के लिए, ऐसी एग्रीगेशन कुंजी और एग्रीगेट की जा सकने वाली वैल्यू सेट की जा सकती हैं, जो कुछ इस तरह दिखती हैं:

एग्रीगेशन कुंजियां और वैल्यू.
एग्रीगेशन की और एग्रीगेट की जा सकने वाली वैल्यू. ध्यान दें, एग्रीगेशन जा सकने वाली वैल्यू नीले बैकग्राउंड पर बोल्ड होती हैं.

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

एग्रीगेट की गई इनसाइट जनरेट की जा रही हैं.

आपके मेज़रमेंट लक्ष्यों के लिए एग्रीगेट की गई इनसाइट जनरेट करने के लिए, इकट्ठा की जा सकने वाली वैल्यू को जोड़ा जाता है.

ध्यान दें कि इस डायग्राम में डिक्रिप्शन को छोड़ दिया गया है. साथ ही, बिना किसी शोर के एक आसान उदाहरण को दिखाया गया है. अगले सेक्शन में, हम इस उदाहरण के बारे में ज़्यादा जानकारी देंगे.

कुंजियों और वैल्यू से लेकर रिपोर्ट तक

अब इस बारे में बात करते हैं कि इकट्ठा की जा सकने वाली कुंजियां और वैल्यू, रिपोर्ट से किस तरह जुड़ी होती हैं.

इकट्ठा की जा सकने वाली रिपोर्ट

जब कोई उपयोगकर्ता किसी विज्ञापन पर क्लिक करता है या उसे देखने के बाद ग्राहक में बदलता है, तो आपको ब्राउज़र को एक {aggregation key, aggregatable value} जोड़ी स्टोर करने का निर्देश देना होता है.

हमारे उदाहरण में, जब कोई उपयोगकर्ता किसी विज्ञापन पर क्लिक करता है या उसे देखने के बाद ग्राहक में बदलता है, तो आपने ब्राउज़र को दो योगदान (हर मेज़रमेंट लक्ष्य के लिए एक) जनरेट करने का निर्देश दिया है.

दो योगदान जनरेट किए जा रहे हैं.

बाद में आपको दिखेगा कि {agregation key, aggregatable value} एग्रीगेट की जा सकने वाली रिपोर्ट बिलकुल ऐसी नहीं दिखती—लेकिन अभी के लिए, आइए रिपोर्ट में शामिल जानकारी पर फ़ोकस करते हैं.

जब ब्राउज़र को दो योगदान जनरेट करने का निर्देश दिया जाता है, तो ब्राउज़र एक एग्रीगेट की जा सकने वाली रिपोर्ट जनरेट करता है. ऐसा तब होता है, जब कन्वर्ज़न किसी पिछले व्यू या क्लिक से मैच हो सकता हो.

इकट्ठा की जा सकने वाली रिपोर्ट में ये चीज़ें शामिल होती हैं:

नतीजे के तौर पर तैयार की गई ऐसी रिपोर्ट जिसे एग्रीगेट किया जा सकता है.

एग्रीगेट की जा सकने वाली रिपोर्ट, JSON फ़ॉर्मैट में होती हैं. इनमें अन्य चीज़ों के अलावा, एक पेलोड फ़ील्ड भी होता है. इसका इस्तेमाल खास जानकारी वाली फ़ाइनल रिपोर्ट में डेटा इनपुट के तौर पर किया जाएगा.

पेलोड में योगदान की एक सूची होती है. हर योगदान, {agregation key, aggregatable value} की जोड़ी होता है:

  • bucket: एग्रीगेशन कुंजी, जिसे बाइट स्ट्रिंग के तौर पर एन्कोड किया जाता है.
  • value: उस मेज़रमेंट लक्ष्य के लिए एग्रीगेट की जा सकने वाली वैल्यू, जिसे बाइट स्ट्रिंग के तौर पर एन्कोड किया जाता है.

यहां एक उदाहरण दिया गया है:

{
  "data": [
    {
      "bucket": "111001001",
      "value": "11111010000",
    }
  ],
  "operation": "histogram"
}

व्यावहारिक तौर पर, एग्रीगेट की जा सकने वाली रिपोर्ट को इस तरह एन्कोड किया जाता है कि बकेट और वैल्यू, पिछले उदाहरण (यानी बकेट \u0000\u0000\x80\u0000 जैसी दिख सकती हैं) से अलग दिखेंगी. बकेट और value, दोनों बाइट स्ट्रिंग हैं.

खास जानकारी वाली रिपोर्ट

एग्रीगेट की जा सकने वाली रिपोर्ट, कई ब्राउज़र और डिवाइसों (उपयोगकर्ताओं) से इस तरह इकट्ठा की जाती हैं:

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

नतीजा, एक खास जानकारी वाली रिपोर्ट होती है जिसमें {aggregation key, Summary value} पेयर का सेट होता है.

खास जानकारी वाली रिपोर्ट में, की-वैल्यू पेयर का JSON डिक्शनरी की स्टाइल वाला सेट होता है. हर पेयर में ये शामिल होते हैं:

  • bucket: एग्रीगेशन कुंजी, जिसे बाइट स्ट्रिंग के तौर पर एन्कोड किया जाता है.
  • value: किसी मेज़रमेंट लक्ष्य के लिए दशमलव में खास जानकारी. यह वैल्यू, इकट्ठा की जा सकने वाली सभी उपलब्ध रिपोर्ट से जुड़ी होती है. इसमें ज़्यादा गै़र-ज़रूरी डेटा भी शामिल होता है.

उदाहरण:

[
  {"bucket": "111001001", "value": "2558500"},
  {"bucket": "111101001", "value": "3256211"},
  {...}
]

व्यावहारिक तौर पर, समरी रिपोर्ट को इस तरह एन्कोड किया जाता है कि बकेट और वैल्यू, उदाहरण में बताए गए तरीके से अलग दिखें (यानी, बकेट \u0000\u0000\x80\u0000 जैसी दिख सकती है). बकेट और value, दोनों बाइट स्ट्रिंग हैं.

एग्रीगेशन कुंजियां इस्तेमाल की जा रही हैं

एग्रीगेशन कुंजियां (बकेट) विज्ञापन टेक्नोलॉजी से जुड़ी सेवा देने वाली कोई कंपनी तय करती हैं. आम तौर पर, ये दो चरणों में तय की जाती हैं: किसी विज्ञापन पर क्लिक करने या उसे देखने के बाद और उपयोगकर्ता के ग्राहक में बदलने पर.

कुंजी का स्ट्रक्चर

हम कुंजी के तौर पर एन्कोड किए गए डाइमेंशन के सेट को तय करने के लिए, मुख्य स्ट्रक्चर शब्द का इस्तेमाल करेंगे.

उदाहरण के लिए, कैंपेन आईडी × GeoID × प्रॉडक्ट कैटगरी एक मुख्य स्ट्रक्चर है.

कुंजी का स्ट्रक्चर.

कुंजी के टाइप

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

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

हमारे पिछले उदाहरण में देखें कि मेज़रमेंट के इस लक्ष्य टाइप में दो अलग-अलग वैल्यू हो सकती हैं:

  • खरीदारी की संख्या, मेज़रमेंट के पहले तरह के लक्ष्य को दिखाती है.
  • खरीदारी की वैल्यू, मेज़रमेंट के दूसरे लक्ष्य का टाइप है.
मेज़रमेंट के लक्ष्य और मेज़रमेंट के लक्ष्य के टाइप.

अगर आपके पास n मेज़रमेंट लक्ष्य थे, तो मेज़रमेंट लक्ष्य टाइप में अलग-अलग तरह की वैल्यू n होगी.

कुंजी के डाइमेंशन को मेट्रिक माना जा सकता है. उदाहरण के लिए, "हर देश/इलाके में हर कैंपेन पर किसी खास प्रॉडक्ट की खरीदारी की संख्या".

कुंजी का साइज़, डाइमेंशन का साइज़

कुंजी का ज़्यादा से ज़्यादा साइज़ बिट में तय होता है—पूरी कुंजी बनाने के लिए शून्य और बाइनरी में मौजूद संख्याओं की संख्या. एपीआई 128 बिट की मुख्य लंबाई की अनुमति देता है.

इस साइज़ में बहुत बारीकी से जानकारी देने वाली कुंजियों का इस्तेमाल किया जा सकता है. हालांकि, अगर ज़्यादा जानकारी वाली कुंजियों की मदद से, ग़ैर-ज़रूरी वैल्यू ली जाती हैं, तो ज़्यादा ग़ैर-ज़रूरी वैल्यू मिल सकती हैं. शोर के बारे में ज़्यादा जानने के लिए, शोर को समझना लेख पढ़ें.

जैसा कि पहले बताया जा चुका है, डाइमेंशन को एग्रीगेशन कुंजी में एन्कोड किया जाता है. हर डाइमेंशन के लिए एक तय संख्या होती है. इसका मतलब है कि डाइमेंशन कितनी अलग-अलग वैल्यू ले सकता है. एलिमेंट की संख्या के आधार पर, हर डाइमेंशन को बिट की एक तय संख्या से दिखाया जाना चाहिए. n बिट की मदद से, 2n अलग-अलग विकल्प दिखाए जा सकते हैं.

उदाहरण के लिए, देश वाले डाइमेंशन में एलिमेंट की संख्या 200 हो सकती है, जबकि दुनिया में करीब 200 देश हैं. इस डाइमेंशन को कितने बिट की ज़रूरत है?

7 बिट में सिर्फ़ 27 = 128 अलग-अलग विकल्प सेव होंगे, जो ज़रूरी 200 से कम हैं.

8 बिट, 28 = 256 अलग-अलग विकल्पों को सेव करेंगे, जो कि ज़रूरी 200 से ज़्यादा हैं. इसलिए, इस डाइमेंशन को कोड में बदलने के लिए n=8 बिट का इस्तेमाल किया जा सकता है.

कुंजी एन्कोडिंग

ब्राउज़र में कुंजियां सेट करते समय, उन्हें हेक्साडेसिमल में एन्कोड किया जाना चाहिए. खास जानकारी वाली रिपोर्ट में, कुंजियां बाइनरी में दिखेंगी (और इन्हें बकेट के नाम से जाना जाएगा).

पूरी कुंजी बनाने के लिए दो मुख्य चीज़ें सेट करना

मान लें कि इन डाइमेंशन को ट्रैक करने के लिए, किसी पासकोड का इस्तेमाल किया जाता है:

  • कैंपेन आईडी
  • देश या इलाका आईडी
  • प्रॉडक्ट कैटगरी

कैंपेन आईडी और देश या इलाके का आईडी डाइमेंशन, विज्ञापन दिखाए जाने के दौरान (विज्ञापन दिखाने का समय) पता चलता है. वहीं, प्रॉडक्ट कैटगरी की जानकारी ट्रिगर इवेंट से तब मिलेगी, जब उपयोगकर्ता कन्वर्ज़न (कन्वर्ज़न का समय) को पूरा करेगा.

इसका मतलब है कि व्यावहारिक तौर पर, कुंजी को दो चरणों में सेट किया जा सकता है:

  1. आपको क्लिक या देखे जाने के समय पर कुंजी का एक हिस्सा—कैंपेन आईडी × भौगोलिक आईडी—सेट करना होगा.
  2. आपको कन्वर्ज़न के समय, कुंजी के दूसरे हिस्से यानी प्रॉडक्ट कैटगरी को सेट करना होगा.

चाबियों के इन अलग-अलग हिस्सों को की टुकड़े कहा जाता है.

किसी कुंजी की गिनती, उसके मुख्य टुकड़ों के XOR (^) को निकालकर किया जाता है.

XOR-ing कुंजी के टुकड़े.

उदाहरण:

  • सोर्स-साइड कुंजी का टुकड़ा = 0x159
  • ट्रिगर-साइड कुंजी का टुकड़ा = 0x400
  • कुंजी = 0x159 ^ 0x400 = 0x559

अहम हिस्सों को अलाइन करना

ध्यान से रखे गए 64-बिट फ़िलर/ऑफ़सेट (सोलह शून्य) का इस्तेमाल करके, दो 64-बिट कुंजी के हिस्सों को 128 बिट तक बढ़ाया जा सकता है. XOR-ing मुख्य टुकड़ों को जोड़ने के बराबर होता है, जिससे उनके साथ तर्क करना और पुष्टि करना आसान होता है:

  • सोर्स-साइड कुंजी का टुकड़ा = 0xa7e297e7c8c8d0540000000000000000
  • ट्रिगर-साइड कुंजी का टुकड़ा = 0x0000000000000000674fbe308a597271
  • कुंजी = 0xa7e297e7c8c8d0540000000000000000 ^ 0x0000000000000000674fbe308a597271 = 0xa7e297e7c8c8d054674fbe308a597271

हर विज्ञापन पर क्लिक या व्यू के लिए कई कुंजियां

व्यावहारिक तौर पर, हर एट्रिब्यूशन सोर्स इवेंट (विज्ञापन पर क्लिक या व्यू) के लिए एक से ज़्यादा कुंजियां सेट की जा सकती हैं. उदाहरण के लिए, इन्हें सेट किया जा सकता है:

  • भूगोल आईडी × कैंपेन आईडी को ट्रैक करने वाली कुंजी.
  • क्रिएटिव टाइप × कैंपेन आईडी को ट्रैक करने वाली एक और कुंजी.

एक और उदाहरण के लिए रणनीति B देखें.

डाइमेंशन को कुंजियों में एन्कोड करना

खास जानकारी वाली रिपोर्ट का अनुरोध करते समय, आपको एग्रीगेशन सेवा को यह बताना होगा कि आपको किन मेट्रिक का ऐक्सेस चाहिए. इसके लिए, आपको एग्रीगेशन कुंजियों के खास सेट की खास जानकारी वाली रिपोर्ट का अनुरोध करना होगा.

खास जानकारी वाली रिपोर्ट में रॉ {key, Summary value} पेयर होता है और कुंजी के बारे में कोई अतिरिक्त जानकारी नहीं होती है. इसका मतलब कुछ इस तरह है:

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

मुख्य संरचना मैप का इस्तेमाल करके डाइमेंशन को कोड में बदलना

डाइमेंशन को कुंजियों में एन्कोड करने के लिए, अपनी कुंजियां तय करने (विज्ञापन दिखाने के समय से पहले) करके, समय से पहले एक 'की स्ट्रक्चर मैप' बनाया और मैनेज किया जा सकता है.

'की स्ट्रक्चर मैप' आपके हर डाइमेंशन और कुंजी में उनकी जगह को दिखाता है.

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

यहां एक उदाहरण दिया गया है:

मान लें कि आपको खास कैंपेन, भौगोलिक क्षेत्रों, और प्रॉडक्ट के लिए, परचेज़ और परचेज़ वैल्यू, दोनों को ट्रैक करना है.

प्रॉडक्ट कैटगरी, देश/इलाके का आईडी, और कैंपेन आईडी, आपकी कुंजियों में डाइमेंशन के तौर पर होने चाहिए. इसके अलावा, अगर आपको मेज़रमेंट के दो अलग-अलग लक्ष्यों यानी खरीदारी की संख्या और परचेज़ वैल्यू को ट्रैक करना है, तो आपको अपनी कुंजी में एक ऐसा डाइमेंशन जोड़ना होगा जो मुख्य टाइप को ट्रैक करता हो. इसकी मदद से, खास जानकारी वाली रिपोर्ट में {key, aggregatable value} जोड़े जाने के बाद, यह तय किया जा सकेगा कि एग्रीगेशन वाली वैल्यू असल में क्या दिखाती है.

मेज़रमेंट के इन लक्ष्यों के साथ, आपकी कुंजी में ये डाइमेंशन होते हैं:

  • प्रॉडक्ट कैटगरी
  • मेज़रमेंट के लक्ष्य का टाइप
  • देश या इलाका आईडी
  • कैंपेन आईडी

अब, हर डाइमेंशन को देखते हुए, मान लेते हैं कि आपके इस्तेमाल के उदाहरण के लिए आपको नीचे दी गई जानकारी ट्रैक करनी होगी:

  • प्रॉडक्ट की 29 कैटगरी.
  • आठ अलग-अलग भौगोलिक क्षेत्र: उत्तरी अमेरिका, मध्य अमेरिका, दक्षिण अमेरिका, यूरोप, अफ़्रीका, एशिया, कैरेबियन, और ओशिएनिया.
  • 16 अलग-अलग कैंपेन.

अपनी कुंजी के हर डाइमेंशन को कोड में बदलने के लिए ज़रूरी बिट की संख्या यहां दी गई है:

  • प्रॉडक्ट कैटगरी: 5 बिट (25 = 32 > 29).
  • मेज़रमेंट का लक्ष्य टाइप: 1 बिट. मेज़रमेंट का लक्ष्य, खरीदारी की संख्या या परचेज़ वैल्यू है. इसका मतलब है कि दो अलग-अलग संभावनाएं हैं; इसलिए, इसे स्टोर करने के लिए एक बिट काफ़ी होगा.
  • भूगोल आईडी: 3 बिट (23 = 8). हर बाइनरी वैल्यू किस भौगोलिक क्षेत्र को दिखाती है, यह जानने के लिए आपको भूगोल आईडी के लिए डाइमेंशन मैप भी तय करना होगा. आपके देश या इलाके के आईडी वाले डाइमेंशन के लिए डाइमेंशन मैप, ऐसा दिख सकता है:

    कुंजी में बाइनरी वैल्यू भूगोल
    000 उत्तरी अमेरिका
    001 मध्य अमेरिका
    010 दक्षिण अमेरिका
    011 यूरोप
    100 अफ़्रीका
    101 एशिया
    110 कैरिबियन
    111 ओशीनिया

  • कैंपेन आईडी: 4 बिट (24 = 16)

इस स्ट्रक्चर के बाद वाली कुंजियां 13 बिट (5 + 1 + 3 + 4) होंगी.

इस उदाहरण के लिए, इन कुंजियों के लिए की स्ट्रक्चर मैप ऐसा दिखेगा:

मुख्य स्ट्रक्चर वाला मैप.

कुंजी के डाइमेंशन का क्रम आपके हिसाब से तय होता है.

यह समझाने के लिए कि डाइमेंशन, मुख्य स्ट्रक्चर कैसे बनाते हैं, हम बाइनरी रिप्रज़ेंटेशन का इस्तेमाल करेंगे. इसलिए, कैंपेन आईडी (फ़र्स्ट बिट) सबसे दाईं ओर और प्रॉडक्ट कैटगरी (लास्ट बिट) सबसे बाईं ओर है.

हर डाइमेंशन में, सबसे अहम बिट—जिसमें सबसे ज़्यादा न्यूमेरिक वैल्यू होती है—यानी सबसे बाईं ओर मौजूद बिट. सबसे कम महत्वपूर्ण बिट—जिसका सबसे छोटा संख्यात्मक मान होता है—सबसे दाईं ओर का बिट होता है.

चलिए देखते हैं कि किसी कुंजी को डिकोड करने के लिए आप की स्ट्रक्चर मैप का इस्तेमाल कैसे करेंगे.

मान लीजिए कि 0b1100100111100 को एक आर्बिट्रेरी उदाहरण कुंजी के रूप में लेते हैं और मान लेते हैं कि आपके पास यह जानने का कोई तरीका है कि यह कुंजी पिछले उदाहरण में मुख्य स्ट्रक्चर मैप का पालन करती है.

की स्ट्रक्चर मैप के मुताबिक, यह बटन 11001 0 011 1100 में डिकोड हो जाएगा.

इसलिए, 0b1100100111100 कुंजी, यूरोप में लॉन्च किए गए कैंपेन आईडी 12 के लिए, प्रॉडक्ट कैटगरी 25 की खरीदारी की संख्या दिखाती है.

हैश फ़ंक्शन का इस्तेमाल करके डाइमेंशन को कोड में बदलना

की स्ट्रक्चर मैप का इस्तेमाल करने के बजाय, डाइनैमिक तौर पर एक समान और भरोसेमंद तरीके से कुंजियां जनरेट करने के लिए हैशिंग फ़ंक्शन का इस्तेमाल किया जा सकता है.

यह इस तरह से काम करता है:

  1. कोई हैशिंग एल्गोरिदम चुनें.
  2. विज्ञापन दिखाते समय, ऐसी स्ट्रिंग जनरेट करें जिसमें वे सभी डाइमेंशन शामिल हों जिन्हें आपको ट्रैक करना है. साथ ही, उनकी वैल्यू भी शामिल करें. सोर्स-साइड कुंजी का टुकड़ा जनरेट करने के लिए, इस स्ट्रिंग को हैश करें और अलाइन करें के लिए, शून्य के 64-बिट सफ़िक्स को जोड़ें को ट्रिगर-साइड कुंजी के टुकड़ा से बदल दें और XOR के बारे में रीज़निंग से जुड़े सवालों के जवाब देना आसान बनाएं.
    • सोर्स-साइड कुंजी का टुकड़ा
      = <64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000…>
    • ध्यान दें कि COUNT, मुख्य स्ट्रक्चर मैप वाले तरीके में उसी चीज़ को measurementGoalType=0 के तौर पर कोड में बदलता है. COUNT ज़्यादा बेहतर और साफ़ है.
  3. कन्वर्ज़न के समय, एक ऐसी स्ट्रिंग जनरेट करें जिसमें वे सभी डाइमेंशन शामिल हों जिन्हें आपको ट्रैक करना है और करते हैं. ट्रिगर-साइड कुंजी का टुकड़ा जनरेट करने के लिए, इस स्ट्रिंग को हैश करके शून्य का 64-बिट प्रीफ़िक्स जोड़ें:
    • ट्रिगर-साइड कुंजी का टुकड़ा = <64-bit 00000000…><64-bit hex hash("productCategory=25")>
  4. ब्राउज़र कुंजी जनरेट करने के लिए, इन कुंजी के हिस्सों को XORs करता है.
    • 128-बिट एग्रीगेशन कुंजी
      = <64-bit hex source-side key piece hash><64-bit hex source-side key piece hash>
  5. बाद में, जब आप इस कुंजी की खास जानकारी वाली रिपोर्ट का अनुरोध करने के लिए तैयार हों, तो उसे तुरंत जनरेट करें:
    • अपनी दिलचस्पी वाले डाइमेंशन के आधार पर, सोर्स-साइड और ट्रिगर-साइड कुंजी जनरेट करें, जैसा कि आपने पहले किया था.
      • सोर्स-साइड कुंजी का टुकड़ा
        = <64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000…>
      • ट्रिगर-साइड कुंजी का टुकड़ा
        = <64-bit 00000000…><64-bit hex hash("productCategory=25")>
      • ट्रिगर-साइड कुंजी का टुकड़ा = toHex(hash("productCategory=25"))
    • ब्राउज़र की तरह ही, इन मुख्य हिस्सों को XOR करके वही कुंजी जनरेट करें जिसे ब्राउज़र ने पहले जनरेट किया था.
      • 128-बिट एग्रीगेशन कुंजी
        = <64-bit source-side key piece hash><64-bit source-side key piece hash>

अगर हैश पर आधारित इस तरीके का इस्तेमाल किया जा रहा है, तो ये कुछ सलाह दी गई हैं:

  • डाइमेंशन के लिए हमेशा एक जैसे क्रम का इस्तेमाल करें. इससे यह पक्का होता है कि आपके हैश फिर से जनरेट किए जा सकते हैं. ("COUNT, CampaignID=12, GeoID=7", "COUNT, GeoID=7, CampaignID=12" के जैसा हैश नहीं जनरेट करेगा). इसे पाने का एक आसान तरीका यह है कि डाइमेंशन को अक्षरों और अंकों के हिसाब से क्रम में लगाया जाए. हम उदाहरण में यही करेंगे. हालांकि, डाइमेंशन में COUNT या VALUE को हमेशा पहला आइटम माना जाएगा. इसे आसानी से पढ़ा जा सकता है, क्योंकि COUNT या VALUE ऐसी जानकारी को कोड में बदलते हैं जो अन्य सभी डाइमेंशन की तुलना में सैद्धांतिक तौर पर थोड़ी अलग होती है.
  • उन डाइमेंशन के सेट को ट्रैक करें जिनका इस्तेमाल कुंजियों में किया जा रहा है. आपको डाइमेंशन के उस सेट के आधार पर कुंजियां जनरेट नहीं करनी हैं जिसका आपने कभी इस्तेमाल नहीं किया है.
  • किसी सही हैश फ़ंक्शन का इस्तेमाल करने पर, हैश एक जैसे फ़ंक्शन बहुत कम आते हैं. हालांकि, पहले इस्तेमाल किए गए हैश (जिन्हें एग्रीगेशन सेवा से मिलने वाले नतीजों को समझने के लिए सेव किया जाना चाहिए) की जांच करने से, पुरानी कुंजियों के साथ टकराव होने वाली नई कुंजियों से बचा जा सकता है.

हर क्लिक के लिए एक कन्वर्ज़न या व्यू के उदाहरण में, हैश पर आधारित कुंजियों को इस्तेमाल करने का तरीका देखें.

इकट्ठा की जा सकने वाली वैल्यू

जब कोई उपयोगकर्ता ग्राहक में बदलता है, तब विज्ञापन टेक्नोलॉजी से जुड़ी कंपनी, एग्रीगेट की जा सकने वाली वैल्यू सेट करती है.

उपयोगकर्ता की निजता की सुरक्षा के लिए, हर उपयोगकर्ता के योगदान की ऊपरी सीमा तय होती है. किसी एक सोर्स (विज्ञापन पर क्लिक या व्यू) से जुड़ी सभी इकट्ठा की जा सकने वाली वैल्यू में, योगदान की एक तय सीमा से ज़्यादा वैल्यू नहीं हो सकती.

हम इस सीमा को CONTRIBUTION_BUDGET कहेंगे. जानकारी में, इस सीमा को L1 बजट कहा जाता है, लेकिन यह CONTRIBUTION_BUDGET के बराबर है.

योगदान के बजट के बारे में ज़्यादा जानने के लिए, खास जानकारी वाली रिपोर्ट के लिए योगदान का बजट देखें.

उदाहरण: प्रति क्लिक या व्यू एक कन्वर्ज़न

उदाहरण के लिए, मान लें कि आपको इन सवालों के जवाब चाहिए:

  • हर क्षेत्र में कौनसी प्रॉडक्ट कैटगरी सबसे ज़्यादा अहम हैं?
  • हर इलाके में कौनसी कैंपेन रणनीतियां सबसे ज़्यादा असरदार हैं?

यह भी मान लें कि आपके इस्तेमाल के उदाहरण के लिए, आपको हर हफ़्ते की अहम जानकारी की ज़रूरत होगी.

आपको इन्हें भी ट्रैक करना होगा:

  • 16 अलग-अलग कैंपेन.
  • आठ अलग-अलग भौगोलिक क्षेत्र: उत्तरी अमेरिका, मध्य अमेरिका, दक्षिण अमेरिका, यूरोप, अफ़्रीका, एशिया, कैरेबियन, और ओशिएनिया.
  • 29 अलग-अलग प्रॉडक्ट कैटगरी.

किसका आकलन करें

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

इस उदाहरण में, हम उन कैंपेन सेटअप पर फ़ोकस करेंगे जिनमें हर क्लिक या व्यू के लिए सिर्फ़ एक कन्वर्ज़न मेज़र किया जाता है: खरीदारी.

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

मुद्रा क्या है?

अलग-अलग इलाकों में कैंपेन चलाने का मतलब है कि मुद्राओं को ध्यान में रखा जाना चाहिए. इसके लिए, ये काम किए जा सकते हैं:

  • एग्रीगेशन कुंजियों में मुद्रा को एक खास डाइमेंशन बनाएं.
  • या किसी कैंपेन आईडी की मुद्रा का अनुमान लगाएं और सभी मुद्राओं को रेफ़रंस मुद्राओं में बदलें.

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

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

लक्ष्यों को बटनों में बदलें

मेज़रमेंट के लक्ष्यों और मेट्रिक के साथ आपके पास मुख्य रणनीति बनाई है. आइए, इनमें से दो रणनीतियों पर फ़ोकस करते हैं:

  • रणनीति A: एक विस्तृत कुंजी ढांचा.
  • रणनीति B: दो अनुमानित मुख्य स्ट्रक्चर.

रणनीति A: एक गहरा पेड़ (एक विस्तृत कुंजी संरचना)

रणनीति A में, एक विस्तृत कुंजी स्ट्रक्चर का इस्तेमाल किया जाता है, जिसमें सभी आपके लिए ज़रूरी डाइमेंशन:

एक विस्तृत कुंजी स्ट्रक्चर

आपकी सभी कुंजियां इस स्ट्रक्चर का इस्तेमाल करती हैं.

दो मेज़रमेंट के लिए, इस पासकोड स्ट्रक्चर को दो तरह के मुख्य स्ट्रक्चर में बांटा जा सकता है लक्ष्य.

  • कुंजी टाइप 0: मेज़रमेंट लक्ष्य का टाइप = 0, जिसे आपको खरीदारी की संख्या.
  • कुंजी टाइप 1: मेज़रमेंट लक्ष्य का टाइप = 1, जिसे आपको परचेज़ कन्वर्ज़न का कुल मान है.

खास जानकारी वाली रिपोर्ट इस तरह दिखती हैं:

रणनीति की खास जानकारी वाली रिपोर्ट.

रणनीति A को "एक गहरा पेड़" रणनीति:

  • समरी रिपोर्ट की हर वैल्यू, उन सभी प्रॉपर्टी से जुड़ी होती है ट्रैक किए जा रहे हैं.
  • खास जानकारी वाली इन वैल्यू को हर डाइमेंशन के साथ रोल अप किया जा सकता है, इसलिए ये रोलअप, आपके डाइमेंशन की संख्या जितने गहरे हो सकते हैं.

रणनीति A के साथ, आपको अपने सवालों के जवाब इस तरह देने होंगे:

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

रणनीति A की मदद से, आप इस तीसरे सवाल का सीधे तौर पर जवाब भी दे सकते हैं:

"हर भौगोलिक स्थिति में, मेरे हर कैंपेन से हर प्रॉडक्ट से कितनी आय हुई क्षेत्र जनरेट करना चाहिए?"

समरी वैल्यू में बहुत ज़्यादा उतार-चढ़ाव नहीं होगा, लेकिन यह तय किया जा सकता है कि हर कैंपेन के बीच मेज़र की गई वैल्यू में अंतर, शोर की वजह से नहीं है अकेले. शोर को समझना में जाकर, इसे पूरा करने का तरीका जानें.

रणनीति B: दो उथले पेड़ (दो खुरदरी मुख्य संरचनाएं)

रणनीति B में, दो अनुमानित मुख्य स्ट्रक्चर इस्तेमाल किए जाते हैं. हर स्ट्रक्चर का सबसेट शामिल होता है तो आपको इन डाइमेंशन की ज़रूरत पड़ेगी:

की का स्ट्रक्चर 1 और मुख्य स्ट्रक्चर 2.

दो मुख्य स्ट्रक्चर के लिए, इनमें से हर एक मुख्य स्ट्रक्चर को दो तरह के मुख्य स्ट्रक्चर में बांटा जाता है मेज़रमेंट के लक्ष्यों को पूरा करने में मदद मिलती है.

  • मेज़रमेंट का लक्ष्य टाइप = 0 है, जिसे खरीदारी के तौर पर तय किया जाता है संख्या.
  • मेज़रमेंट के लक्ष्य का टाइप = 1, जिसे खरीदारी के तौर पर तय किया जाता है वैल्यू.

आखिर में आपको चार कुंजी टाइप मिलती हैं:

  • कुंजी का टाइप I-0: मुख्य स्ट्रक्चर I, खरीदारी की संख्या.
  • कुंजी का टाइप I-1: मुख्य स्ट्रक्चर I, परचेज़ वैल्यू.
  • कुंजी प्रकार II-0: कुंजी संरचना II, खरीदारी की संख्या.
  • कुंजी प्रकार II-1: कुंजी संरचना II, खरीदारी मूल्य.

खास जानकारी वाली रिपोर्ट इस तरह दिखती हैं:

खास जानकारी वाली रिपोर्ट की रणनीति B.

रणनीति B को "दो उथले पेड़" के तौर पर समझा जा सकता है रणनीति:

  • समरी रिपोर्ट में समरी वैल्यू, डाइमेंशन.
  • खास जानकारी वाली इन वैल्यू को हर डाइमेंशन के साथ रोल अप किया जा सकता है इसका मतलब है कि ये रोलअप विकल्प A जितने गहरे नहीं हैं, क्योंकि रोल अप करने के लिए आपके डाइमेंशन कम होते हैं.

रणनीति B के साथ, आपको अपने सवालों के जवाब इस तरह देने होंगे:

सवाल जवाब
हर क्षेत्र में कौनसी प्रॉडक्ट कैटगरी सबसे ज़्यादा अहम हैं? खरीदारी की खास जानकारी और वैल्यू को सीधे ऐक्सेस करें की खास जानकारी वाली रिपोर्ट में देखा जा सकता है.
हर इलाके में कौनसी कैंपेन रणनीतियां सबसे ज़्यादा असरदार हैं? खरीदारी की खास जानकारी और वैल्यू को सीधे ऐक्सेस करें की खास जानकारी वाली रिपोर्ट में देखा जा सकता है.

फ़ैसला: रणनीति A

रणनीति A आसान है; सारा डेटा एक ही तरीके से बना होता है, जिस वजह से यह मतलब है कि आपके पास सिर्फ़ एक मुख्य स्ट्रक्चर है.

हालांकि, रणनीति A के साथ आपको मिलने वाली समरी वैल्यू का योग करना होगा जवाब भी दें. इनमें से हर एक खास जानकारी की वैल्यू में शोर है. डेटा को कुल मिलाकर देखें, तो शोर को जोड़ना.

रणनीति B के साथ ऐसा नहीं है, जहां जवाब में खास जानकारी को दिखाया जाता है रिपोर्ट आपकी ज़रूरत की जानकारी देती हैं. इसका मतलब है कि स्ट्रेटजी B रणनीति A की तुलना में शोर का असर कम होगा.

आपको कैसे तय करना चाहिए कि किस रणनीति का इस्तेमाल करना चाहिए? मौजूदा विज्ञापन देने वालों के लिए या है, तो आप यह तय करने के लिए पुराने डेटा पर भरोसा कर सकते हैं कि रणनीति A या रणनीति B के लिए, कन्वर्ज़न ज़्यादा सही हैं. हालांकि, नए तो आप ये निर्णय ले सकते हैं:

  • विस्तृत कुंजियों (Strategy A) के ज़रिए आप एक महीने का डेटा इकट्ठा कर सकते हैं. डेटा इकट्ठा करने की अवधि बढ़ाई जा रही है, इसलिए खास जानकारी की वैल्यू को बढ़ाया जा रहा है तापमान ज़्यादा होगा और ग़ैर-ज़रूरी आवाज़ें कम होंगी.
  • हर हफ़्ते के कन्वर्ज़न की संख्या का सही तरीके से आकलन करना और परचेज़ कन्वर्ज़न का कुल मान.

इस उदाहरण में, मान लें कि हर हफ़्ते की खरीदारी की संख्या और परचेज़ वैल्यू A के लिए रणनीति A का इस्तेमाल करके, गै़र-ज़रूरी डेटा का प्रतिशत तय किया जा सकता है आपके इस्तेमाल के उदाहरण के लिए सही हैं.

क्योंकि A की रणनीति आसान है और इससे नॉइज़ इंपैक्ट होता है फ़ैसले लेने की आपकी क्षमता पर असर पड़ता है, तो आपको रणनीति A को अपनाना होगा.

कोई हैशिंग एल्गोरिदम चुनें

आपने हैश पर आधारित तरीका अपनाया है का इस्तेमाल करें. ऐसा करने के लिए आपको हैशिंग एल्गोरिदम चुनना होगा, ताकि सहायता मिलती है.

मान लें कि आपने SHA-256 को चुना है. आप चाहें, तो आसान, कम सुरक्षित एल्गोरिदम, जैसे MD5.

ब्राउज़र में: कुंजियां और मान सेट करें

आपने एक मुख्य स्ट्रक्चर और हैशिंग एल्गोरिदम तय कर लिया है, तो उपयोगकर्ताओं के विज्ञापनों पर क्लिक करने या उन्हें देखने के बाद, पासकोड और वैल्यू रजिस्टर करने के लिए तैयार बदलें.

इसके बाद, उन हेडर की खास जानकारी दी गई है जिनमें आपको कुंजियों और वैल्यू को रजिस्टर करने के लिए सेट करना है ब्राउज़र:

किसी व्यू या क्लिक के लिए कुंजियां और वैल्यू रजिस्टर करें.
कन्वर्ज़न के लिए कुंजियां और वैल्यू रजिस्टर करें.

सोर्स-साइड कुंजी के टुकड़े सेट करें

जब कोई उपयोगकर्ता किसी विज्ञापन पर क्लिक करता है या देखता है, तब एग्रीगेशन कुंजियां सेट करें Attribution-Reporting-Register-Aggregatable-Source हेडर. इस चरण में, हर बटन के लिए सिर्फ़ बटन का कोई हिस्सा सेट किया जा सकता है या मुख्य हिस्सा होता है, जिसे विज्ञापन दिखाने के समय जाना जाता है.

आइए, मुख्य हिस्से जनरेट करते हैं:

की आईडी के लिए सोर्स-साइड कुंजी का टुकड़ा... स्ट्रिंग में वे डाइमेंशन वैल्यू शामिल हैं जिन्हें आपको सेट करना है इस स्ट्रिंग के हैश को हेक्स के रूप में, पहले 64 बिट (64/4) तक छोटा किया गया = 16 वर्ण1) आसान बनाने के लिए, शून्य के साथ हेक्स हैश XOR-ing. यह सोर्स-साइड की कुंजी है.
key_purchaseCount COUNT, CampaignID=12, GeoID=7 0x3cf867903fbb73ec 0x3cf867903fbb73ec0000000000000000
key_purchaseValue VALUE, CampaignID=12, GeoID=7 0x245265f432f16e73 0x245265f432f16e730000000000000000
1हर हेक्साडेसिमल अंक, चार बिट (बाइनरी अंक) को दिखाता है.

चलिए, अब अहम हिस्से सेट करते हैं:

// Upon receiving the request from the publisher site
res.set(
  "Attribution-Reporting-Register-Aggregatable-Source",
  JSON.stringify([
    {
      "id": "key_purchaseCount",
      "key_piece": "0x3cf867903fbb73ec0000000000000000"
    },
    {
      "id": "key_purchaseValue",
      "key_piece": "0x245265f432f16e730000000000000000"
    }
  ])
);

ध्यान दें कि मुख्य आईडी, फ़ाइनल रिपोर्ट में नहीं दिखेंगे. इनको सिर्फ़ इस्तेमाल किया जा सकता है ताकि सोर्स-साइड और ट्रिगर-साइड कुंजी को सेट किया जा सके टुकड़ों को एक-दूसरे के साथ मैप किया जा सकता है और उन्हें पूरी कुंजी में जोड़ा जा सकता है.

ज़रूरी नहीं: इवेंट-लेवल की रिपोर्ट

अगर आपको एग्रीगेट की जा सकने वाली रिपोर्ट के साथ इवेंट-लेवल रिपोर्ट का इस्तेमाल करना है, तो पक्का करें कि दिए गए सोर्स के लिए, इवेंट-लेवल का डेटा (सोर्स इवेंट आईडी और ट्रिगर डेटा) और एग्रीगेशन कुंजी का मिलान हो सकता है.

उदाहरण के लिए, अगर आपको इवेंट-लेवल रिपोर्ट का इस्तेमाल करके ऐसे मॉडल चलाने हैं जिनमें यह जानकारी हो कि किस तरह के विज्ञापनों से सबसे ज़्यादा खरीदारी होती है, तो दोनों रिपोर्ट का इस्तेमाल किया जा सकता है.

कोई उपयोगकर्ता ग्राहक में बदलता है

जब कोई उपयोगकर्ता ग्राहक में बदलता है, तो आम तौर पर विज्ञापन टेक्नोलॉजी के सर्वर को पिक्सल का अनुरोध भेजा जाता है. यह अनुरोध मिलने पर:

  • कुंजी को पूरा करने के लिए, कन्वर्ज़न-साइड (ट्रिगर-साइड) के मुख्य हिस्सों को सेट करें. आपको इन मुख्य हिस्सों को हेडर के ज़रिए सेट करना होगा Attribution-Reporting-Register-Aggregatable-Trigger-Data.
  • हेडर के ज़रिए, उस कन्वर्ज़न के लिए एग्रीगेट की जा सकने वाली वैल्यू सेट करें Attribution-Reporting-Register-Aggregatable-Values.

पासकोड सेट अप करने के लिए, ट्रिगर-साइड कुंजी के हिस्से सेट करें

आइए, मुख्य हिस्से जनरेट करते हैं:

'की आईडी' के लिए ट्रिगर साइड की का टुकड़ा... स्ट्रिंग में वे डाइमेंशन वैल्यू शामिल हैं जिन्हें आपको सेट करना है इस स्ट्रिंग के हैश को हेक्स के रूप में, पहले 64 बिट (64/4) तक छोटा किया गया = 16 वर्ण1) XOR-ing को आसान बनाने के लिए, हेक्स हैश के साथ शून्य जोड़े गए. यह सोर्स-साइड की कुंजी है.
key_purchaseCount ProductCategory=25 0x1c7ce88c4904bbe2 0x0000000000000000f9e491fe37e55a0c
key_purchaseValue (एक ही) (एक ही) (एक ही)
1हर हेक्साडेसिमल अंक, चार बिट (बाइनरी अंक) को दिखाता है.

चलिए, अब अहम हिस्से सेट करते हैं:

// Upon receiving the pixel request from the advertiser site
res.set(
  "Attribution-Reporting-Register-Aggregatable-Trigger-Data",
  JSON.stringify([
    // Each dictionary independently adds pieces to multiple source keys
    {
      "key_piece": "0x0000000000000000f9e491fe37e55a0c",
      "source_keys": ["key_purchaseCount", "key_purchaseValue"]
    },
  ])
);

ध्यान दें कि किस तरह एक ही कुंजी को कई कुंजियों में जोड़ा जा रहा है. इसके लिए, source_keys में कुंजी के आईडी—कुंजी के मुख्य हिस्से को दोनों कुंजियों में जोड़ दिया जाएगा.

एग्रीगेट की जा सकने वाली वैल्यू सेट करें

एग्रीगेट की जा सकने वाली वैल्यू सेट करने से पहले, आपको उन्हें स्केल करना होगा, ताकि शोर कम करें.

मान लें कि प्रॉडक्ट टाइप 25 के लिए 52 डॉलर की एक खरीदारी की गई.

इन्हें सीधे तौर पर एग्रीगेट की जा सकने वाली वैल्यू के तौर पर सेट नहीं किया जाएगा:

  • key_purchaseCount: 1 कन्वर्ज़न
  • key_purchaseValue: 52 डॉलर

इसके बजाय, इकट्ठा की जा सकने वाली इन वैल्यू को रजिस्टर करने से पहले, आपको स्केल ताकि शोर कम किया जा सके.

आपके पास अपने योगदान के बजट को खर्च करने के दो लक्ष्य हैं, इसलिए योगदान के बजट को दो हिस्सों में बांटने का फ़ैसला ले सकता है.

इस मामले में, हर लक्ष्य को ज़्यादा से ज़्यादा CONTRIBUTION_BUDGET/2 असाइन किए गए हैं (=65,536/2=32,768).

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

परचेज़ वैल्यू के लिए स्केलिंग फ़ैक्टर यह होना चाहिए:

((CONTRIBUTION_BUDGET/2) / 1,500) = 32,768/1,500 = 21.8 ≈ 22

खरीदारी की संख्या में स्केलिंग फ़ैक्टर 32,768/1 = 32,768 है, क्योंकि ने विज्ञापन पर होने वाले हर क्लिक या व्यू से ज़्यादा से ज़्यादा एक खरीदारी को ट्रैक करने का फ़ैसला लिया है (सोर्स इवेंट).

अब ये वैल्यू सेट की जा सकती हैं:

  • key_purchaseCount: 1 × 32,768 = 32,768
  • key_purchaseValue: 52 × 22 = 1,144

व्यावहारिक तौर पर, आप उन्हें इस तरह सेट करेंगे कि Attribution-Reporting-Register-Aggregatable-Values:

// Instruct the browser to schedule-send a report
res.set(
  "Attribution-Reporting-Register-Aggregatable-Values",
  JSON.stringify({
    "key_purchaseCount": 32768,
    "key_purchaseValue": 1144,
  })
);

ऐसी रिपोर्ट जनरेट होती है जिसे इकट्ठा किया जा सके

ब्राउज़र किसी कन्वर्ज़न को पिछले व्यू या क्लिक से मैच करता है और इकट्ठा की जा सकने वाली रिपोर्ट, जिसमें रिपोर्ट के बगल में मौजूद एन्क्रिप्ट (सुरक्षित) किया गया पेलोड शामिल होता है मेटाडेटा.

नीचे उस डेटा का एक उदाहरण दिया गया है, जो एग्रीगेट करने लायक रिपोर्ट, अगर वह क्लीयरटेक्स्ट में पढ़ने लायक था:

[
  {
    key: 0x3cf867903fbb73ecf9e491fe37e55a0c, // = source-side key piece XOR conversion-side key piece for the key key_purchaseCount
    value: 32768 // the scaled value for 1 conversion, in the context of [CONTRIBUTION_BUDGET/2]
  },
  {
    key: 0x245265f432f16e73f9e491fe37e55a0c, // source-side key piece XOR conversion-side key piece for the key key_purchaseValue
    value: 1144 // the scaled value for $52, in the context of [CONTRIBUTION_BUDGET/2]
  },
]

यहां आपको एक ही ऐप्लिकेशन में दो अलग-अलग योगदान दिखेंगे रिपोर्ट.

खास जानकारी की रिपोर्ट का अनुरोध करना

  • बैच एग्रीगेटेबल रिपोर्ट. इसमें दी गई सलाह का पालन करें बैच करना.
  • वे कुंजियां जनरेट करें जिनका डेटा आपको देखना है. उदाहरण के लिए, ख़ास जानकारी COUNT (खरीदारी की कुल संख्या) और VALUE (खरीदारी की कुल वैल्यू) का डेटा कैंपेन आईडी 12 × भूगोल आईडी 7 × प्रॉडक्ट कैटगरी 25 के लिए:
वह मेट्रिक जिसके लिए आपको अनुरोध करना है1 सोर्स-साइड कुंजी का टुकड़ा ट्रिगर-साइड कुंजी का टुकड़ा एग्रीगेशन सेवा का अनुरोध करने के लिए कुंजी2
खरीदारी की कुल संख्या (COUNT) 0x3cf867903fbb73ec
00000000000000000
0x00000000000000
00f9e491fe37e55a0c
0x3cf867903fbb73
ecf9e491fe37e55a0c
परचेज़ कन्वर्ज़न की कुल वैल्यू (VALUE) 0x245265f432f16e73
0000000000000000
0x0000000000000000
f9e491fe37e55a0c
0x245265f432f16e73
f9e491fe37e55a0c
1ऐसी मेट्रिक जिसके लिए आपको अनुरोध करना है (कैंपेन आईडी 12 × भूगोल आईडी 7 × प्रॉडक्ट कैटगरी 25 के लिए). 2एग्रीगेशन सेवा के लिए अनुरोध करने की कुंजी = सोर्स-साइड कुंजी का टुकड़ा XOR ट्रिगर-साइड कुंजी.
  • इन कुंजियों के लिए एग्रीगेशन सेवा से खास जानकारी वाले डेटा का अनुरोध करें.

खास जानकारी वाली रिपोर्ट मैनेज करना

आखिर में, आपको खास जानकारी वाली रिपोर्ट मिलती है, जो कुछ ऐसी दिख सकती है:

[
  {"bucket": "00111100111110000110011110010000001111111011101101110011111011001111100111100100100100011111111000110111111001010101101000001100",
    "value": "2558500"},
  {"bucket": "00100100010100100110010111110100001100101111000101101110011100111111100111100100100100011111111000110111111001010101101000001100",
    "value": "687060"},
  …
]

पहली बकेट, बाइनरी में COUNT कुंजी होती है. दूसरा बकेट VALUE कुंजी है बाइनरी में. ध्यान रखें कि कुंजियां विषमांगी (COUNT बनाम VALUE) होती हैं, लेकिन उन्हें एक ही रिपोर्ट में डालें.

वैल्यू को स्केल करना

  • 2,558,500 से इस कुंजी की खरीदारी की संख्या का पता चलता है. इसे स्केलिंग फ़ैक्टर के आधार पर. स्केलिंग फ़ैक्टर के लिए खरीदारी की संख्या 32,768 थी. लक्ष्य के योगदान से 25,58,500 को भाग दें बजट: 2,558,500/32,768 = 156.15 खरीदारी.
  • 6,87,060 → 6,87,060/22 = 31,230 डॉलर की कुल खरीदारी.

इस वजह से, खास जानकारी वाली रिपोर्ट से आपको यह अहम जानकारी मिलती है:

  • रिपोर्टिंग समयावधि में, कैंपेन #12 यूरोप में करीब 156 खरीदारी हुई (± नॉइज़) प्रॉडक्ट कैटगरी #25 के लिए.
  • रिपोर्टिंग समयावधि में, कैंपेन #12 का इस्तेमाल करके, यूरोप में 31,230 डॉलर की खरीदारी की गई (± नॉइज़) प्रॉडक्ट कैटगरी #25 के लिए.