ストリームのオブジェクトのバックフィルを管理する

概要

データストリームのストリームでは、過去のデータをバックフィルすることや、進行中の変更を宛先にストリーミングすることが可能です。ストリームの作成の一環として、ストリームのソース データベースに関する情報を構成しました。

[バックフィル履歴データ] チェックボックスをオンにした場合、Datastream はデータへの変更に加えて、既存のデータをすべてソースから宛先にストリーミングします。

このチェックボックスをオンにしなかった場合、Datastream はデータへの変更のみをストリーミングします。Datastream ですべてのソースのスナップショットをソースから宛先にストリーミングするには、そのデータを含むオブジェクトのバックフィルを開始する必要があります。オブジェクトは、データベース スキーマ、テーブル、列の形式です。

オブジェクトのバックフィルを開始するもう一つの理由は、データがソースと宛先の間で同期していない場合です。たとえば、ユーザーが誤って宛先のデータを削除してしまうと、そのデータが失われています。この場合、オブジェクトのバックフィルを開始することが「リセットの仕組み」として機能します。これは、すべてのデータが一度に宛先へストリーミングされるためです。その結果、ソースと宛先の間でデータが同期します。

オブジェクトのバックフィルを開始したら、そのバックフィルを停止できます。上記の例では、ユーザーがデータベース スキーマを変更すると、スキーマまたはデータが破損します。このスキーマやデータが宛先にストリーミングされないようにするには、オブジェクトのバックフィルを停止します。

また、ロード バランシングのためにオブジェクトのバックフィルを停止することもできます。データストリームは、複数のバックフィルを並行して実行できます。これにより、ソースの負荷が増加する可能性があります。負荷が著しく大きい場合は、オブジェクトのバックフィルを停止してから、オブジェクトのバックフィルを 1 つずつ開始します。

オブジェクトのステータス

オブジェクトのバックフィルの開始と停止のライフサイクルのさまざまなステータスには次のものがあります。

  • ステータスなし(UI では - と表示されます): このステータスを受け取るオブジェクトの理由は次のとおりです。
    • ストリームはまだ開始していません。
    • [バックフィル履歴データ] チェックボックスがオンになっていません(そのため、バックフィルが手動として定義されています)。
    • このオブジェクトは、自動的にバックフィルから明示的に除外されています。
    • ストリームは、将来のテーブルを含むように構成されています。この場合、新しいテーブルがソースに追加されると、そのテーブルに対して自動バックフィル タスクは作成されません(通常、新しいテーブルにはバックフィルの「履歴」データがないため)。

      詳細については、ストリームのソース データベースに関する情報の構成をご覧ください。

  • Pending: オブジェクトのバックフィルはまだ開始していません。
  • Active: オブジェクトのバックフィルが進行中です。
  • Completed: オブジェクトのバックフィルが完了しました。
  • Stopped: オブジェクトのバックフィルが停止しています。オブジェクトのバックフィルが再度開始されると、Datastream はオブジェクトに関連付けられている既存のデータをすべてソースから宛先にストリーミングします。
  • Failed: オブジェクトのバックフィルが失敗したため、バックフィルを再度開始する必要があります。

バックフィルを開始

  1. Google Cloud Console の [ストリーム] ページに移動します。

    [ストリーム] ページに移動

  2. バックフィルを開始するオブジェクトを含むストリームをクリックします。

  3. [オブジェクト] タブをクリックします。

  4. バックフィルを開始するオブジェクトごとにチェックボックスをオンにします。

  5. [バックフィルを開始] をクリックします。

  6. オブジェクトを 1 つだけ選択した場合は、ダイアログ ボックスで [オブジェクトのバックフィルを開始] をクリックします。複数のオブジェクトを選択した場合は、[オブジェクトのバックフィルを開始] をクリックします。

    Datastream が選択したオブジェクトのバックフィルを開始し、各オブジェクトのステータスが Pending から Active、そして Completed に変わります。オブジェクトのステータスが Completed の場合、オブジェクトのバックフィルは完了しています。

バックフィルを停止

  1. Google Cloud Console の [ストリーム] ページに移動します。

    [ストリーム] ページに移動

  2. バックフィルを停止するオブジェクトを含むストリームをクリックします。

  3. [オブジェクト] タブをクリックします。

  4. バックフィルを停止するオブジェクトのチェックボックスをオンにします。

  5. [バックフィルを停止] をクリックします。

  6. オブジェクトを 1 つだけ選択した場合は、ダイアログ ボックスで [オブジェクトのバックフィルを停止] をクリックします。複数のオブジェクトを選択した場合は、[オブジェクトのバックフィルを停止] をクリックします。

    Datastream が選択したオブジェクトのバックフィルを停止し、各オブジェクトのステータスが Stopped に変わります。

    オブジェクトがこのステータスになると、オブジェクトのバックフィルは停止しています。オブジェクトのバックフィルが再度開始されると、Datastream はオブジェクトに関連付けられている既存のデータをすべてソースから宛先にストリーミングします。