Chapter 2

Types of Data Lineage

Data lineage comes in different forms, each serving specific use cases and providing different levels of detail. Understanding these types helps you choose the right granularity for your needs.

1. Column-Level Lineage

Column-level lineage tracks data at the most granular level: individual columns within tables. It shows exactly which source columns contribute to which target columns and how they're transformed.

What It Tracks

Example: Column-Level Lineage
-- SQL Transformation
SELECT
    customer_id,
    UPPER(first_name || ' ' || last_name) AS full_name,
    ROUND(total_purchases / order_count, 2) AS avg_order_value
FROM raw.customers c
JOIN raw.orders o ON c.id = o.customer_id;

Column Lineage:

Use Cases

Challenges

2. Table-Level Lineage

Table-level lineage tracks relationships between entire tables, views, or datasets. It provides a higher-level view of data flows without diving into column details.

What It Tracks

Example: Table-Level Lineage

ETL Pipeline Flow:

raw.api_events
    → staging.cleaned_events
        → warehouse.fact_user_activity
            → analytics.daily_active_users
                → dashboard.user_engagement_report

Use Cases

Advantages

3. Process-Level Lineage

Process-level (or job-level) lineage focuses on the transformations themselves rather than the data. It tracks which jobs, scripts, or processes create and modify data.

What It Tracks

Example: Process-Level Lineage

Data Pipeline Flow:

Job: extract_api_data
  Reads: external.api_endpoint
  Writes: raw.api_events
  Schedule: Every 15 minutes
  Last Run: 2025-12-26 10:00:00
  Status: Success
  Duration: 45 seconds

Job: clean_events
  Reads: raw.api_events
  Writes: staging.cleaned_events
  Schedule: Triggered after extract_api_data
  Last Run: 2025-12-26 10:01:00
  Status: Success
  Duration: 2 minutes

Use Cases

4. Business Lineage

Business lineage connects technical data lineage to business concepts, metrics, and KPIs. It translates technical assets into business-friendly language.

What It Tracks

Example: Business Lineage

Business Metric: "Monthly Recurring Revenue (MRR)"

Business Definition:
  Sum of all active subscription values per month

Technical Implementation:
  SELECT
      DATE_TRUNC('month', subscription_date) AS month,
      SUM(monthly_value) AS mrr
  FROM warehouse.active_subscriptions
  GROUP BY month

Data Sources:
  • CRM System → raw.subscriptions
  • Payment Gateway → raw.payments
  • Product Catalog → raw.plans

Business Owner: VP of Finance
Data Steward: Finance Analytics Team
Update Frequency: Daily
SLA: Available by 9am EST

Use Cases

Comparison of Lineage Types

Type Granularity Complexity Best For
Column-Level Very Fine High Data privacy, detailed impact analysis
Table-Level Medium Medium General impact analysis, architecture
Process-Level Coarse Low Pipeline orchestration, job monitoring
Business-Level Variable Medium Business user self-service, governance

Choosing the Right Type

Most organizations need a combination of lineage types. The key is choosing the right level for each use case:

Recommended Approach:

Hybrid Approaches

Modern lineage tools often combine multiple types:

This hybrid approach balances comprehensiveness with maintainability and performance.