使用 GoogleAdsService 回報串流

如要擷取 Google Ads API 實體和報表資料,請使用下列任一方法:

這兩種方法的主要差異如下:

GoogleAdsService.SearchStream GoogleAdsService.Search
適合用於正式版程式碼
服務 GoogleAdsService GoogleAdsService
情境 擷取物件和報表 擷取物件和報表
回應 串流 GoogleAdsRow 個物件 GoogleAdsRow 個物件的頁面
回應的欄位 僅限查詢中指定的帳戶 僅限查詢中指定的帳戶
每日上限 根據存取層級設定每日上限 根據存取層級設定每日上限

Search 可以傳送多個分頁要求來下載完整報表,但 SearchStream 只會傳送單一要求,並與 Google Ads API 建立持續連線,不受報表大小影響。

如果是 SearchStream,系統會立即開始下載資料封包,並將整個結果快取在資料緩衝區中。您的程式碼可以開始讀取緩衝資料,不必等待整個串流完成。

由於不需要網路往返時間來要求 Search 回應的每個個別頁面,因此 SearchStream 可提供比分頁功能更優異的效能,特別是較大的報表。

範例

這個範例會查看包含 100,000 個資料列的報表。下表列出這兩種方法在會計上的差異。

SearchStream 搜尋
頁面大小 不適用 每頁 10,000 列
API 要求次數 1 項要求 10 項要求
API 回應數 1 個連續串流 10 則回覆

影響效能的因素

在大多數情況下,我們建議使用 SearchStream,而非 Search,原因如下:

  • 單頁報表 (少於 10,000 列):兩種方法之間的效能差異不大。

  • 多頁面報表:通常 SearchStream 速度較快,因為可避免多次往返,且從磁碟快取讀取或寫入資料的影響較小。

頻率限制

兩種方法的每日上限都遵循開發人員權杖的標準限制和存取層級。無論結果是否分頁或串流,單一查詢或報表都會計為一項作業。