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. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Google Cloud プロジェクトで課金が有効になっていることを確認します

  4. Data Catalog, BigQuery, and data lineage API を有効にします。

    API を有効にする

  5. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  6. Google Cloud プロジェクトで課金が有効になっていることを確認します

  7. Data Catalog, BigQuery, and data lineage API を有効にします。

    API を有効にする

必要なロール

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

ロールの付与の詳細については、アクセス権の管理をご覧ください。

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

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

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

    BigQuery に移動

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

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

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

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

このステップでは、データセット new_york_taxi_trips をプロジェクトに追加します。詳細ペインには次のデータセット IDデータのロケーションおよび最終更新日時のようなデータセット情報を含む情報が表示されます。

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

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

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

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

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

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

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

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

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

  2. クエリエディタで、次のクエリを入力して最初のテーブルをコピーします。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 という最初のテーブルを作成します。

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

  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 でリネージグラフを表示する

  1. Dataplex の検索ページを開く

    Dataplex の検索を開く

  2. [検索プラットフォームの選択] で、検索モードとして [Data 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. BigQuery ページに移動します。

    BigQuery に移動

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

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

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

次のステップ