データリネージについて

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

データリネージが必要な理由

大規模なデータセットを扱うには、多くの場合、テキスト ファイル、テーブル、レポート、ダッシュボード、モデルという特定のプロジェクトのニーズに合わせてデータをエンティティに変換します。

たとえば、すべての購入を 1 つの SQL テーブルに記録するオンライン ショップがあるとします。アナリストがデータを扱いやすくするために、この単一のテーブルから情報を抽出し、地域、ブランド、販売価格ごとに小さなテーブルを生成するジョブを開始します。アナリストも同様に、変換をさらに実行し、これらの小さなテーブルを他のデータソースと統合して、さらに多くのテーブルを生成します。

これは、ステークホルダーにとって大きな課題になる可能性があります。

  • データ コンシューマでは、セルフサービス ツールを使用してデータが信頼できるソースから来ているかどうかを判断できません。
  • データ エンジニアは、すべてのデータ変換を追跡する信頼できる方法がないため、問題の根本原因を特定できません。
  • データ エンジニアとアナリストは、テーブルを変更または削除する前に、考えられる影響を完全に評価することはできません。
  • データ ガバナンスは、組織全体でセンシティブ データがどのように使用されるかを把握することや、規制要件を遵守していることを保証できません。

データリネージは、以下を可能にする実践的な方法を提供するソリューションです。

  • リネージグラフを使用して、データがどのように収集され、変換されるかを理解します。
  • エントリとデータ処理に関するエラーを根本原因まで追跡します。
  • インパクト分析を通じてチェンジ マネジメントを改善: ダウンタイムや予期せぬエラーを回避し、依存するエントリを理解して、関係者と協力します。

データリネージ情報モデル

基本的な形式で、リネージは、ソースからターゲットに変換されたデータのレコードです。Data Lineage API は、その情報を収集し、プロセス、実行、イベントのコンセプトを使用して階層型データモデルに整理します。

プロセス

プロセスは、特定のシステムでサポートされているデータ変換オペレーションの定義です。BigQuery リネージのコンテキストでは、processサポート対象のジョブタイプの 1 つです。

実行

プロセスが実行されます。プロセスには複数の実行を指定できます。実行には、開始時間と終了時間、状態、その他の属性などの詳細情報が含まれます。詳細については、run リソース リファレンスをご覧ください。

イベント

イベントは、データ変換オペレーションが実行され、ソースとターゲットのエンティティ間でデータが移動した時点を表します。

イベントには、特定のイベントの送信元とターゲットを定義するリンクのリストが含まれます。イベントは、リネージの可視化グラフの計算に使用されますが、Google Cloud コンソールに直接公開されることはありません。Data Lineage API を使用して、これらのテーブルの作成、読み取り、削除を行うことができます(更新はできません)。

BigQuery テーブル間でデータがコピーされる次の例について考えてみましょう。

テーブルデータのソースを示すグラフの例。

テーブル間のデータの移動方法は、リネージ プロセス(グラフで BigQuery のリネージ プロセス アイコン。 アイコンによって示される)で説明されています。これは SQL CREATE TABLE AS SELECT クエリまたは INSERT ステートメントです。

その SQL ステートメントを実行するたびに、個々の実行が構成されます。実行にはイベントが含まれます。これらは、どのテーブルがソースとして使用され、どのテーブルがターゲットとして使用されたかを記録します。この例では、テーブル customer_yearcustomers はどちらも、ターゲット top_customer テーブルのソースです。

リネージ グラフ

リネージグラフは、特定の Data Catalog エントリ用の Data Lineage API によって収集される情報を表します。リネージグラフには、単一のルートエントリの上流または下流のリネージが表示されます。[ルート] は、リネージを表示しているエントリを指します。

サンプルグラフには、最下部に固定されるSQL コードを表示する詳細パネルを使用して、変換されてから新しいテーブルに統合される 2 つのテーブルからのデータが表示されます。
Dataplex Google Cloud コンソールのリネージグラフの例。

Dataplex は Data Lineage API と連携して、完全修飾名がデータリネージで認識されるエンティティと一致するエントリを特定します。一致した Dataplex エントリについては、詳細ページの [リネージ] タブにアクセスしてグラフを表示できます。

リネージグラフには、次の 2 種類の要素が表示されます。

  • リネージ情報の作成に関連するエンティティを表す横長の長方形のボタン。リネージ イベントのソースまたはターゲットになります。

  • ソース エンティティまたはターゲット エンティティの作成または更新を行うプロセスを表す小さな正方形ボタン。プロセスボタンには、Data Lineage API に報告したソースシステムに固有のアイコンが使用されます。たとえば、BigQuery ジョブは BigQuery のリネージ プロセス アイコン。 アイコンを使用します。