Skip to content
| Marketplace
Sign in
Visual Studio Code>Data Science>Data Lineage VizNew to Visual Studio Code? Get it now.
Data Lineage Viz

Data Lineage Viz

Christian Wagner

|
368 installs
| (1) | Free
Visualize object dependencies and data lineage from .dacpac files or by importing from SQL Server, Azure SQL, Fabric DW, and Synapse databases
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Data Lineage Viz

License VS Code Status

Visualise SQL dependencies right inside VS Code. Ask @lineage in Copilot Chat to explore your lineage graph in natural language — or browse interactively with search, trace, and schema overview.

Import from .dacpac files or connect directly to SQL Server, Azure SQL, Fabric Data Warehouse, or Synapse Dedicated SQL Pool.

Data Lineage Viz — search, trace, and preview DDL

Get started

  1. Run Data Lineage: Open Wizard (Ctrl+Shift+P).
  2. Pick a .dacpac file — or Connect to Database via the MSSQL extension.
  3. Select schemas and click Visualize.

No data? Click Try with demo data to explore the AdventureWorks sample.

AI lineage with @lineage

Use @lineage in GitHub Copilot Chat to explore dependencies in natural language. The assistant answers from your loaded data model — never from general knowledge.

@lineage trace from Sales.SalesOrderDetail upstream to the source tables
@lineage how is sales calculated — show me the lineage in the app
@lineage which objects are hubs with the most connections?

The assistant can trace dependencies, build bookmarked graph views, and analyse column mappings and SQL logic from the available metadata.

AI lineage analysis — annotated graph with column mappings and join paths

@lineage has two modes of operation:

  • Discovery (chat) — the default. Most lineage questions are answered directly in chat, including multi-object dependency questions like "trace upstream from X two levels" or "what feeds Y". Each visited node gets its own heading with business meaning, technical execution, formulas in math fences, column-rename tables, and ⚠️ data-quality flags inline.
  • Structured walkthrough (graph render + column tracing) — when you ask for a graph rendered in the side panel, request a column trace, or open a scope too large for chat, the assistant first shows you the planned scope (nodes, schemas, depth) and asks for confirmation. Once approved, it walks the graph hop-by-hop and renders the result with origin / transformer / terminal nodes coloured.

Requires GitHub Copilot. Tools activate automatically when a graph is loaded.

Features

  • @lineage AI — trace lineage, analyse column mappings, explain SQL logic, and build bookmarked graph views from the loaded model.
  • Search & trace — autocomplete object lookup, upstream / downstream tracing, shortest-path between nodes.
  • Graph analysis — islands, hubs, orphans, circular dependencies, longest chains.
  • Schema overview — large graphs auto-summarise at schema level; double-click to drill in.
  • SQL preview — click any node to view DDL with syntax highlighting; full-text search across procedure / view bodies.
  • Multiple sources — SSDT and SDK-style .dacpac, live database connections, external tables, virtual external refs (OPENROWSET, cross-DB, CETAS).
  • Projects & views — save connections, schema selections, and named filter states for one-click reopen.
  • Table profiling — on-demand column statistics for live databases (null %, distinct, min / max, AVG, STDEV).
  • Export — Draw.io diagram generation.

For the full feature catalogue, settings, and customisation paths see docs/FEATURES.md.

Limitations

The extension covers intra-database DDL only. The following are out of scope:

  • External ingestion pipelines — ADF, SSIS, Spark, Fabric Dataflow, or any ETL/ELT process that writes into the database from an external source. Target tables appear as leaves; the upstream pipeline does not.
  • Cross-database / cross-server flow — surfaced only when the SQL body uses a fully qualified three- or four-part name; the remote side appears as an external-reference node, not a fully traced sub-graph.
  • Dynamic SQL — EXEC(@sql) and sp_executesql cannot be analysed statically.
  • Unqualified references — references without a schema prefix are excluded.

FAQ

Do I need a .dacpac file? No — connect directly to a database. If you prefer a .dacpac, extract one from Visual Studio, SSMS, Azure Data Studio, or the Fabric portal. See Microsoft's documentation.

Why are some dependencies missing? Dynamic SQL cannot be analysed statically. Only compile-time dependencies are detected.

Why are unqualified references excluded? Unqualified names depend on the caller's default schema, which the catalog does not record reliably. Schema-qualified names are the only way to be sure.

Documentation

  • docs/FEATURES.md — full feature catalogue, settings, customisation paths.
  • docs/ARCHITECTURE.md — Map & Router engine, bipartite analysis, memory model.
  • docs/DEVELOPER_GUIDE.md — fork starting point, repo layout, build / test, prompt-builder hierarchy.
  • docs/DMV_QUERIES.md — DBA contract for live-database ingestion (no black box).
  • docs/PROFILING_PATTERNS.md — generated SQL for table profiling.
  • docs/PARSE_RULES.md — YAML reference for the SQL parser.
  • docs/AI_PROMPTS.md — prompt architecture + YAML reference for @lineage capture / render templates.
  • docs/TROUBLESHOOTING.md — common issues.
  • CONTRIBUTING.md — coding standards, testing protocol, PR hygiene.

Contributing

Bug reports welcome. For custom features, fork and extend under the MIT license. See CONTRIBUTING.md.


MIT License · Christian Wagner · GitHub · Developed with Claude Code, Codex and Gemini

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft