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

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

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

それでは、実際にデータの流れを作ってリネージを確認してみます!
リネージ機能の検証
【1】ロード処理 / ユニオン処理
まず、以下の処理を実施してみました。
- サンプルテーブルを2つ作成(order_shopA, order_shopB)
- Cloud Storageに格納したファイルからテーブルにデータをロードする
- 2つのテーブルをユニオンして新しいテーブル(orders)を作る
リネージを確認すると以下のように表示されます。

データの取得元となったテーブルと、さらにそれらのテーブルのソースとなったファイルの情報を確認できます。
また、各要素をクリックすると詳細情報が表示されます。
(データであれば格納先の情報、処理であればジョブIDや実行されたクエリなど)
図の①の部分をクリックします。

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

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

取得元の情報だけでなく、送信先(テーブルのデータがどこに送られたのか)の情報も表示されることがわかりますね。
【2】ビューの作成
次に、複数のテーブルを組み合わせてビューを作ってみました。
リネージは以下のように表示されます。

ビューでも同様に、どのテーブルからデータを取得するのかが一目でわかりますね。
また、取得元テーブルの「+」を押下すると、取得元テーブルのデータがどこから来たのかを確認することもできます。

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

複数の処理を行うと、間の矢印もその分増えました。
オレンジのマークをクリックすると、実行SQLを確認できます。

まとめ
この機能で、
- ・どこから来たデータなのか
- ・どこにデータが流れていったのか
- ・どんな処理でデータが流れたのか
を確認することができました。
ETL処理で不正データが紛れ込んでエラーになったときなどに、「どこからどのように来たデータなの?」を視覚的に追えるのは便利そうですね。
多数のデータが絡み合うようなシステムでは、効果をより発揮しそうです。
皆さんも是非リネージ機能を試してみてくださいね!
ご覧いただきありがとうございました。
【参考】※Google Cloud公式ドキュメント
・BigQuery テーブルコピー ジョブのデータリネージを追跡する
・データリネージについて
・Data Catalog を操作する
当社、システムサポートは、Google Cloudの導入・移行・運営支援を行っています。
お問い合わせは以下よりお願いいたします。
2023年4月20日 【Google Cloud】BigQueryのデータリネージ(Dataplex機能)を試してみた
ご意見・ご相談・料金のお見積もりなど、
お気軽にお問い合わせください。