使用 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 雲端專案的標準限制和存取層級。無論結果是否分頁或串流,單一查詢或報表都會計為一次作業。