使用 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 通常較快,因為可避免多次往返,且從磁碟快取讀取或寫入資料的影響較小。

頻率限制

兩種方法的每日上限都符合 Google Cloud 雲端專案的標準限制和存取層級。無論結果是否分頁或串流,單一查詢或報表都會計為一次作業。