データ変更がワークフローに与える影響を分析する

Knowledge Catalog(旧称 Dataplex Universal Catalog)のデータリネージを使用すると、データ変換がダウンストリーム リソースと、それらに依存するワークフローにどのように影響するかを追跡できます。テーブルを変更する前に列レベルの依存関係をトレースすると、データの完全性を検証し、既存のパイプラインの調整が必要かどうかを判断できます。

このチュートリアルでは、医療提供者が提供するさまざまなサービスの使用状況に関するレコードを保存するデータベースを管理します。データを使いやすくするために、テーブルをブラウジングして、潜在的な変更を特定します。変更を実装する前に、BigQuery のリネージ エクスプローラを使用して、列の確認、データ型の変更の検査、改善が既存のワークフローに影響するか、追加の調整が必要かを特定します。

使ってみる

ユースケースを完了するには、まず環境を設定してデータ変換を実行します。[前提条件と設定] ページを使用して、リモート リポジトリを Dataform に接続します。このリポジトリには、データセットの設定とデータの変換に必要なコードが含まれています。

環境の設定が完了したら、BigQuery とリネージ エクスプローラを使用して、データ変換と、それがワークフローに与える影響を追跡します。

リネージ エクスプローラでデータ変換を分析する

データセットを準備したら、BigQuery の [リネージ] タブを使用して、データ変換の影響を分析します。

リネージグラフで列データの完全性を検証する

この例では、医師またはサプライヤーがメディケアのサービスを提供することに同意しているかどうかを示す medicare_participation_indicator 列を調べます。リネージグラフは、派生テーブル間のデータ変換によって列のデータ型がどのように変化するかを示しています。

  1. Google Cloud コンソールで、[BigQuery] ページに移動します。
  2. 検索フィールドを使用して physicians_and_other_supplier_2012_original テーブルを見つけます。
  3. [リネージ] タブをクリックします。
  4. [リネージ エクスプローラ] ペインで、次の操作を行います。
    1. [列レベルのリネージ] セクションで、リストから medicare_participation_indicator 列名を選択します。
    2. [方向] セクションで、[ダウンストリーム] の方向を選択します。
    3. [適用] をクリックします。
  5. vertex_ai_model_final_features に到達するまで、リネージパスを開きます。
  6. supplier_stg3 テーブルと supplier_transform1 テーブルの間のパスの変更を分析します。

    medicare_participation_indicator 列のリネージ トラッキング。
    medicare_participation_indicator 列のリネージ トラッキングの可視化
    • 完全なコピーのパスマーキングは、列が変更されずに渡されていることを示します。
    • その他のパスマーキングは、変換を示します。このパスでは、データ型 String は Boolean のように扱われます。

このパスは、列のデータ型が変更されることを示しています。これらのテーブルを使用するワークフローの調整が必要になる場合があります。

冗長なダウンストリーム列を特定する

この例では、医療従事者が National Plan and Provider Enumeration System(NPPES)で保持している 米国医療提供者 ID を一覧表示する nppes_credentials 列を調べます。

  1. Google Cloud コンソールで、[BigQuery] ページに移動します。
  2. 検索フィールドを使用して physicians_and_other_supplier_2012_original テーブルを見つけます。
  3. [リネージ] タブをクリックします。
  4. [リネージ エクスプローラ] ペインで、次の操作を行います。
    1. [列レベルのリネージ] セクションで、リストから nppes_credentials 列名を選択します。
    2. [方向] セクションで、[ダウンストリーム] の方向を選択します。
    3. [適用] をクリックします。
  5. パスを開いて、vertex_ai_model_final_features につながるダウンストリーム リネージが存在するかどうかを確認します。

リネージがないということは、この列がこの特定のワークフローに関連していない可能性があり、削除できる可能性があることを意味します。

データリネージ グラフを使用したデータの可視化の詳細については、リネージグラフ ビューをご覧ください。