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

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

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

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

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

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

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

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

डाइमेंशन

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

इकट्ठा की गई अहम जानकारी जनरेट की जा रही है.

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

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

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

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

एग्रीगेट की जा सकने वाली रिपोर्ट

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

.

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

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

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

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

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

नतीजे के तौर पर मिलने वाली एग्रीगेट रिपोर्ट.

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

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

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

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

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

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

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

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

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

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

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

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

उदाहरण:

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

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

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

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

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

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

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

मुख्य स्ट्रक्चर.

कुंजी के टाइप

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

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

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

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

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

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

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

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

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

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

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

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

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

कुंजी को कोड में बदलने का तरीका

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

पूरी सुरक्षा कुंजी के लिए दो अहम हिस्से सेट करें

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

  • कैंपेन का आईडी
  • भूगोल आईडी
  • प्रॉडक्ट कैटगरी

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

इसका मतलब है कि आपको दो चरणों में कुंजी सेट करनी होगी:

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

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

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

XORing की मदद से काम कर रहे हैं.

उदाहरण:

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

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

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

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

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

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

  • देश या इलाका आईडी और कैंपेन आईडी को ट्रैक करने वाली कुंजी.
  • एक अन्य कुंजी जो क्रिएटिव प्रकार x अभियान आईडी को ट्रैक करती है.

एक और उदाहरण के लिए, रणनीति B पर नज़र डालें.

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

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

समरी रिपोर्ट में रॉ {key, summary value} जोड़े होते हैं. साथ ही, इनमें कुंजी के बारे में कोई अतिरिक्त जानकारी नहीं होती. इसका मतलब है कि:

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

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

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

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

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

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

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

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

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

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

हर डाइमेंशन पर नज़र डालते समय, मान लें कि आपके इस्तेमाल के उदाहरण के लिए, आपको इन्हें ट्रैक करना होगा:

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

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

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

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

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

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

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

मुख्य संरचना का मैप.

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

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

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

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

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

की स्ट्रक्चर मैप के मुताबिक, यह कुंजी इनमें डिकोड होगी:

11001 0 011 1100
ALT_TEXT_HERE

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

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

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

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

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

हैश पर आधारित इस तरीके का इस्तेमाल करने वालों के लिए, यहां कुछ सुझाव दिए गए हैं:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

मुद्राओं का क्या होगा?

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

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

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

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

लक्ष्यों को कुंजियों में बदलें

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

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

रणनीति A: एक डीप ट्री (एक मुख्य स्ट्रक्चर)

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

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

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

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

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

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

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

रणनीति A को किसी "एक अहम ट्री" रणनीति की तरह समझा जा सकता है:

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

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

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

रणनीति 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 के लिए ज़्यादा सही है या नहीं. हालांकि, विज्ञापन देने वाले नए लोगों या कैंपेन के लिए, आपके पास ये विकल्प हैं:

  • विस्तृत कुंजियों (रणनीति 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 वैल्यू, 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 को simplify बनाने के लिए, जोड़े गए शून्यों के साथ हेक्स हैश. यह सोर्स-साइड कुंजी का हिस्सा है.
key_purchaseCount प्रॉडक्टकैटगरी=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] 
}]

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

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

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

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

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

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

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

वैल्यू को स्केल करें

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

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

Within the reporting time period, campaign #12
run in Europe drove about 156 purchases (± noise)
for the product category #25.
Within the reporting time period, campaign #12
run in Europe drove $31,230 of purchases (± noise)
for the product category #25.