SNOWFLAKE NEW FEATURE / PRACTICAL BRIEF

Snowflake の lineage を外部システムまで拡張

External lineage (General availability)

2026-09-03機能アップデートGeneral availability

データ基盤チームは OpenLineage イベントを Snowflake に送信し、外部を含むデータフローを統合的に追跡できます。

External lineage は、Snowflake の native lineage に Snowflake 外部のデータソースやデータ送信先を含める機能です。dbt や Apache Airflow などが OpenLineage イベントを Snowflake REST endpoint に送信し、既存の lineage と統合します。外部システム間のオブジェクト lineage や、columnLineage facet による列単位の lineage も扱えます。機能は General availability として提供されています。

CHANGE TYPE
機能アップデート
PRIMARY AUDIENCE
データ基盤・データエンジニアリングチーム
AVAILABILITY
General availability
01

なぜ重要か

従来は Snowflake 外部のシステムを含むデータ移動を、Snowflake の lineage graph や SQL から一続きに確認できない場合がありました。External lineage により、外部ノードを含む連鎖を Snowsight で可視化し、GET_LINEAGE で外部オブジェクトを起点に lineage を取得できるようになります。

02

対象となるチーム

  • データ基盤・データエンジニアリングチーム
  • dbt や Apache Airflow の運用担当者
  • データガバナンス・リネージュ管理担当者
  • 監査・影響分析を担当するチーム
03

提供条件

  • General availability
  • Enterprise Edition 以上が必要
  • リージョンの提供条件はリリースノートに記載なし
  • OpenLineage イベントを送信するデータツールまたは自前の送信処理が必要
  • 送信にはアカウントの INGEST LINEAGE 権限、削除には DELETE LINEAGE 権限が必要
04

ユースケース

  • Apache Airflow などのパイプラインが外部システムから Snowflake へデータを取り込む流れを、外部ノードを含む lineage chain として確認する。
  • dbt が生成・変換するデータの lineage を OpenLineage 経由で Snowflake の native lineage に統合する。
  • 複数の外部システム間でデータを移動するパイプラインを記録し、Snowflake オブジェクトが中間にない区間も追跡する。
  • columnLineage facet を利用して、外部システム間の個別列の対応関係を確認する。
  • 外部オブジェクトを起点に GET_LINEAGE を実行し、影響分析やデータフロー調査に利用する。
05

仕組みと使い方

データツールの OpenLineage integration、または自前の処理から、COMPLETE OpenLineage events を次の REST endpoint に送信して lineage を登録します。

/api/v2/lineage/external-lineage

オブジェクト間の lineage に加え、columnLineage facet を含めることで列単位の lineage を登録できます。登録した外部オブジェクトは Snowsight の lineage graph で external nodes として表示され、SQL では GET_LINEAGE の出力に含まれます。外部オブジェクトをクエリの起点にして lineage を取得することもできます。削除する場合は同じ endpoint に DELETE request を送信します。

06

導入ステップ

  1. Enterprise Edition 以上で利用できるアカウントかどうかを確認する。
  2. OpenLineage を送信する dbt、Apache Airflow、または自前のデータツールを選定する。
  3. 送信主体にアカウントの INGEST LINEAGE 権限があることを確認する。
  4. COMPLETE OpenLineage events を /api/v2/lineage/external-lineage に送信する処理を構成する。
  5. Snowsight の lineage graph と GET_LINEAGE の結果で、外部ノードおよび必要な列 lineage を検証する。
  6. 不要な lineage を削除する運用が必要な場合は、DELETE LINEAGE 権限と DELETE request の手順を確認する。
07

運用上の注意

  • lineage の送信には INGEST LINEAGE、削除には DELETE LINEAGE が必要です。権限は送信・削除の運用主体ごとに分けて確認してください。
  • 登録内容の正確性は送信する OpenLineage events に依存するため、対象オブジェクト、外部システム間の関係、列対応を検証してください。
  • 削除は同じ endpoint への DELETE request を使用するため、対象範囲と実行権限を事前に確認してください。
  • リージョンごとの提供条件や差異はリリースノートに記載なしです。実環境で利用可能か公式ドキュメントを確認してください。
08

制約事項

  • 利用には Enterprise Edition 以上が必要です。
  • 外部 lineage の登録には OpenLineage standard に準拠した COMPLETE events の送信が必要です。
  • 列単位の lineage は columnLineage facet を使用する必要があります。
  • 外部オブジェクトの具体的な対応範囲、保持期間、更新遅延、イベント再送時の挙動はリリースノートに記載なしです。
  • 対応するリージョン、データツールごとの integration の詳細、REST request の payload 仕様はリリースノートに記載なしです。
09

次に確認すること

  • 公式の External lineage、Configure your data tool、Payload requirements を確認し、COMPLETE event の必須項目を検証する。
  • 対象アカウントのエディションと、送信・削除主体の INGEST LINEAGE/DELETE LINEAGE 権限を確認する。
  • 非本番環境で少数のオブジェクトと columnLineage を送信し、Snowsight と GET_LINEAGE の表示結果を検証する。
  • 利用予定リージョンと dbt・Apache Airflow などの integration が対象環境で利用可能か公式情報で確認する。

公式情報

仕様・提供条件は更新される可能性があります。導入前に必ず公式リリースノートを確認してください。

https://docs.snowflake.com/release-notes/2026/other/2026-09-03-external-lineage-ga