รายงานสตรีมมิงโดยใช้ GoogleAdsService

หากต้องการดึงข้อมูลเอนทิตีและข้อมูลการรายงานของ Google Ads API ให้ใช้วิธีใดวิธีหนึ่งต่อไปนี้

ความแตกต่างระดับสูงของทั้ง 2 วิธีมีดังนี้

GoogleAdsService.SearchStream GoogleAdsService.Search
เหมาะสำหรับโค้ดที่ใช้งานจริง ใช่ ใช่
บริการ GoogleAdsService GoogleAdsService
สถานการณ์ การดึงข้อมูลออบเจ็กต์และรายงาน การดึงข้อมูลออบเจ็กต์และรายงาน
การตอบกลับ สตรีม ออบเจ็กต์ GoogleAdsRow หน้าออบเจ็กต์ GoogleAdsRow
ฟิลด์ของการตอบกลับ เฉพาะฟิลด์ที่ระบุในการค้นหา เฉพาะฟิลด์ที่ระบุในการค้นหา
ขีดจำกัดการใช้งานต่อวัน ขีดจำกัดการใช้งานต่อวันตามระดับการเข้าถึง ขีดจำกัดการใช้งานต่อวันตามระดับการเข้าถึง

แม้ว่า Search จะส่งคำขอแบบแบ่งหน้าหลายรายการ เพื่อดาวน์โหลดรายงานทั้งหมดได้ แต่ SearchStream จะส่งคำขอเดียวและ เริ่มต้นการเชื่อมต่อแบบถาวรกับ Google Ads API ไม่ว่ารายงานจะมีขนาดเท่าใดก็ตาม

สำหรับ SearchStream แพ็กเก็ตข้อมูลจะเริ่มดาวน์โหลดทันทีโดยแคชผลลัพธ์ทั้งหมดไว้ในบัฟเฟอร์ข้อมูล โค้ดของคุณจะเริ่มอ่านข้อมูลที่บัฟเฟอร์ไว้ได้โดยไม่ต้องรอให้สตรีมทั้งหมดเสร็จสมบูรณ์

การขจัดเวลาไปกลับของเครือข่ายที่ต้องใช้ในการขอการตอบกลับแต่ละ หน้าของ Search ออกไป SearchStream จึงอาจให้ประสิทธิภาพที่ดีกว่าการแบ่งหน้า โดยเฉพาะอย่างยิ่งสำหรับรายงานขนาดใหญ่ ทั้งนี้ขึ้นอยู่กับแอปของคุณ

ตัวอย่าง

ตัวอย่างนี้จะดูรายงานที่มี 100,000 แถว ตารางต่อไปนี้จะแสดงความแตกต่างด้านการคำนวณระหว่าง 2 วิธี

SearchStream Search
ขนาดหน้า ไม่เกี่ยวข้อง 10,000 แถวต่อหน้า
จำนวนคำขอ API คำขอ 1 รายการ คำขอ 10 รายการ
จำนวนการตอบกลับจาก API สตรีมต่อเนื่อง 1 รายการ การตอบกลับ 10 รายการ

ปัจจัยด้านประสิทธิภาพ

สำหรับกรณีการใช้งานส่วนใหญ่ เราขอแนะนำให้ใช้ SearchStream แทน Search ด้วยเหตุผลต่อไปนี้

  • สำหรับรายงานหน้าเดียว (ไม่เกิน 10,000 แถว): ประสิทธิภาพของทั้ง 2 วิธีไม่แตกต่างกันมากนัก

  • สำหรับรายงานหลายหน้า: โดยปกติแล้ว SearchStream จะเร็วกว่าเนื่องจากไม่ต้องมีการไปกลับหลายครั้ง และการอ่านหรือเขียนจากแคชดิสก์ก็มีผลน้อยกว่า

ขีดจำกัดอัตรา

ขีดจำกัดการใช้งานต่อวันของทั้ง 2 วิธีเป็นไปตามขีดจำกัดมาตรฐานและ ระดับการเข้าถึงของโทเค็นของนักพัฒนา ระบบจะนับการค้นหาหรือรายงานเดียวเป็นการดำเนินการ 1 รายการ ไม่ว่าผลลัพธ์จะแบ่งหน้าหรือสตรีมก็ตาม