โปรดคำนึงถึงหลักเกณฑ์เหล่านี้เมื่อใช้ BatchJobService
ปรับปรุงอัตราการส่งข้อมูล
งานใหญ่ๆ จำนวนน้อยๆ ควรมากกว่างานเล็กๆ จำนวนมาก
ลำดับการดำเนินการที่อัปโหลดตามประเภทการดำเนินการ เช่น หากงานของคุณมีการดำเนินการเพื่อเพิ่มเกณฑ์สำหรับแคมเปญ กลุ่มโฆษณา และกลุ่มโฆษณา ให้จัดเรียงการดำเนินการในการอัปโหลดเพื่อให้การดำเนินการแคมเปญทั้งหมดเป็นลำดับแรก ตามด้วยการดำเนินการของกลุ่มโฆษณาทั้งหมด และสุดท้ายคือการดำเนินการสำหรับเกณฑ์ของกลุ่มโฆษณาทั้งหมด
ภายในการดำเนินการประเภทเดียวกัน จะช่วยปรับปรุงประสิทธิภาพโดยจัดกลุ่มตามทรัพยากรระดับบนสุดได้ ตัวอย่างเช่น หากคุณมีชุดของออบเจ็กต์
AdGroupCriterionOperation
อาจมีประสิทธิภาพมากกว่าในการจัดกลุ่มการดำเนินการตามกลุ่มโฆษณา แทนที่จะรวมการดำเนินการที่ส่งผลต่อเกณฑ์ของกลุ่มโฆษณาในกลุ่มโฆษณาต่างๆ
หลีกเลี่ยงปัญหาการเกิดขึ้นพร้อมกัน
เมื่อส่งงานหลายรายการพร้อมกันสำหรับบัญชีเดียวกัน ให้พยายามลดโอกาสที่งานจะดำเนินการบนออบเจ็กต์เดียวกันพร้อมกันแต่ยังคงรักษาขนาดงานขนาดใหญ่ไว้ งานที่ยังไม่เสร็จหลายงาน (ที่มีสถานะ
RUNNING
) ที่พยายามกลายพันธุ์ของออบเจ็กต์ชุดเดียวกันอาจทำให้เกิดภาวะเหมือนการติดตาย ส่งผลให้การทำงานช้าลงอย่างมากหรือแม้กระทั่งทำงานไม่สำเร็จอย่าส่งการดำเนินการหลายรายการที่เปลี่ยนแปลงออบเจ็กต์เดียวกันในงานเดียวกัน เนื่องจากผลลัพธ์จะคาดเดาไม่ได้
ดึงผลลัพธ์ออกมาดีที่สุด
อย่าสำรวจสถานะของงานบ่อยเกินไป ไม่เช่นนั้นคุณอาจเสี่ยงที่จะเกิดข้อผิดพลาดเกี่ยวกับขีดจำกัดอัตรา
อย่าดึงผลการค้นหาเกิน 1,000 รายการต่อหน้า เซิร์ฟเวอร์อาจแสดงน้อยกว่าที่ควรจะเป็นเนื่องจากภาระงานหรือปัจจัยอื่นๆ
ลำดับผลลัพธ์จะเหมือนกับลำดับการอัปโหลด
คำแนะนำการใช้งานเพิ่มเติม
คุณตั้งค่าขอบเขตสูงสุดได้ว่าจะอนุญาตให้งานแบบกลุ่มทำงานเป็นเวลานานเท่าใดก่อนที่จะยกเลิก เมื่อสร้างงานแบบกลุ่มใหม่ ให้ตั้งค่าช่อง
metadata.execution_limit_seconds
เป็นขีดจำกัดเวลาที่ต้องการ หน่วยเป็นวินาที หากไม่ได้ตั้งค่าmetadata.execution_limit_seconds
ไว้จะไม่มีขีดจำกัดเวลาเริ่มต้นขอแนะนำให้เพิ่มการดำเนินการไม่เกิน 1,000 รายการต่อ
AddBatchJobOperationsRequest
และใช้sequence_token
เพื่ออัปโหลดการดำเนินการที่เหลือไปยังงานเดียวกัน การดำเนินการที่มากเกินไปในAddBatchJobOperationsRequest
รายการเดียวอาจทำให้เกิดข้อผิดพลาดREQUEST_TOO_LARGE
ทั้งนี้ขึ้นอยู่กับเนื้อหาของการดำเนินการ คุณจัดการข้อผิดพลาดนี้ได้โดยลดจำนวนการดำเนินการลงแล้วลองใช้AddBatchJobOperationsRequest
อีกครั้ง
ข้อจำกัด
BatchJob
แต่ละรายการรองรับการดำเนินการสูงสุด 1 ล้านรายการแต่ละบัญชีจะมีงานที่ทำงานอยู่หรือรอดำเนินการพร้อมกันได้สูงสุด 100 งาน
ระบบจะนำงานที่รอดำเนินการซึ่งมีอายุนานกว่า 7 วันออกโดยอัตโนมัติ