BigQuery テーブルのデータリネージを追跡する

データリネージを使用すると、データがシステム内をどのように移動するか、つまりデータがどこから来て、どこに渡され、どのような変換がデータに適用されるかを追跡できます。

BigQuery のコピージョブとクエリジョブのデータリネージの追跡を開始する方法について学習します。

  1. 一般公開されている new_york_taxi_trips データセットから 2 つのテーブルをコピーします。

  2. 両方のテーブルのタクシー乗車の合計数を組み合わせて新しいテーブルにします。

  3. 3 つすべての操作のリネージ可視化グラフを表示します。

始める前に

プロジェクトを設定します。

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Dataplex Universal Catalog, BigQuery, and data lineage APIs.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Dataplex Universal Catalog, BigQuery, and data lineage APIs.

    Enable the APIs

  8. 必要なロール

    リネージの可視化グラフを確認するために必要な権限を取得するには、次の IAM ロールを付与するよう管理者に依頼してください。

    ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

    必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

一般公開データセットをプロジェクトに追加する

  1. Google Cloud コンソールで、[BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、[追加] をクリックします。

  3. [追加] ペインで「Public datasets」を検索し、[一般公開データセット] の結果を選択します。

  4. [Marketplace] ペインで「NYC TLC Trips」を検索し、[NYC TLC Trips] の結果をクリックします。

  5. [データセットを表示] をクリックします。

これにより、一般公開データセットのプロジェクトが参照として追加され、[エクスプローラ] ペインで確認できるようになります。詳細ペインには [データセット情報] が表示され、[データセット ID]、[データのロケーション]、[最終更新] 日時などの情報が示されます。

プロジェクトにデータセットを作成する

  1. [エクスプローラ] ペインで、データセットを作成するプロジェクトを選択します。

  2. [アクション]、[データセットを作成] の順にクリックします。

  3. [データセットを作成] ページの [データセット ID] フィールドに「data_lineage_demo」と入力します。他のフィールドはデフォルト値のままにします。

  4. [データセットを作成] をクリックします。

  5. [エクスプローラ] ペインで、新しく追加された [data_lineage_demo] をクリックします。

詳細ペインに [データセット情報] が表示されます。

一般公開されている 2 つのテーブルをデータセットにコピーする

  1. クエリエディタを開きます。詳細ペインで、data_lineage_demo という名前のタブの横にある (新しいクエリを作成)をクリックします。このステップでは、Untitled というタブが作成されます。

  2. クエリエディタで、次のクエリを入力して 1 番目のテーブルをコピーします。PROJECT_IDプロジェクトの ID に置き換えます。

    CREATE TABLE `PROJECT_ID.data_lineage_demo.nyc_green_trips_2021`
    COPY `bigquery-public-data.new_york_taxi_trips.tlc_green_trips_2021`
    
  3. [ 実行] をクリックします。このステップでは、nyc_green_trips_2021 という 1 番目のテーブルを作成します。

  4. [クエリ結果] ペインで、[テーブルに移動] をクリックします。このステップでは、1 番目のテーブルの内容が表示されます。

  5. クエリエディタで、前のクエリを次のクエリに置き換えて、2 番目のテーブルをコピーします。PROJECT_IDプロジェクトの ID に置き換えます。

    CREATE TABLE `PROJECT_ID.data_lineage_demo.nyc_green_trips_2022`
    COPY `bigquery-public-data.new_york_taxi_trips.tlc_green_trips_2022`
    
  6. [ 実行] をクリックします。このステップでは、nyc_green_trips_2022 という 2 番目のテーブルを作成します。

  7. [クエリ結果] ペインで、[テーブルに移動] をクリックします。このステップでは、2 番目のテーブルの内容が表示されます。

データを集計して新しいテーブルにする

  1. クエリエディタで、次のクエリを入力します。PROJECT_IDプロジェクトの ID に置き換えます。

    CREATE TABLE `PROJECT_ID.data_lineage_demo.total_green_trips_22_21`
    AS SELECT vendor_id, COUNT(*) AS number_of_trips
    FROM (
         SELECT vendor_id FROM `PROJECT_ID.data_lineage_demo.nyc_green_trips_2022`
         UNION ALL
         SELECT vendor_id FROM `PROJECT_ID.data_lineage_demo.nyc_green_trips_2021`
    )
    GROUP BY vendor_id
    
  2. [ 実行] をクリックします。このステップでは、total_green_trips_22_21 という名前の結合されたテーブルを作成します。

  3. [クエリ結果] ペインで、[テーブルに移動] をクリックします。このステップでは、結合されたテーブルが表示されます。

Dataplex Universal Catalog でリネージグラフを確認する

  1. Google Cloud コンソールで、Dataplex Universal Catalog の [検索] ページに移動します。

    [検索] に移動

  2. [検索プラットフォームの選択] で、検索モードとして [Dataplex Catalog] を選択します。

  3. [検索] ボックスに「total_green_trips_22_21」と入力し、[検索] をクリックします。

  4. 結果リストで [total_green_trips_22_21] をクリックします。このステップでは、BigQuery テーブルの [詳細] タブが表示されます。

  5. [リネージ] タブをクリックします。

詳細パネルが下部にドッキングされている total_green_trips_22_21 テーブル。
図 1. ノード詳細を含むデータリネージ

リネージグラフでは、各長方形ノードはテーブルを表します。テーブルは、元のテーブル、コピーされたテーブル、結合されたテーブルのいずれかです。以下の操作を行います。

  • テーブルの元データを表示または非表示にするには、[+](開く)または [-](閉じる)をクリックします。

  • テーブル情報を表示するには、ノードをクリックします。このステップでは、ノードの [詳細] ペインが表示されます。

  • プロセス情報を表示するには、リネージ プロセスの詳細を表示 をクリックします。このステップでは、ソーステーブルをターゲット テーブルに変換したジョブを示すプロセスの [詳細] ペインが表示されます。

詳細パネルが下部にドッキングされている中間 nyc_green_trips_2021 テーブル。
図 2. プロセスの詳細を含むデータリネージ

クリーンアップ

このページで使用したリソースについて、 Google Cloud アカウントに課金されないようにするには、次の手順を実施します。

プロジェクトを削除する

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

データセットを削除する

  1. Google Cloud コンソールで、[BigQuery] ページに移動します。

    BigQuery に移動

  2. [エクスプローラ] ペインで、作成した data_lineage_demo データセットを検索します。

  3. データセットを右クリックして、[削除] を選択します。

  4. 削除のアクションを確認します。

次のステップ