Storage Write API 簡介
BigQuery Storage Write API 是整合式資料擷取 API,可用於將記錄即時串流至 BigQuery。您可以透過 gRPC 和 REST 端點使用 Storage Write API。
選擇串流方式
您可以使用 gRPC 串流或 REST 端點,透過兩種方式使用 Storage Write API。gRPC 串流非常適合長期連線和持續串流,而 REST 端點則最適合暫時性、無狀態或受限的環境。
如果是新工作負載,建議使用 gRPC 串流,原因如下:
- 效率高的通訊協定。與透過 HTTP 的 REST 相比,gRPC 串流的效率更高。此外,它也支援通訊協定緩衝區二進位格式和 Apache Arrow 直欄格式,這些格式比 JSON 更有效率。寫入要求為非同步,且保證順序。
- 降低費用:gRPC 串流的費用遠低於 REST。此外,每月最多可免費擷取 2 TiB 的資料。
- 「僅傳送一次」元件資訊。gRPC 串流支援「僅傳送一次」元件資訊,方法是使用串流偏移,且如果用戶端在附加記錄時提供串流偏移,則絕不會在串流中寫入兩個具有相同偏移的訊息。
- 串流層級交易。透過 gRPC 串流,您可以將資料寫入串流,並以單一交易的形式提交資料。如果提交作業失敗,您可以安全地重試作業。
- 跨資料串流的交易。透過 gRPC 串流,多個 worker 可以建立自己的串流,獨立處理資料。所有工作人員完成作業後,您就可以將所有串流做為交易提交。
- 偵測結構定義更新。使用 gRPC 串流時,如果用戶端串流期間的基礎表格結構定義發生變更,API 會通知用戶端。用戶端可以決定是否要使用更新後的結構定義重新連線,或是繼續寫入現有連線。
下圖說明選擇串流方式時,應注意的其他技術細節: