หากต้องการดึงข้อมูลเอนทิตี Google Ads API และข้อมูลการรายงาน ให้ใช้วิธีใดวิธีหนึ่งต่อไปนี้
ความแตกต่างระดับสูงของทั้ง 2 วิธีมีดังนี้
| GoogleAdsService.SearchStream | GoogleAdsService.Search | |
|---|---|---|
| เหมาะสำหรับโค้ดที่ใช้งานจริง | มี | มี |
| บริการ | GoogleAdsService |
GoogleAdsService |
| สถานการณ์ | การดึงข้อมูลออบเจ็กต์และรายงาน | การดึงข้อมูลออบเจ็กต์และรายงาน |
| การตอบกลับ | สตรีมของออบเจ็กต์ GoogleAdsRow |
หน้าของออบเจ็กต์ GoogleAdsRow |
| ฟิลด์ของคำตอบ | เฉพาะที่ระบุในการค้นหา | เฉพาะที่ระบุในการค้นหา |
| ขีดจำกัดการใช้งานต่อวัน | โควต้าการใช้งานต่อวันตามระดับการเข้าถึง | โควต้าการใช้งานต่อวันตามระดับการเข้าถึง |
SearchStream เทียบกับ Search
แม้ว่า Search จะส่งคำขอแบบแบ่งหน้าหลายรายการเพื่อดาวน์โหลดรายงานทั้งหมดได้ แต่ SearchStream จะส่งคำขอเดียวและเริ่มการเชื่อมต่อแบบถาวรกับ Google Ads API โดยไม่คำนึงถึงขนาดรายงาน
สำหรับ SearchStream แพ็กเก็ตข้อมูลจะเริ่มดาวน์โหลดทันทีโดยมีผลลัพธ์ทั้งหมด
แคชไว้ในบัฟเฟอร์ข้อมูล โค้ดจะเริ่มอ่านข้อมูลที่บัฟเฟอร์ได้
โดยไม่ต้องรอให้สตรีมทั้งหมดเสร็จสิ้น
การลดเวลาในการรับส่งข้อมูลผ่านเครือข่ายที่จำเป็นในการขอแต่ละหน้าของคำตอบ Search จะช่วยให้ SearchStream มีประสิทธิภาพดีกว่าการแบ่งหน้า โดยเฉพาะอย่างยิ่งสำหรับรายงานขนาดใหญ่
ตัวอย่าง
ตัวอย่างนี้จะดูรายงานที่มี 100,000 แถว ตารางต่อไปนี้แสดงรายละเอียดความแตกต่างด้านการบัญชีระหว่าง 2 วิธี
| SearchStream | ค้นหา | |
|---|---|---|
| ขนาดหน้า | ไม่เกี่ยวข้อง | 10,000 แถวต่อหน้า |
| จำนวนคำขอ API | คำขอ 1 รายการ | คำขอ 10 รายการ |
| จำนวนการตอบกลับจาก API | 1 สตรีมแบบต่อเนื่อง | คำตอบ 10 รายการ |
ปัจจัยด้านประสิทธิภาพ
สำหรับกรณีการใช้งานส่วนใหญ่ เราขอแนะนำให้ใช้ SearchStream แทน Search ด้วยเหตุผลต่อไปนี้
สำหรับรายงานแบบหน้าเดียว (ไม่เกิน 10,000 แถว): ประสิทธิภาพของทั้ง 2 วิธีไม่แตกต่างกันอย่างมีนัยสำคัญ
สำหรับรายงานแบบหลายหน้า
SearchStreamมักจะเร็วกว่าเนื่องจากไม่ต้องมีการรับส่งหลายรอบ และการอ่านหรือเขียนจากแคชในดิสก์ก็ไม่ใช่ปัจจัยสำคัญ
ขีดจำกัดอัตรา
ขีดจำกัดรายวันสำหรับทั้ง 2 วิธีจะเป็นไปตามขีดจำกัดมาตรฐานและระดับการเข้าถึงของโทเค็นนักพัฒนาแอป ระบบจะนับการค้นหาหรือรายงานรายการเดียว เป็นการดำเนินการ 1 รายการ ไม่ว่าผลลัพธ์จะมีการแบ่งหน้าหรือสตรีมก็ตาม