[Datastream for BigQuery] BigQuery へのデータ同期頻度を確認・変更する方法を教えてください

[Datastream for BigQuery] BigQuery へのデータ同期頻度を確認・変更する方法を教えてください

Clock Icon2025.05.07

困っていた内容

Datastream を使用した BigQuery へのデータ更新頻度の確認・変更方法について教えてください。

Datastream を利用して Cloud SQL for PostgreSQL から BigQuery へデータを連携しています。BigQuery のテーブルが最新のデータに更新される頻度を確認したいのですが、その設定や確認方法がわかりません。

BigQuery のデータは Looker Studio でダッシュボード化しており、データドリブンな意思決定に活用しているため、データの鮮度が非常に重要です。Datastream のどの設定で更新頻度を確認・変更できるのか教えてください。

回答

Datastream の書き込みモードが "マージ書き込みモード" の場合は、設定 staleness limit において Datastream に送信されたデータが BigQuery に反映されるまでの時間の上限が指定可能です。Cloud SQL for PostgreSQL から Datastream へのデータ同期は、PostgreSQL の論理レプリケーション機能を使用しているため、この区間のデータ更新頻度は論理レプリケーションの仕様に依存します。

やってみた

実際に Google Cloud コンソールにおいて設定箇所を確認してみます。

既存の Datastream を設定変更する場合

  1. Datastream のページに移動し対象のストリームを選択します

手順01

  1. 画面上部にある Edit のプルダウンメニューから Edit destination configuration を選択します

手順02

  1. 画面を下へスクロールし項目 staleness limit のプルダウンボタンを押下します

手順03

  1. 短い時間を選択するほど、Datastream から BigQuery へのデータ更新頻度が高くなります

手順04

Datastream を新規作成する場合

Datastream を新規作成する場合は、ストリーム作成の手順 5 Configure destination において、書き込みモードと共に指定します。

  1. 画面を下へスクロールします

001

  1. 書き込みモードはマージ(Merge)を選択します
    追記専用の書き込みモード "Append-only write mode" においては、staleness limit はサポートされていません。(2025/05/05 時点)

002

  1. 0 seconds を選択すると最も短い間隔でデータが更新されます
    ※ データ更新が頻繁に行われることで費用と BigQuery のクエリレイテンシーが増加する可能性があるため、ワークロードに合わせた設定をしてください。
    staleness limit

まとめ

設定 staleness limit によって、BigQuery へのデータ更新頻度が変更できます。低い値を選択することで最新のデータを BigQuery に反映できますが、頻繁な更新によりコストが増加します。即時のデータ反映が必要ではない場合、更新頻度を下げてコストを抑える運用も検討してください。

この記事がどなたかのお役に立てば幸いです。

参考資料

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.