คุณอาจต้องชาร์ดดิ้ง (หรือแบ่งฟีดออกเป็นหลายไฟล์) ทั้งนี้ขึ้นอยู่กับสินค้าคงคลัง
กรณีที่ควรใช้การแยกข้อมูล
ฟีดมีขนาดเกิน 200 MB สำหรับ 1 ไฟล์ (หลังจากการบีบอัด gzip)
- ตัวอย่าง: ฟีดความพร้อมให้บริการที่สร้างขึ้นมีขนาด 1 GB ข้อมูลนี้ควรแบ่งออกเป็นไฟล์ (หรือกลุ่ม) แยกต่างหากอย่างน้อย 5 ไฟล์
พื้นที่โฆษณาของพาร์ทเนอร์กระจายอยู่ในระบบและ/หรือภูมิภาคต่างๆ ซึ่งทําให้การไกล่เกลี่ยพื้นที่โฆษณาเป็นเรื่องยาก
- ตัวอย่าง: พาร์ทเนอร์มีพื้นที่โฆษณาในสหรัฐอเมริกาและสหภาพยุโรปที่อยู่ในระบบแยกกัน ระบบอาจสร้างฟีดด้วยไฟล์ (หรือกลุ่ม) 2 ไฟล์ โดย 1 ไฟล์สำหรับสหรัฐอเมริกา และ 1 ไฟล์สำหรับสหภาพยุโรปที่มี
nonce
และgeneration_timestamp
เดียวกัน
- ตัวอย่าง: พาร์ทเนอร์มีพื้นที่โฆษณาในสหรัฐอเมริกาและสหภาพยุโรปที่อยู่ในระบบแยกกัน ระบบอาจสร้างฟีดด้วยไฟล์ (หรือกลุ่ม) 2 ไฟล์ โดย 1 ไฟล์สำหรับสหรัฐอเมริกา และ 1 ไฟล์สำหรับสหภาพยุโรปที่มี
กฎทั่วไป
- แต่ละกลุ่มต้องมีขนาดไม่เกิน 200 MB ต่อ 1 ไฟล์ (หลังจากการบีบอัด gzip)
- เราขอแนะนำให้ใช้ไม่เกิน 20 ข้อมูลพร็อพเพอร์ตี้ต่อฟีด หากคุณมีเหตุผลทางธุรกิจที่ต้องใช้จำนวนเงินมากกว่าจำนวนดังกล่าว โปรดติดต่อทีมสนับสนุนเพื่อขอทราบวิธีการเพิ่มเติม
-
เรคคอร์ดแต่ละรายการ (เช่น ออบเจ็กต์
Merchant
รายการเดียว) ต้องส่งในสhard เดียว ไม่สามารถแยกออกเป็นหลายสhard อย่างไรก็ตาม ไม่จำเป็นต้องส่งในข้อมูลพร็อพเพอร์ตี้ที่มีshard_number
เดียวกันสำหรับฟีดในอนาคต - คุณควรแบ่งข้อมูลให้เท่าๆ กันระหว่างกลุ่มข้อมูลเพื่อให้ไฟล์ที่แบ่งกลุ่มทั้งหมดมีขนาดใกล้เคียงกันเพื่อประสิทธิภาพที่ดีขึ้น
วิธีแบ่งกลุ่มฟีด
คุณสามารถแบ่งกลุ่มฟีดเหตุการณ์ได้โดยแยก JSON รายการเดียวออกเป็นไฟล์ JSON แยกต่างหากที่มีเหตุการณ์ที่ไม่ทับซ้อนกัน และอัปเดตไฟล์ JSON ของตัวระบุไฟล์ด้วยรายชื่อชื่อไฟล์ JSON
แนะนำ: สำหรับไฟล์แต่ละไฟล์ (หรือกลุ่ม) ให้ตั้งชื่อไฟล์เพื่อระบุประเภทฟีด การประทับเวลา และหมายเลขกลุ่ม ข้อมูลควรมีขนาดใกล้เคียงกัน และระบบจะประมวลผลเมื่ออัปโหลดข้อมูลทั้งหมดแล้ว
ตัวอย่างที่มีการแบ่งกลุ่ม
ตัวระบุไฟล์ - event.feeddata.v1_1728306001.filedescriptor.json
{ "generation_timestamp": 1728306001, "name": "event.feeddata.v1", "data_file": [ "event.feeddata.v1_1728306001_001.json", "event.feeddata.v1_1728306001_002.json" ] }
ชาร์ด 0 - event.feeddata.v1_1728306001_001.json
{ "data": [ { "id": "event-1", ... }, { "id": "event-2", ... } ] }
ชาร์ด 1 - event.feeddata.v1_1728306001_002.json
{ "data": [ { "id": "event-3", ... }, { "id": "event-4", ... } ] }
กลุ่มสําหรับพื้นที่โฆษณาที่พาร์ทเนอร์จัดจำหน่าย
พาร์ทเนอร์อาจพบปัญหาในการรวมพื้นที่โฆษณาที่กระจายอยู่ในระบบและ/หรือภูมิภาคต่างๆ ไว้ในฟีดเดียว คุณสามารถใช้การแยกกลุ่มเพื่อแก้ปัญหาการไกล่เกลี่ยโดยการตั้งค่าแต่ละกลุ่มให้ตรงกับชุดพื้นที่โฆษณาของระบบแบบกระจายแต่ละระบบ
ตัวอย่างเช่น สมมติว่าสินค้าคงคลังของผู้ขายแบ่งออกเป็น 2 ภูมิภาค (สินค้าคงคลังในสหรัฐอเมริกาและสหภาพยุโรป) ซึ่งอยู่ใน 2 ระบบแยกกัน
พาร์ทเนอร์สามารถแบ่งฟีดแต่ละรายการออกเป็น 2 ไฟล์ (หรือชาร์ด) ดังนี้
ทําตามขั้นตอนต่อไปนี้เพื่อให้ระบบประมวลผลฟีดอย่างถูกต้อง
- กำหนดเวลาการอัปโหลดและกำหนดค่าอินสแตนซ์ของพื้นที่โฆษณาแต่ละรายการให้เป็นไปตามกำหนดการ
- กําหนดหมายเลขกลุ่มที่ไม่ซ้ำกันสําหรับแต่ละอินสแตนซ์ (เช่น สหรัฐอเมริกา = N, สหภาพยุโรป = N + 1)
ตั้งค่า
total_shards
เป็นจํานวนกลุ่มทั้งหมด - เลือก
generation_timestamp
ในเวลาที่อัปโหลดตามกำหนดการแต่ละครั้ง ในชุด ให้ตั้งค่าชื่อไฟล์ทั้งหมดให้มีค่าเหมือนกันสำหรับ 2 ช่องนี้ และแสดงชื่อไฟล์ที่คาดไว้ทั้งหมดในไฟล์ข้อบ่งชี้generation_timestamp
ควรเป็นปัจจุบันหรือที่ผ่านมาไม่นาน (ควรเป็นการประทับเวลาของฐานข้อมูลที่อ่านของพาร์ทเนอร์)
- หลังจากอัปโหลดกลุ่มทั้งหมดแล้ว Google จะจัดกลุ่มกลุ่มโดยใช้
generation_timestamp
และnonce
Google จะประมวลผลฟีดเป็นฟีดเดียว แม้ว่าแต่ละกลุ่มจะแสดงพื้นที่โฆษณาของพาร์ทเนอร์ในภูมิภาคที่แตกต่างกันและอาจอัปโหลดในเวลาที่ต่างกันของวัน ตราบใดที่ generation_timestamp
เหมือนกันในทุกกลุ่ม