รายงานสตรีมมิงโดยใช้ 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 วิธีเป็นไปตามขีดจำกัดมาตรฐานและระดับการเข้าถึงของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ Google ระบบจะนับการค้นหาหรือรายงานเดียวเป็นการดำเนินการ 1 รายการ ไม่ว่าผลลัพธ์จะแบ่งหน้าหรือสตรีมก็ตาม