2023年4月20日

【Google Cloud】BigQueryのデータリネージ(Dataplex機能)を試してみた


Content

みなさん、こんにちは。Y.Yです。

2022年12月22日に、BigQueryのテーブルプロパティページに「リネージ」タブが追加されました。
(本記事執筆時点ではプレビュー段階の機能です。)

「リネージ(Lineage)」は日本語に訳すと「系統」で、この「リネージ」タブでは Dataplex の機能でデータの系統(データの取得元や送信先など)を把握することができます。

今回はこの機能を実際に試してみて、どのように表示されるのかを確認してみます。
「どんな機能なんだろう?」と気になっていた方は是非ご覧ください!

事前設定

リネージ機能を使うためには、「Data Lineage API」と「Data Catalog API」を有効にする必要があります。

まだ有効にしていない場合は「リネージ」タブを開くと以下のメッセージが表示されますので、「必要なAPIの有効化」を押下します。

有効になると、リネージが表示できるようになります。

それでは、実際にデータの流れを作ってリネージを確認してみます!

リネージ機能の検証

【1】ロード処理 / ユニオン処理

まず、以下の処理を実施してみました。

  1. サンプルテーブルを2つ作成(order_shopA, order_shopB)
  2. Cloud Storageに格納したファイルからテーブルにデータをロードする
  3. 2つのテーブルをユニオンして新しいテーブル(orders)を作る

リネージを確認すると以下のように表示されます。

データの取得元となったテーブルと、さらにそれらのテーブルのソースとなったファイルの情報を確認できます。

また、各要素をクリックすると詳細情報が表示されます。
(データであれば格納先の情報、処理であればジョブIDや実行されたクエリなど)

図のの部分をクリックします。

次に、図のの部分をクリックします。

ここで、ユニオンに使ったテーブルのリネージも見てみます。

取得元の情報だけでなく、送信先(テーブルのデータがどこに送られたのか)の情報も表示されることがわかりますね。

【2】ビューの作成

次に、複数のテーブルを組み合わせてビューを作ってみました。
リネージは以下のように表示されます。

ビューでも同様に、どのテーブルからデータを取得するのかが一目でわかりますね。

また、取得元テーブルの「+」を押下すると、取得元テーブルのデータがどこから来たのかを確認することもできます。

【3】Insert処理 / Merge処理

最後に、上で作ったビューから新規テーブルにInsert文とMerge文を実行してみました。
リネージは以下のように表示されます。

複数の処理を行うと、間の矢印もその分増えました。

オレンジのマークをクリックすると、実行SQLを確認できます。

まとめ

今回は、BigQueryのデータリネージを確認してみました。
この機能で、

  • ・どこから来たデータなのか
  • ・どこにデータが流れていったのか
  • ・どんな処理でデータが流れたのか

を確認することができました。

ETL処理で不正データが紛れ込んでエラーになったときなどに、「どこからどのように来たデータなの?」を視覚的に追えるのは便利そうですね。
多数のデータが絡み合うようなシステムでは、効果をより発揮しそうです。

皆さんも是非リネージ機能を試してみてくださいね!

ご覧いただきありがとうございました。

【参考】※Google Cloud公式ドキュメント
・BigQuery テーブルコピー ジョブのデータリネージを追跡する
・データリネージについて
・Data Catalog を操作する

当社、システムサポートは、Google Cloudの導入・移行・運営支援を行っています。
お問い合わせは以下よりお願いいたします。


Google Cloud導入についてのお問い合わせはこちら

2023年4月20日 【Google Cloud】BigQueryのデータリネージ(Dataplex機能)を試してみた

Category Google Cloud

ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。

お問い合わせはこちら