คีย์การรวบรวมคืออะไร วิธีใช้ใน Attribution Reporting API และวิธีแปลงเป้าหมายเป็นคีย์
ในฐานะบริษัทเทคโนโลยีโฆษณาที่ทําแคมเปญในหลายสถานที่สําหรับหมวดหมู่ผลิตภัณฑ์ต่างๆ คุณต้องการช่วยผู้ลงโฆษณาตอบคําถามต่อไปนี้
- แต่ละแคมเปญในแต่ละพื้นที่ทางภูมิศาสตร์สร้างการซื้อสินค้าแต่ละหมวดหมู่ได้กี่รายการ
- แคมเปญแต่ละแคมเปญในแต่ละภูมิภาคสร้างรายได้สำหรับผลิตภัณฑ์แต่ละหมวดหมู่เป็นจำนวนเท่าใด
แม้ว่าบริษัทเทคโนโลยีโฆษณาหลายแห่งจะสนับสนุนให้ผู้ลงโฆษณากําหนดค่า Conversion ประเภทต่างๆ แต่การมุ่งเน้นที่ Conversion ที่สําคัญที่สุด เช่น การซื้อ เป็นวิธีที่ดีในการยืนยันว่าผลลัพธ์แบบสรุปนั้นมีรายละเอียดและแม่นยําสําหรับเหตุการณ์สําคัญเหล่านี้
โดยคุณจะต้องคิดถึงคำถามที่ต้องการตอบก่อนที่จะมีการเก็บรวบรวมข้อมูล
มิติข้อมูล คีย์ และค่า
เรามาดูมิติข้อมูล คีย์ และค่ากันเพื่อตอบคำถามเหล่านี้
ขนาด
หากต้องการทราบว่าแคมเปญสร้างรายได้อย่างไร ตามที่อธิบายไว้ที่นี่ คุณจะต้องติดตามมิติข้อมูลต่อไปนี้
- รหัสแคมเปญโฆษณา: ตัวระบุสำหรับแคมเปญที่เฉพาะเจาะจง
- รหัสภูมิศาสตร์: ภูมิภาคที่แสดงโฆษณา
- หมวดหมู่ผลิตภัณฑ์: ประเภทผลิตภัณฑ์ตามที่คุณกำหนด
แม้ว่าระบบจะทราบมิติข้อมูลรหัสแคมเปญและรหัสภูมิศาสตร์เมื่อแสดงโฆษณา (เวลาแสดงโฆษณา) แต่จะทราบหมวดหมู่ผลิตภัณฑ์จากเหตุการณ์ทริกเกอร์เมื่อผู้ใช้ทํา Conversion เสร็จสมบูรณ์ (เวลา Conversion)
มิติข้อมูลที่คุณต้องการติดตามสําหรับตัวอย่างนี้แสดงในรูปภาพต่อไปนี้
คีย์การรวม (ที่เก็บข้อมูล) คืออะไร
คีย์การรวมและที่เก็บข้อมูลหมายถึงสิ่งเดียวกัน คีย์การรวบรวมใช้ใน API ของเบราว์เซอร์ที่ใช้กำหนดค่ารายงาน คำว่ากลุ่มใช้ในรายงานที่รวบรวมได้และรายงานสรุป รวมถึงใน API ของบริการรวบรวมข้อมูล
คีย์การรวม (หรือเรียกสั้นๆ ว่าคีย์) คือข้อมูลที่แสดงค่าของมิติข้อมูลที่ติดตาม จากนั้นระบบจะรวบรวมข้อมูลตามคีย์การรวบรวมแต่ละรายการ
เช่น สมมติว่าคุณกำลังติดตามมิติข้อมูลหมวดหมู่ผลิตภัณฑ์, รหัสภูมิศาสตร์ และรหัสแคมเปญ
เมื่อผู้ใช้ที่อยู่ในรหัสภูมิศาสตร์ 7 เห็นโฆษณาสำหรับรหัสแคมเปญ 12 และต่อมาทํา Conversion โดยการซื้อผลิตภัณฑ์ในหมวดหมู่ผลิตภัณฑ์ 25 คุณอาจตั้งค่าคีย์การรวบรวมที่คล้ายกับในรูปภาพต่อไปนี้
คุณจะเห็นในภายหลังว่าในทางปฏิบัติ คีย์การรวบรวมไม่ได้มีลักษณะเช่นนี้ แต่ตอนนี้เรามามุ่งเน้นที่ข้อมูลที่อยู่ในคีย์กันก่อน
ค่าที่รวบรวมได้คืออะไร
หากต้องการตอบคำถามเกี่ยวกับมิติข้อมูลที่เราได้ระบุไว้ คุณต้องทราบข้อมูลต่อไปนี้
- จำนวนการซื้อ (จำนวนการซื้อ) เมื่อรวบรวมและพร้อมใช้งานในรายงานสรุปแล้ว ค่านี้จะเป็นจำนวนการซื้อทั้งหมด (มูลค่าสรุป)
- รายได้จากการซื้อแต่ละครั้ง (มูลค่าการซื้อ) เมื่อรวบรวมและพร้อมใช้งานในรายงานสรุปแล้ว รายได้นี้จะเป็นรายได้รวม (มูลค่าสรุป)
แต่ละรายการเหล่านี้ ได้แก่ จำนวนการซื้อสำหรับ Conversion 1 รายการ และมูลค่าการซื้อสำหรับ Conversion 1 รายการ เป็นมูลค่าที่รวบรวมได้ คุณสามารถคิดว่าค่าที่รวบรวมได้คือค่าของเป้าหมายการวัด
| คำถาม | ค่าที่รวบรวมได้ = เป้าหมายการวัด |
|---|---|
| การซื้อ… | จำนวนการซื้อ |
| รายได้… | มูลค่าการซื้อ |
เมื่อผู้ใช้ที่อยู่ในรหัสภูมิศาสตร์ 7 เห็นโฆษณาสำหรับรหัสแคมเปญ 12 และต่อมาทํา Conversion โดยการซื้อผลิตภัณฑ์ในหมวดหมู่ผลิตภัณฑ์ 25 ในราคา $120 (สมมติว่าสกุลเงินของคุณคือ USD) คุณอาจตั้งค่าคีย์การรวบรวมและค่าที่รวบรวมได้ซึ่งมีลักษณะดังนี้
ระบบจะรวมค่าที่รวบรวมได้ต่อคีย์ในผู้ใช้จํานวนมากเพื่อสร้างข้อมูลเชิงลึกแบบรวมในรูปแบบของค่าสรุปในรายงานสรุป
ระบบจะรวมค่าที่รวบรวมได้เพื่อสร้างข้อมูลเชิงลึกแบบรวมสําหรับเป้าหมายการวัด
โปรดทราบว่าแผนภาพนี้ละเว้นการถอดรหัสและแสดงตัวอย่างที่เรียบง่ายโดยไม่มีการใช้สัญญาณรบกวน ในส่วนถัดไป เราจะอธิบายตัวอย่างนี้โดยมีสัญญาณรบกวน
ตั้งแต่คีย์และค่าไปจนถึงรายงาน
ตอนนี้เรามาพูดถึงวิธีที่คีย์และค่าที่รวบรวมได้เกี่ยวข้องกับรายงานกัน
รายงานที่รวบรวมได้
เมื่อผู้ใช้คลิกหรือดูโฆษณาและทำ Conversion ในภายหลัง คุณจะสั่งให้เบราว์เซอร์จัดเก็บคู่ {คีย์การรวบรวม ค่าที่รวบรวมได้}
ในตัวอย่างของเรา เมื่อผู้ใช้คลิกหรือดูโฆษณาแล้วทำ Conversion ในภายหลัง คุณจะสั่งให้เบราว์เซอร์สร้างการระบุแหล่งที่มา 2 รายการ (เป้าหมายการวัดผลละ 1 รายการ)
คุณจะเห็นในภายหลังว่ารายงานที่รวบรวมได้ {คีย์การรวบรวม ค่าที่รวบรวมได้} ไม่ได้มีลักษณะเช่นนี้ แต่ตอนนี้เรามามุ่งเน้นที่ข้อมูลในรายงานกันก่อน
เมื่อสั่งให้เบราว์เซอร์สร้างการสนับสนุน 2 รายการ เบราว์เซอร์จะสร้างรายงานที่รวบรวมได้ (หากจับคู่ Conversion กับการดูหรือคลิกก่อนหน้าได้)
รายงานที่รวบรวมได้ประกอบด้วยข้อมูลต่อไปนี้
- การสนับสนุนที่คุณกำหนดค่าไว้
- ข้อมูลเมตาเกี่ยวกับเหตุการณ์คลิกหรือดู และเหตุการณ์ Conversion: เว็บไซต์ที่เกิด Conversion และอื่นๆ ดูช่องทั้งหมดในรายงานที่รวบรวมได้
รายงานที่รวบรวมได้อยู่ในรูปแบบ JSON และมีฟิลด์เพย์โหลดที่จะใช้เป็นข้อมูลนำเข้าสำหรับรายงานสรุปขั้นสุดท้าย
เพย์โหลดมีรายการการมีส่วนร่วม โดยแต่ละรายการเป็นคู่ {คีย์การรวม, ค่าที่รวมได้} ดังนี้
bucket: คีย์การรวมที่เข้ารหัสเป็นสตริงไบต์value: ค่าที่รวบรวมได้สําหรับเป้าหมายการวัดผลนั้น ซึ่งเข้ารหัสเป็นไบต์สตริง
เช่น
{
"data": [
{
"bucket": "111001001",
"value": "11111010000",
}
],
"operation": "histogram"
}
ในทางปฏิบัติ ระบบจะเข้ารหัสรายงานที่รวบรวมได้ในลักษณะที่ทำให้ที่เก็บข้อมูลและค่าดูแตกต่างจากตัวอย่างก่อนหน้า (กล่าวคือ ที่เก็บข้อมูลอาจมีลักษณะเป็น \u0000\u0000\x80\u0000) ทั้งที่เก็บข้อมูลและค่าเป็นไบต์สตริง
รายงานสรุป
ระบบจะรวบรวมรายงานที่รวบรวมได้ในเบราว์เซอร์และอุปกรณ์ (ผู้ใช้) หลายรายการดังนี้
- เทคโนโลยีโฆษณาขอรายงานสรุปสำหรับชุดคีย์ที่ระบุ และชุดรายงานข้อมูลที่รวบรวมมาที่ระบุซึ่งมาจากเบราว์เซอร์ (ผู้ใช้) ที่แตกต่างกันจำนวนมาก
- บริการรวมข้อมูลจะถอดรหัสรายงานที่รวมได้
- สำหรับแต่ละคีย์ ระบบจะรวมค่าที่รวบรวมได้จากรายงานที่รวบรวมได้
- ระบบจะเพิ่มสัญญาณรบกวนลงในค่าสรุป
ผลลัพธ์คือรายงานสรุปที่มีชุดคู่ {คีย์การรวม ค่าสรุป}
รายงานสรุปมีชุดคู่คีย์-ค่าในรูปแบบพจนานุกรม JSON แต่ละคู่จะมีข้อมูลต่อไปนี้
bucket: คีย์การรวมที่เข้ารหัสเป็นสตริงไบต์value: ค่าสรุปในรูปแบบทศนิยมสำหรับเป้าหมายการวัดที่กําหนด ซึ่งรวมจากรายงานที่รวบรวมได้ทั้งหมดที่มีการเพิ่มระดับสัญญาณรบกวน
ตัวอย่าง
[
{"bucket": "111001001", "value": "2558500"},
{"bucket": "111101001", "value": "3256211"},
{...}
]
ในทางปฏิบัติ รายงานสรุปจะได้รับการเข้ารหัสในลักษณะที่ทำให้กลุ่มและค่าดูแตกต่างจากที่ระบุไว้ในตัวอย่าง (กล่าวคือ กลุ่มอาจมีลักษณะเป็น \u0000\u0000\x80\u0000) ทั้งกลุ่มและค่าเป็นไบต์สตริง
คีย์การรวมในทางปฏิบัติ
คีย์การรวบรวม (ที่เก็บข้อมูล) จะกำหนดโดยบริษัทเทคโนโลยีโฆษณา โดยปกติจะทำใน 2 ขั้นตอน ได้แก่ เมื่อมีการคลิกหรือดูโฆษณา และเมื่อผู้ใช้ทำ Conversion
โครงสร้างคีย์
เราจะใช้คำว่าโครงสร้างคีย์เพื่อระบุชุดมิติข้อมูลที่เข้ารหัสไว้ในคีย์
เช่น รหัสแคมเปญ × รหัสภูมิศาสตร์ × หมวดหมู่ผลิตภัณฑ์คือโครงสร้างหลัก
ประเภทคีย์
ระบบจะรวมค่าที่รวบรวมได้สำหรับคีย์ที่กำหนดในผู้ใช้/เบราว์เซอร์หลายราย แต่เราพบว่ามูลค่าที่รวบรวมได้สามารถติดตามเป้าหมายการวัดผลที่แตกต่างกันได้ เช่น มูลค่าการซื้อหรือจํานวนการซื้อ คุณต้องการยืนยันว่าบริการรวมข้อมูลจะรวมค่าที่รวมได้ซึ่งมีประเภทเดียวกัน
โดยการเข้ารหัสข้อมูลในแต่ละคีย์ซึ่งจะบอกคุณว่าค่าสรุปแสดงถึงอะไร นั่นคือเป้าหมายการวัดผลที่คีย์นี้อ้างอิงถึง วิธีหนึ่งในการทำเช่นนั้นคือการสร้างมิติข้อมูลเพิ่มเติมสำหรับคีย์ที่แสดงถึงประเภทเป้าหมายการวัด
จากตัวอย่างก่อนหน้า ประเภทเป้าหมายการวัดผลนี้จะมีค่าที่เป็นไปได้ 2 ค่าที่แตกต่างกัน ดังนี้
- จํานวนการซื้อคือเป้าหมายการวัดประเภทแรก
- มูลค่าการซื้อเป็นเป้าหมายการวัดผลประเภทที่ 2
หากคุณมีเป้าหมายการวัดผล n รายการ ประเภทเป้าหมายการวัดผลจะมีค่า n ประเภทที่แตกต่างกัน
คุณอาจมองว่ามิติข้อมูลของคีย์เป็นเมตริกก็ได้ เช่น "จำนวนการซื้อผลิตภัณฑ์หนึ่งๆ ต่อแคมเปญต่อภูมิศาสตร์"
ขนาดคีย์ ขนาดมิติข้อมูล
ขนาดคีย์สูงสุดกำหนดเป็นบิต ซึ่งเป็นจำนวน 0 และ 1 ในไบนารีเพื่อสร้างคีย์แบบเต็ม API อนุญาตให้ใช้คีย์ที่มีความยาว 128 บิต
ขนาดนี้ช่วยให้ใช้คีย์ที่ละเอียดมากได้ แต่คีย์ที่ละเอียดยิ่งขึ้นก็มีแนวโน้มที่จะทำให้ค่ามีความผันผวนมากขึ้น อ่านเพิ่มเติมเกี่ยวกับเสียงรบกวนได้ในทำความเข้าใจเกี่ยวกับเสียงรบกวน
ดังที่ได้กล่าวไปก่อนหน้านี้ ระบบจะเข้ารหัสมิติข้อมูลลงในคีย์การรวม มิติข้อมูลแต่ละรายการมีจำนวนสมาชิกในเซ็ตที่แน่นอน ซึ่งก็คือจำนวนค่าที่ไม่ซ้ำกันที่มิติข้อมูลนั้นๆ สามารถใช้ได้ มิติข้อมูลแต่ละรายการต้องแสดงด้วยจำนวนบิตที่แน่นอน ทั้งนี้ขึ้นอยู่กับ Cardinality ของมิติข้อมูล เมื่อมี n บิต คุณจะแสดงตัวเลือกที่แตกต่างกันได้ 2n ตัวเลือก
ตัวอย่างเช่น มิติข้อมูลประเทศอาจมี Cardinality เท่ากับ 200 เนื่องจากมีประเทศประมาณ 200 ประเทศในโลก ต้องใช้กี่บิตในการเข้ารหัสมิติข้อมูลนี้
7 บิตจะจัดเก็บได้เพียง 27 = 128 ตัวเลือกที่แตกต่างกัน ซึ่งน้อยกว่า 200 ตัวเลือกที่จำเป็น
8 บิตจะจัดเก็บตัวเลือกที่แตกต่างกัน 28 = 256 รายการ ซึ่งมากกว่า 200 รายการที่จำเป็น ดังนั้นคุณจึงใช้ n=8 บิตเพื่อเข้ารหัสมิตินี้ได้
การเข้ารหัสคีย์
เมื่อตั้งค่าคีย์ในเบราว์เซอร์ คุณควรเข้ารหัสคีย์ในเลขฐานสิบหก ในรายงานสรุป คีย์จะปรากฏในรูปแบบไบนารี (และมีชื่อว่า "ที่เก็บข้อมูล")
ตั้งค่าชิ้นส่วนคีย์ 2 ชิ้นสำหรับคีย์แบบเต็ม
สมมติว่าคุณใช้คีย์เพื่อติดตามมิติข้อมูลต่อไปนี้
- รหัสแคมเปญ
- รหัสทางภูมิศาสตร์
- หมวดหมู่สินค้า
แม้ว่าระบบจะทราบมิติข้อมูลรหัสแคมเปญและรหัสภูมิศาสตร์เมื่อแสดงโฆษณา (เวลาแสดงโฆษณา) แต่จะทราบหมวดหมู่ผลิตภัณฑ์จากเหตุการณ์ทริกเกอร์เมื่อผู้ใช้ทํา Conversion เสร็จสมบูรณ์ (เวลา Conversion)
ในทางปฏิบัติแล้ว คุณจะต้องตั้งค่าคีย์ใน 2 ขั้นตอน ดังนี้
- คุณจะตั้งค่าส่วนหนึ่งของคีย์ ซึ่งก็คือรหัสแคมเปญ × รหัสภูมิศาสตร์ ณ เวลาที่คลิกหรือดู
- คุณจะตั้งค่าส่วนที่ 2 ของคีย์ ซึ่งก็คือหมวดหมู่ผลิตภัณฑ์ ในเวลาที่เกิด Conversion
ส่วนต่างๆ ของคีย์เหล่านี้เรียกว่าชิ้นส่วนคีย์
ระบบจะคำนวณคีย์โดยใช้ OR (v) ของชิ้นส่วนคีย์
ตัวอย่าง
- ชิ้นส่วนคีย์ฝั่งแหล่งที่มา =
0x159 - ชิ้นส่วนคีย์ฝั่งทริกเกอร์ =
0x400 - คีย์ =
0x159 v 0x400 = 0x559
การจัดองค์ประกอบที่สำคัญ
เมื่อขยายคีย์ 64 บิต 2 ชิ้นเป็น 128 บิตโดยใช้ตัวเติมหรือออฟเซ็ต 64 บิตที่วางอย่างระมัดระวัง (เลขศูนย์ 16 ตัว) การดำเนินการ OR กับชิ้นส่วนคีย์จะเทียบเท่ากับการต่อกัน ซึ่งทำให้พิจารณาและยืนยันได้ง่ายขึ้น
- ชิ้นส่วนคีย์ฝั่งแหล่งที่มา =
0xa7e297e7c8c8d0540000000000000000 - ชิ้นส่วนคีย์ฝั่งทริกเกอร์ =
0x0000000000000000674fbe308a597271 - คีย์ =
0xa7e297e7c8c8d0540000000000000000 v 0x0000000000000000674fbe308a597271 = 0xa7e297e7c8c8d054674fbe308a597271
คีย์หลายรายการต่อการคลิกหรือการดูโฆษณา
ในทางปฏิบัติ คุณอาจตั้งค่าคีย์หลายรายการต่อเหตุการณ์แหล่งที่มาของการระบุแหล่งที่มา (การคลิกหรือการดูโฆษณา) ตัวอย่างเช่น คุณอาจตั้งค่าดังนี้
- คีย์ที่ติดตามรหัสภูมิศาสตร์ × รหัสแคมเปญ
- คีย์อีกรายการที่ติดตามประเภทครีเอทีฟโฆษณา × รหัสแคมเปญ
ดูอีกตัวอย่างได้ที่กลยุทธ์ ข
การเข้ารหัสขนาดเป็นคีย์
เมื่อขอรายงานสรุป คุณต้องแจ้งบริการรวบรวมข้อมูลว่าต้องการเข้าถึงเมตริกใด โดยการขอรายงานสรุปสำหรับชุดคีย์การรวบรวมข้อมูลที่เฉพาะเจาะจง
รายงานสรุปมีคู่ {คีย์ ค่าสรุป} ดิบ และไม่มีข้อมูลเพิ่มเติมเกี่ยวกับคีย์ ซึ่งหมายความว่า
- เมื่อตั้งค่าคีย์ขณะที่ผู้ใช้ดูหรือคลิกโฆษณาและทำ Conversion ในภายหลัง คุณต้องตั้งค่าคีย์อย่างน่าเชื่อถือตามค่าของมิติข้อมูลที่คีย์แสดง
- เมื่อกำหนดคีย์ที่ต้องการขอรายงานสรุป คุณต้องสร้างหรือเข้าถึงคีย์เดียวกันแบบเรียลไทม์ได้อย่างน่าเชื่อถือเหมือนกับคีย์ที่ตั้งค่าไว้เมื่อผู้ใช้ดูหรือคลิกโฆษณาและทํา Conversion โดยอิงตามค่าของมิติข้อมูลที่ต้องการดูข้อมูลรวม
การเข้ารหัสขนาดโดยใช้แผนที่โครงสร้างคีย์
หากต้องการเข้ารหัสมิติข้อมูลเป็นคีย์ คุณสามารถสร้างและดูแลแผนที่โครงสร้างคีย์ล่วงหน้าเมื่อกำหนดคีย์ (ก่อนเวลาแสดงโฆษณา)
แผนที่โครงสร้างคีย์แสดงมิติข้อมูลแต่ละรายการและตำแหน่งของมิติข้อมูลในคีย์
ในทางปฏิบัติ การสร้างและดูแลแผนที่โครงสร้างคีย์หมายความว่าคุณต้องใช้และดูแลตรรกะของตัวถอดรหัส หากคุณกำลังมองหาวิธีที่ไม่ต้องดำเนินการดังกล่าว ให้ลองใช้แนวทางที่ใช้แฮชแทน
เช่น
สมมติว่าคุณวางแผนที่จะติดตามทั้งการซื้อและมูลค่าการซื้อสําหรับแคมเปญ ภูมิภาคทางภูมิศาสตร์ และผลิตภัณฑ์ที่เฉพาะเจาะจง
หมวดหมู่ผลิตภัณฑ์ รหัสภูมิศาสตร์ และรหัสแคมเปญต้องเป็นมิติข้อมูลในคีย์ นอกจากนี้ เนื่องจากคุณต้องการติดตามเป้าหมายการวัด 2 อย่างที่แตกต่างกัน ได้แก่ จำนวนการซื้อและมูลค่าการซื้อ คุณจึงต้องเพิ่มมิติข้อมูล 1 รายการภายในคีย์ที่ติดตามประเภทคีย์ ซึ่งจะช่วยให้คุณกําหนดได้ว่ามูลค่าที่รวบรวมได้แสดงถึงอะไรเมื่อได้รับคู่ {คีย์, มูลค่าที่รวบรวมได้} ในรายงานสรุป
เมื่อมีเป้าหมายการวัดผลเหล่านี้ คีย์จะมีมิติข้อมูลต่อไปนี้
- หมวดหมู่สินค้า
- ประเภทเป้าหมายการวัดผล
- รหัสทางภูมิศาสตร์
- รหัสแคมเปญ
ตอนนี้เมื่อดูมิติข้อมูลแต่ละรายการ สมมติว่าในกรณีการใช้งานของคุณ คุณต้องติดตามสิ่งต่อไปนี้
- หมวดหมู่ผลิตภัณฑ์ที่แตกต่างกัน 29 หมวดหมู่
- 8 ภูมิภาคทางภูมิศาสตร์ที่แตกต่างกัน ได้แก่ อเมริกาเหนือ อเมริกากลาง อเมริกาใต้ ยุโรป แอฟริกา เอเชีย แคริบเบียน และโอเชียเนีย
- 16 แคมเปญที่แตกต่างกัน
ต่อไปนี้คือจำนวนบิตที่คุณจะต้องใช้ในการเข้ารหัสแต่ละมิติข้อมูลในคีย์
- หมวดหมู่ผลิตภัณฑ์: 5 บิต (25 = 32 > 29)
- ประเภทเป้าหมายการวัดผล: 1 บิต เป้าหมายการวัดผลคือจํานวนการซื้อหรือมูลค่าการซื้อ ซึ่งหมายถึงความเป็นไปได้ที่แตกต่างกัน 2 อย่าง ดังนั้นจึงใช้ 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 จึงแสดงถึงจำนวนการซื้อหมวดหมู่ผลิตภัณฑ์ 25 สำหรับรหัสแคมเปญ 12 ที่เปิดตัวในยุโรป
การเข้ารหัสมิติข้อมูลโดยใช้ฟังก์ชันแฮช
คุณสามารถใช้ฟังก์ชันแฮชเพื่อสร้างคีย์แบบไดนามิกในลักษณะที่สอดคล้องและเชื่อถือได้แทนที่จะใช้แผนที่โครงสร้างคีย์
โดยมีวิธีการดังนี้
- เลือกอัลกอริทึมการแฮช
- เมื่อถึงเวลาแสดงโฆษณา ให้สร้างสตริงที่มีมิติข้อมูลทั้งหมดที่ต้องการติดตามและค่าของมิติข้อมูลเหล่านั้น หากต้องการสร้างคีย์ฝั่งแหล่งที่มา ให้แฮชสตริงนี้และพิจารณาเพิ่มส่วนต่อท้ายที่เป็น 0 ขนาด 64 บิตเพื่อจัดแนว
ให้ตรงกับคีย์ฝั่งทริกเกอร์และทำให้การให้เหตุผลเกี่ยวกับ OR ง่ายขึ้น
- ชิ้นส่วนคีย์ฝั่งแหล่งที่มา
=<64-bit hex hash("COUNT, campaignID=12, geoID=7"))><64-bit 00000000…> - โปรดทราบว่า
COUNTจะเข้ารหัสสิ่งเดียวกันกับmeasurementGoalType=0ในแนวทางการแมปโครงสร้างคีย์COUNTจะกระชับและชัดเจนยิ่งขึ้น
- ชิ้นส่วนคีย์ฝั่งแหล่งที่มา
- เมื่อเกิด Conversion ให้สร้างสตริงที่มีมิติข้อมูลทั้งหมดที่ต้องการติดตามและ
ค่าของมิติข้อมูลเหล่านั้น หากต้องการสร้างชิ้นส่วนคีย์ฝั่งทริกเกอร์ ให้แฮชสตริงนี้และเพิ่มคำนำหน้า 0 ขนาด 64 บิต ดังนี้
- ชิ้นส่วนคีย์ฝั่งทริกเกอร์
=
<64-bit 00000000…><64-bit hex hash("productCategory=25")>
- ชิ้นส่วนคีย์ฝั่งทริกเกอร์
=
- เบราว์เซอร์จะใช้ตัวดำเนินการ OR กับชิ้นส่วนคีย์เหล่านี้เพื่อสร้างคีย์
- คีย์การรวบรวมแบบ 128 บิต
=<64-bit hex source-side key piece hash><64-bit hex source-side key piece hash>
- คีย์การรวบรวมแบบ 128 บิต
- ต่อมาเมื่อคุณพร้อมที่จะขอรายงานสรุปสำหรับคีย์นี้ ให้สร้างรายงานทันทีโดยทำดังนี้
- สร้างคีย์ฝั่งแหล่งที่มาและฝั่งทริกเกอร์ตามมิติข้อมูลที่คุณสนใจเช่นเดียวกับที่ทำก่อนหน้านี้
- คีย์ฝั่งแหล่งที่มา
=<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"))
- คีย์ฝั่งแหล่งที่มา
- เช่นเดียวกับเบราว์เซอร์ หรือใช้ชิ้นส่วนสำคัญเหล่านี้เพื่อสร้างคีย์เดียวกันกับที่เบราว์เซอร์สร้างไว้ก่อนหน้านี้
- คีย์การรวบรวมแบบ 128 บิต
=<64-bit source-side key piece hash><64-bit source-side key piece hash>
- คีย์การรวบรวมแบบ 128 บิต
- สร้างคีย์ฝั่งแหล่งที่มาและฝั่งทริกเกอร์ตามมิติข้อมูลที่คุณสนใจเช่นเดียวกับที่ทำก่อนหน้านี้
เคล็ดลับที่นำไปใช้ได้จริง 2-3 ข้อหากคุณใช้แนวทางที่อิงตามแฮชนี้
- ใช้ลำดับมิติข้อมูลเดียวกันเสมอ เพื่อให้มั่นใจว่าสามารถสร้างแฮชใหม่ได้อย่างน่าเชื่อถือ (
"COUNT, CampaignID=12, GeoID=7"จะไม่สร้างแฮชเดียวกันกับ"COUNT, GeoID=7, CampaignID=12") วิธีที่ตรงไปตรงมาวิธีหนึ่งในการทําเช่นนี้คือการจัดเรียงมิติข้อมูลตามตัวอักษรและตัวเลข ซึ่งเป็นสิ่งที่เราจะทำในตัวอย่าง ยกเว้นข้อเท็จจริงที่ว่าเราจะทำให้COUNTหรือVALUEเป็นรายการแรกในมิติข้อมูลเสมอ ซึ่งเป็นตัวเลือกเพื่อให้อ่านง่าย เนื่องจากCOUNTหรือVALUEจะเข้ารหัสข้อมูลที่แตกต่างจากมิติข้อมูลอื่นๆ เล็กน้อยในเชิงแนวคิด - ติดตามชุดมิติข้อมูลที่คุณใช้ในคีย์ คุณควรหลีกเลี่ยงการสร้างคีย์ตามชุดมิติข้อมูลที่คุณไม่เคยใช้
- การชนกันของแฮชเกิดขึ้นได้ยากหากใช้ฟังก์ชันแฮชที่เหมาะสม แต่การตรวจสอบกับแฮชที่ใช้ก่อนหน้านี้ (ซึ่งควรจัดเก็บไว้เพื่อตีความผลลัพธ์จากบริการรวบรวมข้อมูล) จะช่วยหลีกเลี่ยงการใช้คีย์ใหม่ที่ชนกับคีย์เก่าได้
ดูวิธีใช้คีย์ที่อิงตามแฮชในทางปฏิบัติได้ในตัวอย่าง Conversion หนึ่งรายการต่อการคลิกหรือการดู
ค่าที่รวบรวมได้ในทางปฏิบัติ
บริษัทเทคโนโลยีโฆษณากําหนดค่าที่รวบรวมได้เมื่อผู้ใช้ทํา Conversion
ระบบจะจำกัดจำนวนการมีส่วนร่วมของผู้ใช้แต่ละรายเพื่อปกป้องความเป็นส่วนตัวของผู้ใช้ ค่าที่รวบรวมได้ทั้งหมดที่เชื่อมโยงกับแหล่งที่มาเดียว (การคลิกหรือการดูโฆษณา) จะต้องไม่สูงกว่าขีดจํากัดการมีส่วนร่วมที่กําหนด
เราจะเรียกขีดจำกัดนี้ว่าCONTRIBUTION_BUDGET ในคำอธิบาย เราจะเรียกขีดจํากัดนี้ว่างบประมาณ L1 แต่ก็เหมือนกับCONTRIBUTION_BUDGET
ดูรายละเอียดเกี่ยวกับงบประมาณการมีส่วนร่วมได้ที่งบประมาณการมีส่วนร่วมสำหรับรายงานสรุป
ตัวอย่าง: 1 Conversion ต่อการคลิกหรือการดู
สำหรับตัวอย่างนี้ สมมติว่าคุณต้องการตอบคำถามต่อไปนี้
- หมวดหมู่ผลิตภัณฑ์ใดมีคุณค่ามากที่สุดในแต่ละภูมิภาค
- กลยุทธ์แคมเปญใดมีประสิทธิภาพมากที่สุดในแต่ละภูมิภาค
นอกจากนี้ สมมติว่ากรณีการใช้งานของคุณต้องใช้ข้อมูลเชิงลึกรายสัปดาห์
นอกจากนี้ คุณยังต้องติดตามข้อมูลต่อไปนี้ด้วย
- 16 แคมเปญที่แตกต่างกัน
- 8 ภูมิภาคทางภูมิศาสตร์ที่แตกต่างกัน ได้แก่ อเมริกาเหนือ อเมริกากลาง อเมริกาใต้ ยุโรป แอฟริกา เอเชีย แคริบเบียน และโอเชียเนีย
- หมวดหมู่ผลิตภัณฑ์ที่แตกต่างกัน 29 หมวดหมู่
สิ่งที่ควรวัด
แม้ว่าบริษัทเทคโนโลยีโฆษณาหลายแห่งจะสนับสนุนให้ผู้ลงโฆษณากําหนดค่า Conversion ประเภทต่างๆ แต่การมุ่งเน้นที่ Conversion ที่สําคัญที่สุด เช่น การซื้อ เป็นวิธีที่ดีในการยืนยันว่าผลลัพธ์รวมนั้นมีรายละเอียดและถูกต้องสําหรับเหตุการณ์ Conversion ที่สําคัญเหล่านี้ ยิ่งวัดเมตริกมากเท่าไร งบประมาณการมีส่วนร่วมต่อเมตริกก็จะยิ่งน้อยลง และค่าแต่ละค่าก็มีแนวโน้มที่จะมีความผันผวนมากขึ้น ดังนั้นคุณจึงต้องเลือกสิ่งที่ต้องการวัดอย่างรอบคอบ
ในตัวอย่างนี้ เราจะมุ่งเน้นที่การตั้งค่าแคมเปญที่วัด Conversion เพียง 1 รายการต่อการคลิกหรือการดู นั่นคือ การซื้อ
คุณจะยังคงวัดทั้งจํานวนการซื้อและมูลค่าการซื้อ รวมถึงเข้าถึงสถิติรวมที่สําคัญต่างๆ เช่น มูลค่าการซื้อทั้งหมดและการแบ่งตามภูมิศาสตร์ ซึ่งจะจัดการเสียงรบกวนได้อย่างมีประสิทธิภาพ พร้อมทั้งยืนยันวิธีการปรับขนาดงบประมาณสำหรับการมีส่วนร่วมที่ตรงไปตรงมา
แล้วสกุลเงินล่ะ
การแสดงแคมเปญในภูมิภาคต่างๆ หมายความว่าควรพิจารณาสกุลเงินด้วย การดำเนินการที่คุณทำได้มีดังนี้
- ทําให้สกุลเงินเป็นมิติข้อมูลเฉพาะในคีย์การรวม
- หรืออนุมานสกุลเงินจากรหัสแคมเปญ แล้วแปลงสกุลเงินทั้งหมดเป็นสกุลเงินอ้างอิง
ในตัวอย่างนี้ เราจะถือว่าคุณอนุมานสกุลเงินจากรหัสแคมเปญได้ ซึ่งจะช่วยให้คุณแปลงมูลค่าการซื้อที่กำหนดจากสกุลเงินท้องถิ่นของผู้ใช้เป็นสกุลเงินอ้างอิงที่คุณเลือกได้ นอกจากนี้ คุณยังทำการแปลงค่าดังกล่าวได้ทันทีเมื่อผู้ใช้ซื้อสินค้า
เทคนิคนี้จะทำให้ค่าที่รวบรวมได้ทั้งหมดอยู่ในสกุลเงินอ้างอิงเดียวกัน จึงสามารถนำมารวมกันเพื่อสร้างมูลค่าการซื้อรวมทั้งหมด ซึ่งก็คือมูลค่าการซื้อสรุป
เปลี่ยนเป้าหมายให้เป็นคีย์
เมื่อมีเป้าหมายและเมตริกการวัดผล คุณจะมีตัวเลือกมากมายสำหรับ กลยุทธ์หลัก มาดู 2 กลยุทธ์ต่อไปนี้กัน
- กลยุทธ์ ก. โครงสร้างคีย์แบบละเอียด 1 รายการ
- กลยุทธ์ B: โครงสร้างคีย์หยาบ 2 โครงสร้าง
กลยุทธ์ ก. ต้นไม้แบบลึก 1 ต้น (โครงสร้างคีย์แบบละเอียด 1 โครงสร้าง)
ในกลยุทธ์ A คุณใช้โครงสร้างคีย์แบบละเอียด 1 รายการ ซึ่งรวมมิติข้อมูลทั้งหมดที่คุณต้องการ ดังนี้
คีย์ทั้งหมดของคุณใช้โครงสร้างนี้
คุณจะแยกโครงสร้างคีย์นี้ออกเป็นคีย์ 2 ประเภทเพื่อรองรับเป้าหมายการวัดผล 2 อย่าง
- คีย์ประเภท 0: ประเภทเป้าหมายการวัด = 0 ซึ่งคุณตัดสินใจที่จะกำหนดเป็นจํานวนการซื้อ
- คีย์ประเภทที่ 1: ประเภทเป้าหมายการวัดผล = 1 ซึ่งคุณตัดสินใจที่จะกําหนดเป็นมูลค่าการซื้อ
รายงานสรุปมีลักษณะดังนี้
คุณอาจมองว่ากลยุทธ์ ก. เป็นกลยุทธ์ "ต้นไม้ที่มีกิ่งก้านเดียว" ดังนี้
- ค่าสรุปแต่ละค่าในรายงานสรุปจะเชื่อมโยงกับมิติข้อมูลทั้งหมดที่คุณติดตาม
- คุณสามารถสรุปค่าเหล่านี้ควบคู่ไปกับมิติข้อมูลแต่ละรายการ เพื่อให้การสรุปเหล่านี้ลงลึกได้เท่ากับจำนวนมิติข้อมูลที่คุณมี
เมื่อใช้กลยุทธ์ ก คุณจะตอบคำถามดังนี้
| คำถาม | คำตอบ |
|---|---|
| หมวดหมู่ผลิตภัณฑ์ใดมีคุณค่ามากที่สุดในแต่ละภูมิภาค | รวมจํานวนและการซื้อสรุปที่อยู่ในรายงานสรุปในทุกแคมเปญ
ซึ่งจะแสดงจำนวนการซื้อและมูลค่าต่อรหัสทางภูมิศาสตร์ × หมวดหมู่ผลิตภัณฑ์ เปรียบเทียบมูลค่าการซื้อและจำนวนหมวดหมู่ผลิตภัณฑ์ต่างๆ สำหรับแต่ละภูมิภาค |
| กลยุทธ์แคมเปญใดมีประสิทธิภาพมากที่สุดในแต่ละภูมิภาค | รวมจำนวนการซื้อและมูลค่าสรุปที่อยู่ในรายงานสรุปในทุกหมวดหมู่ผลิตภัณฑ์ ซึ่งจะแสดงจํานวนการซื้อและมูลค่าต่อรหัสแคมเปญ × รหัสภูมิศาสตร์ เปรียบเทียบมูลค่าการซื้อและจำนวนการซื้อของแคมเปญต่างๆ ในแต่ละภูมิภาค |
กลยุทธ์ ก ยังช่วยให้คุณตอบคำถามที่ 3 นี้ได้โดยตรงด้วย
"แคมเปญแต่ละแคมเปญในแต่ละภูมิภาคสร้างรายได้จากผลิตภัณฑ์แต่ละรายการเป็นจำนวนเท่าใด"
แม้ว่าค่าสรุปจะมีสัญญาณรบกวน แต่คุณก็สามารถระบุได้ว่าเมื่อใดที่ ความแตกต่างของค่าที่วัดได้ระหว่างแต่ละแคมเปญไม่ได้เกิดจากสัญญาณรบกวน เพียงอย่างเดียว ดูวิธีดำเนินการนี้ได้ในทำความเข้าใจเกี่ยวกับเสียงรบกวน
กลยุทธ์ B: ต้นไม้แบบตื้น 2 ต้น (โครงสร้างคีย์แบบหยาบ 2 โครงสร้าง)
ในกลยุทธ์ B คุณใช้โครงสร้างคีย์แบบคร่าวๆ 2 โครงสร้าง โดยแต่ละโครงสร้างจะมีชุดย่อยของ มิติข้อมูลที่คุณต้องการ
คุณจะแยกโครงสร้างหลักแต่ละอย่างออกเป็น 2 ประเภทหลักเพื่อรองรับเป้าหมายการวัดผล 2 อย่าง
- ประเภทเป้าหมายการวัดผล = 0 ซึ่งคุณตัดสินใจที่จะกําหนดเป็นจํานวน การซื้อ
- ประเภทเป้าหมายการวัดผล = 1 ซึ่งคุณตัดสินใจที่จะกําหนดเป็นมูลค่า การซื้อ
คุณจะมีคีย์ 4 ประเภทหลักๆ ดังนี้
- ประเภทคีย์ I-0: โครงสร้างคีย์ I, จำนวนการซื้อ
- ประเภทคีย์ I-1: โครงสร้างคีย์ I มูลค่าการซื้อ
- คีย์ประเภท II-0: โครงสร้างคีย์ II, จำนวนการซื้อ
- ประเภทคีย์ II-1: โครงสร้างคีย์ II, มูลค่าการซื้อ
รายงานสรุปมีลักษณะดังนี้
คุณอาจคิดว่ากลยุทธ์ B เป็นกลยุทธ์ "ต้นไม้ตื้น 2 ต้น" ดังนี้
- ค่าสรุปในรายงานสรุปจะแมปกับมิติข้อมูล 1 ใน 2 ชุดเล็กๆ
- คุณสามารถสรุปค่าเหล่านี้ควบคู่ไปกับมิติข้อมูลแต่ละรายการในชุดข้อมูลเหล่านี้ได้ ซึ่งหมายความว่าการสรุปเหล่านี้จะไม่ละเอียดเท่าในตัวเลือก A เนื่องจากมีมิติข้อมูลน้อยกว่าที่จะสรุป
เมื่อใช้กลยุทธ์ B คุณจะตอบคำถามดังนี้
| คำถาม | คำตอบ |
|---|---|
| หมวดหมู่ผลิตภัณฑ์ใดมีคุณค่ามากที่สุดในแต่ละภูมิภาค | เข้าถึงจํานวนการซื้อและมูลค่ารวมที่อยู่ใน รายงานสรุปได้โดยตรง |
| กลยุทธ์แคมเปญใดมีประสิทธิภาพมากที่สุดในแต่ละภูมิภาค | เข้าถึงจํานวนการซื้อและมูลค่ารวมที่อยู่ใน รายงานสรุปได้โดยตรง |
การตัดสินใจ: กลยุทธ์ ก
กลยุทธ์ ก. นั้นง่ายกว่า เนื่องจากข้อมูลทั้งหมดใช้โครงสร้างคีย์เดียวกัน ซึ่งหมายความว่าคุณมีโครงสร้างคีย์เพียงโครงสร้างเดียวที่ต้องดูแล
อย่างไรก็ตาม กลยุทธ์ ก. คุณต้องรวมค่าสรุปที่ได้รับใน รายงานสรุปเพื่อตอบคำถามบางข้อ ค่าสรุปแต่ละค่าเหล่านี้ มีสัญญาณรบกวน การรวมข้อมูลดังกล่าวจะเท่ากับการรวมสัญญาณรบกวนด้วย
แต่กลยุทธ์ B ไม่เป็นเช่นนั้น เนื่องจากค่าสรุปที่แสดงในรายงานสรุปให้ข้อมูลที่คุณต้องการอยู่แล้ว ซึ่งหมายความว่ากลยุทธ์ B น่าจะส่งผลกระทบจากสัญญาณรบกวนน้อยกว่ากลยุทธ์ A
คุณควรพิจารณาว่าจะใช้กลยุทธ์ใดอย่างไร สําหรับผู้ลงโฆษณาหรือแคมเปญที่มีอยู่ คุณอาจต้องอาศัยข้อมูลย้อนหลังเพื่อพิจารณาว่าปริมาณ Conversion เหมาะสมกับกลยุทธ์ ก. หรือกลยุทธ์ ข. มากกว่า อย่างไรก็ตาม สำหรับผู้ลงโฆษณาหรือแคมเปญใหม่ คุณอาจเลือกดำเนินการต่อไปนี้
- รวบรวมข้อมูล 1 เดือนด้วยคีย์แบบละเอียด (กลยุทธ์ ก.) เนื่องจากคุณขยายระยะเวลาการเก็บรวบรวมข้อมูล ค่าสรุป จึงสูงขึ้นและสัญญาณรบกวนจะลดลงตามสัดส่วน
- ประเมินจํานวน Conversion และมูลค่าการซื้อรายสัปดาห์ด้วยความแม่นยําที่สมเหตุสมผล
ในตัวอย่างนี้ สมมติว่าจำนวนการซื้อและมูลค่าการซื้อรายสัปดาห์ สูงพอที่กลยุทธ์ ก จะทําให้เกิดเปอร์เซ็นต์สัญญาณรบกวนที่คุณเห็นว่า ยอมรับได้สําหรับกรณีการใช้งานของคุณ
เนื่องจากกลยุทธ์ ก. นั้นง่ายกว่าและส่งผลให้เกิดสัญญาณรบกวนที่ไม่ ส่งผลต่อความสามารถในการตัดสินใจ คุณจึงเลือกใช้กลยุทธ์ ก.
เลือกอัลกอริทึมแฮช
คุณตัดสินใจที่จะใช้แนวทางที่ใช้แฮช เพื่อสร้างคีย์ โดยคุณต้องเลือกอัลกอริทึมการแฮชเพื่อ รองรับแนวทางดังกล่าว
สมมติว่าคุณเลือก SHA-256 คุณยังใช้อัลกอริทึมที่ง่ายกว่าและมีความปลอดภัยน้อยกว่า เช่น MD5 ได้ด้วย
ในเบราว์เซอร์: ตั้งค่าคีย์และค่า
ตอนนี้คุณได้ตัดสินใจเลือกโครงสร้างคีย์และอัลกอริทึมการแฮชแล้ว พร้อมที่จะลงทะเบียนคีย์และค่าเมื่อผู้ใช้คลิกหรือดูโฆษณาและทำ Conversion ในภายหลัง
ต่อไปนี้เป็นภาพรวมของส่วนหัวที่คุณจะตั้งค่าเพื่อลงทะเบียนคีย์และค่าใน เบราว์เซอร์
ตั้งค่าชิ้นส่วนสำคัญฝั่งแหล่งที่มา
เมื่อผู้ใช้คลิกหรือดูโฆษณา ให้ตั้งค่าคีย์การรวบรวมในส่วนหัว
Attribution-Reporting-Register-Aggregatable-Source
ในขั้นตอนนี้ คุณจะตั้งค่าได้เฉพาะส่วนของคีย์ หรือชิ้นส่วนคีย์ที่ทราบในเวลาที่แสดงโฆษณาเท่านั้น
มาสร้างชิ้นส่วนสำคัญกัน
| ชิ้นส่วนคีย์ฝั่งแหล่งที่มาสำหรับรหัสคีย์… | สตริงที่มีค่ามิติข้อมูลที่ต้องการตั้งค่า | แฮชของสตริงนี้เป็นเลขฐานสิบหก โดยตัดให้เหลือ 64 บิตแรก (64/4 = 16 อักขระ1) | แฮชฐานสิบหกที่มีการต่อท้ายด้วยเลขศูนย์เพื่อลดความซับซ้อน ของ OR นี่คือคีย์ฝั่งแหล่งที่มา |
|---|---|---|---|
key_purchaseCount |
COUNT, CampaignID=12, GeoID=7 |
0x3cf867903fbb73ec | 0x3cf867903fbb73ec0000000000000000 |
key_purchaseValue |
VALUE, CampaignID=12, GeoID=7 |
0x245265f432f16e73 | 0x245265f432f16e730000000000000000 |
ตอนนี้เรามาตั้งค่าชิ้นส่วนสำคัญกัน
// 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"
}
])
);
โปรดทราบว่ารหัสที่สำคัญจะไม่ปรากฏในรายงานสุดท้าย โดยจะใช้เฉพาะเมื่อตั้งค่าคีย์ในเบราว์เซอร์เท่านั้น เพื่อให้สามารถจับคู่ชิ้นส่วนคีย์ฝั่งต้นทางและฝั่งทริกเกอร์เข้าด้วยกันและรวมเป็นคีย์แบบเต็มได้
ไม่บังคับ: รายงานระดับเหตุการณ์
หากต้องการใช้รายงานระดับเหตุการณ์ควบคู่ไปกับรายงานที่รวบรวมได้ ให้ตรวจสอบว่าระบบจับคู่ข้อมูลระดับเหตุการณ์ (รหัสเหตุการณ์แหล่งที่มาและข้อมูลทริกเกอร์) และ คีย์การรวบรวมสําหรับแหล่งที่มาที่กําหนดได้
คุณอาจใช้ทั้ง 2 รายงานหากวางแผนที่จะใช้รายงานระดับเหตุการณ์เพื่อเรียกใช้โมเดลเกี่ยวกับประเภทโฆษณาที่มีแนวโน้มที่จะทําให้เกิดการซื้อมากที่สุด เป็นต้น
ผู้ใช้ทำ Conversion
เมื่อผู้ใช้ทํา Conversion โดยปกติแล้วระบบจะส่งคําขอพิกเซลไปยังเซิร์ฟเวอร์เทคโนโลยีโฆษณา เมื่อได้รับคำขอนี้
- ตั้งค่าชิ้นส่วนสำคัญฝั่ง Conversion (ฝั่งทริกเกอร์) เพื่อสร้างคีย์ให้สมบูรณ์
คุณจะตั้งค่าชิ้นส่วนสำคัญเหล่านี้โดยใช้ส่วนหัว
Attribution-Reporting-Register-Aggregatable-Trigger-Data - กําหนดมูลค่าที่รวบรวมได้สําหรับ Conversion นั้นโดยใช้ส่วนหัว
Attribution-Reporting-Register-Aggregatable-Values
ตั้งค่าชิ้นส่วนคีย์ด้านทริกเกอร์เพื่อสร้างคีย์ให้สมบูรณ์
มาสร้างชิ้นส่วนสำคัญกัน
| ชิ้นส่วนคีย์ฝั่งทริกเกอร์สำหรับรหัสคีย์… | สตริงที่มีค่ามิติข้อมูลที่ต้องการตั้งค่า | แฮชของสตริงนี้เป็นเลขฐานสิบหก โดยตัดให้เหลือ 64 บิตแรก (64/4 = 16 อักขระ1) | แฮชฐานสิบหกที่มีการต่อท้ายด้วยเลขศูนย์เพื่อลดความซับซ้อนของการดำเนินการ OR นี่คือคีย์หลักฝั่งแหล่งที่มา |
|---|---|---|---|
key_purchaseCount |
ProductCategory=25 |
0x1c7ce88c4904bbe2 | 0x0000000000000000f9e491fe37e55a0c |
key_purchaseValue |
(เหมือนกัน) | (เหมือนกัน) | (เหมือนกัน) |
ตอนนี้เรามาตั้งค่าชิ้นส่วนสำคัญกัน
// 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 ซึ่งระบบจะเพิ่มคีย์ลงในคีย์ทั้ง 2 รายการ
ตั้งค่าที่รวบรวมได้
ก่อนที่จะตั้งค่าที่รวบรวมได้ คุณต้องปรับขนาดค่าเหล่านั้นเพื่อ ลดสัญญาณรบกวน
สมมติว่ามีการซื้อประเภทผลิตภัณฑ์ 25 ในราคา $52
คุณจะไม่ตั้งค่าเหล่านี้เป็นค่าที่รวบรวมได้โดยตรง
key_purchaseCount: Conversion 1 ครั้งkey_purchaseValue: $52
แต่ก่อนที่จะลงทะเบียนค่าที่รวบรวมได้เหล่านี้ คุณต้องปรับขนาด ค่าดังกล่าวเพื่อลดสัญญาณรบกวน
คุณมีเป้าหมาย 2 อย่างในการใช้จ่ายงบประมาณเพื่อการสนับสนุน ดังนั้นคุณอาจตัดสินใจแบ่งงบประมาณเพื่อการสนับสนุนออกเป็น 2 ส่วน
ในกรณีนี้ ระบบจะจัดสรรเป้าหมายแต่ละรายการสูงสุด 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 เนื่องจากคุณ ตัดสินใจที่จะติดตามการซื้ออย่างมาก 1 รายการต่อการคลิกหรือการดูโฆษณา (เหตุการณ์แหล่งที่มา)
ตอนนี้คุณตั้งค่าต่อไปนี้ได้แล้ว
key_purchaseCount: 1 × 32,768 = 32,768key_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,
})
);
ระบบสร้างรายงานที่รวบรวมได้
เบราว์เซอร์จะจับคู่ Conversion กับการดูหรือการคลิกก่อนหน้า และสร้าง รายงานที่รวบรวมได้ ซึ่งมีเพย์โหลดที่เข้ารหัสอยู่ข้างข้อมูลเมตาของรายงาน
ตัวอย่างข้อมูลที่อาจพบในเพย์โหลดของ รายงานที่รวบรวมได้ หากอ่านได้ในข้อความธรรมดา
[
{
key: 0x3cf867903fbb73ecf9e491fe37e55a0c, // = source-side key piece OR 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 OR conversion-side key piece for the key key_purchaseValue
value: 1144 // the scaled value for $52, in the context of [CONTRIBUTION_BUDGET/2]
},
]
คุณจะเห็นการมีส่วนร่วม 2 รายการแยกกันภายในรายงานที่รวบรวมได้รายการเดียว
ขอรายงานสรุป
- รายงานแบบรวมเป็นกลุ่ม ทำตามคำแนะนำที่ระบุไว้ในส่วนการจัดกลุ่ม
- สร้างคีย์ที่คุณต้องการดูข้อมูล เช่น หากต้องการดูข้อมูลสรุป
สำหรับ
COUNT(จำนวนการซื้อทั้งหมด) และVALUE(มูลค่าการซื้อทั้งหมด) สำหรับรหัสแคมเปญ 12 × รหัสภูมิศาสตร์ 7 × หมวดหมู่ผลิตภัณฑ์ 25- สร้างชิ้นส่วนคีย์ฝั่งแหล่งที่มาเช่นเดียวกับตอนที่ตั้งค่าในเบราว์เซอร์
- สร้างชิ้นส่วนคีย์ฝั่งทริกเกอร์เช่นเดียวกับตอนที่ตั้งค่าในเบราว์เซอร์
| เมตริกที่คุณต้องการขอ1 | ชิ้นส่วนคีย์ฝั่งต้นทาง | ชิ้นส่วนสำคัญของทริกเกอร์ | คีย์สำหรับส่งคำขอไปยังบริการรวมข้อมูล2 |
|---|---|---|---|
จำนวนการซื้อทั้งหมด (COUNT) |
0x3cf867903fbb73ec 0000000000000000 |
0x00000000000000 00f9e491fe37e55a0c |
0x3cf867903fbb73 ecf9e491fe37e55a0c |
มูลค่าการซื้อทั้งหมด (VALUE) |
0x245265f432f16e73 0000000000000000 |
0x0000000000000000 f9e491fe37e55a0c |
0x245265f432f16e73 f9e491fe37e55a0c |
- ขอข้อมูลสรุปไปยังบริการรวมข้อมูลสำหรับคีย์เหล่านี้
จัดการรายงานสรุป
สุดท้าย คุณจะได้รับรายงานสรุปที่มีลักษณะดังนี้
[
{"bucket": "00111100111110000110011110010000001111111011101101110011111011001111100111100100100100011111111000110111111001010101101000001100",
"value": "2558500"},
{"bucket": "00100100010100100110010111110100001100101111000101101110011100111111100111100100100100011111111000110111111001010101101000001100",
"value": "687060"},
…
]
บักเก็ตแรกคือคีย์ COUNT ในไบนารี ที่เก็บข้อมูลที่ 2 คือVALUEคีย์
ในไบนารี
โปรดทราบว่าแม้ว่าคีย์จะแตกต่างกัน (COUNT กับ VALUE) แต่คีย์จะอยู่ในรายงานเดียวกัน
ลดค่า
- 2,558,500 หมายถึงจำนวนการซื้อสำหรับคีย์นี้ ซึ่งปรับขนาดขึ้นตาม ปัจจัยการปรับขนาดที่คุณคำนวณไว้ก่อนหน้านี้ ค่าตัวคูณมาตราส่วนสำหรับ จำนวนการซื้อคือ 32,768 นำ 2,558,500 มาหารด้วยงบประมาณ การมีส่วนร่วมของเป้าหมาย: 2,558,500/32,768 = 156.15 การซื้อ
- 687,060 → 687,060/22 = มูลค่าการซื้อทั้งหมด $31,230
ด้วยเหตุนี้ รายงานสรุปจึงให้ข้อมูลเชิงลึกต่อไปนี้
- Within the reporting time period, campaign #12
run in Europe drove about 156 purchases (± noise)
for the product category #25
```
```text
- Within the reporting time period, campaign #12
run in Europe drove $31,230 of purchases (± noise)
for the product category #25.