コンテンツに移動
データ分析

Datastream の新しいストリーム復元機能を発表

2024年7月10日
Etai Margolin

Product Manager

Sagi Yosefia

Software Engineer

※この投稿は米国時間 2024 年 7 月 2 日に、Google Cloud blog に投稿されたものの抄訳です。

複雑で常に変化しているデータ レプリケーションの世界では、レプリケーション パイプラインは失敗しがちです。失敗の原因とタイミングを特定することは困難な場合が多く、データの完全性の問題を最小限に抑えながらレプリケーションを再開するには、一連の手動手順を踏まなければなりません。

Datastream の新しいストリーム復元機能を利用すると、データベース フェイルオーバーや長時間のネットワーク停止などの場合に、データ損失を最小限またはゼロに抑えながらデータ レプリケーションをすばやく再開できます。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/image1_aRtlB8s.gif

Datastream を使用して運用データベースから BigQuery にトランザクション データを複製して分析を行っている金融機関の例を考えてみます。ハードウェア障害が発生し、プライマリ データベース インスタンスがレプリカへの計画外のフェイルオーバーを行った場合、Datastream のレプリケーション パイプラインは、オリジナル ソースが利用不能になるので中断されます。ストリーム復元を利用すると、フェイルオーバーされたデータベース インスタンスからレプリケーションが再開され、トランザクション データが失われることはありません。

さらにオンライン小売業者の場合を見てみます。このオンライン小売店は BigQuery ML を使用した感情分析のために、Datastream を利用してお客様からのフィードバックを BigQuery に複製しています。長時間のネットワーク停止によりソース データベースへの接続が中断されると、ネットワーク接続が復元されるまでは、データベース サーバー上の変更は利用できなくなります。この場合、ストリーム復元を利用して、ログ内で利用可能な最初の位置からレプリケーションを再開できます。一部のフィードバックが失われる可能性がありますが、現在進行中の感情分析とトレンドの把握のために、小売店は最新データを優先して取得できます。

ストリーム復元の利点

ストリーム復元には、次のような多くの利点があります。

  • データ損失の削減: データベース インスタンスのフェイルオーバー、意図しないログファイルの削除、その他のインシデントが原因で発生するデータ損失からの回復が可能です。

  • ダウンタイムの短縮: ストリームを迅速に復元して継続的な CDC 取り込みを再開することで、ダウンタイムを最小限に抑えます。

  • 復元の簡素化: シンプルで直感的なインターフェースによってストリームを簡単に復元できます。

ストリーム復元の使用方法

ストリーム復元には、具体的な障害のシナリオや最新ログファイルが利用できるかどうかに応じて選択できるいくつかのオプションがあります。MySQL Oracle の場合、現在のログの位置から再試行、現在の位置をスキップして次に利用可能な位置からストリーミング、現在の位置をスキップして最新の位置からストリーミングのいずれかを選択できます。また、ストリームの再開位置に、ログシーケンス番号(LSN)、変更シーケンス番号(CSN)などの特定のログ位置を指定できます。このようにきめ細かく管理できることで、データの損失や出力の重複をなくすことができます。

PostgreSQL ソースの場合、PostgreSQL データベースに新しいレプリケーション スロットを作成して、Datastream でその新しいレプリケーション スロットからストリームを再開できます。

指定した位置からのストリームの開始

ストリームの復元に加えて、特定のログ位置からのストリームの開始または再開が必要になる状況は多くあります。たとえば、ソース データベースをアップグレードまたは移行する場合や、過去のデータが出力先にすでに存在するため、特定の時点(過去のデータの終了時点)から CDC を組み合わせたい場合などです。このような場合にストリーム復元 API を使用して、ストリームの開始前に開始位置を指定できます。

使ってみる

ストリーム復元の一般提供が開始されました。すべての Google Cloud リージョンで Google Cloud コンソールと API から、利用可能なすべての Datastream ソースでご利用いただけます。

ストリーム復元の詳細については、Datastream のドキュメントをご覧ください。

ー プロダクト マネージャー Etai Margolin

ー ソフトウェア エンジニア Sagi Yosefia

投稿先