| { | |
| "warehouse": { | |
| "platform": "Snowflake", | |
| "account": "xy12345.us-east-1", | |
| "database": "ANALYTICS_DW" | |
| }, | |
| "lineage": { | |
| "datasets": [ | |
| { | |
| "id": "raw.customers", | |
| "type": "table", | |
| "database": "ANALYTICS_DW", | |
| "schema": "RAW", | |
| "name": "CUSTOMERS", | |
| "description": "Raw customer data from CRM", | |
| "columns": [ | |
| {"name": "CUSTOMER_ID", "type": "NUMBER", "isPrimaryKey": true}, | |
| {"name": "EMAIL", "type": "VARCHAR", "pii": true}, | |
| {"name": "NAME", "type": "VARCHAR"}, | |
| {"name": "CREATED_AT", "type": "TIMESTAMP_NTZ"}, | |
| {"name": "SOURCE_SYSTEM", "type": "VARCHAR"} | |
| ], | |
| "tags": ["pii", "raw"], | |
| "owner": "data-platform-team" | |
| }, | |
| { | |
| "id": "raw.transactions", | |
| "type": "table", | |
| "database": "ANALYTICS_DW", | |
| "schema": "RAW", | |
| "name": "TRANSACTIONS", | |
| "description": "Raw transaction events from payment gateway", | |
| "columns": [ | |
| {"name": "TRANSACTION_ID", "type": "VARCHAR", "isPrimaryKey": true}, | |
| {"name": "CUSTOMER_ID", "type": "NUMBER", "isForeignKey": true, "references": "raw.customers.CUSTOMER_ID"}, | |
| {"name": "AMOUNT", "type": "NUMBER"}, | |
| {"name": "CURRENCY", "type": "VARCHAR"}, | |
| {"name": "TRANSACTION_DATE", "type": "DATE"}, | |
| {"name": "STATUS", "type": "VARCHAR"} | |
| ], | |
| "tags": ["financial", "raw"], | |
| "owner": "data-platform-team" | |
| }, | |
| { | |
| "id": "raw.products", | |
| "type": "table", | |
| "database": "ANALYTICS_DW", | |
| "schema": "RAW", | |
| "name": "PRODUCTS", | |
| "description": "Product catalog from inventory system" | |
| }, | |
| { | |
| "id": "staging.customers_cleaned", | |
| "type": "view", | |
| "database": "ANALYTICS_DW", | |
| "schema": "STAGING", | |
| "name": "CUSTOMERS_CLEANED", | |
| "description": "Deduplicated and cleaned customer records", | |
| "transformation": "DEDUP + CLEAN + VALIDATE", | |
| "owner": "analytics-engineering" | |
| }, | |
| { | |
| "id": "staging.transactions_enriched", | |
| "type": "view", | |
| "database": "ANALYTICS_DW", | |
| "schema": "STAGING", | |
| "name": "TRANSACTIONS_ENRICHED", | |
| "description": "Transactions with currency conversion and status mapping", | |
| "transformation": "ENRICH + CONVERT + MAP" | |
| }, | |
| { | |
| "id": "marts.dim_customer", | |
| "type": "table", | |
| "database": "ANALYTICS_DW", | |
| "schema": "MARTS", | |
| "name": "DIM_CUSTOMER", | |
| "description": "Customer dimension with SCD Type 2", | |
| "transformation": "SCD_TYPE_2 + AGGREGATE" | |
| }, | |
| { | |
| "id": "marts.fct_transaction", | |
| "type": "table", | |
| "database": "ANALYTICS_DW", | |
| "schema": "MARTS", | |
| "name": "FCT_TRANSACTION", | |
| "description": "Transaction fact table with dimensions" | |
| }, | |
| { | |
| "id": "reporting.customer_360", | |
| "type": "view", | |
| "database": "ANALYTICS_DW", | |
| "schema": "REPORTING", | |
| "name": "CUSTOMER_360", | |
| "description": "Complete customer view for BI tools" | |
| }, | |
| { | |
| "id": "reporting.revenue_dashboard", | |
| "type": "materialized_view", | |
| "database": "ANALYTICS_DW", | |
| "schema": "REPORTING", | |
| "name": "REVENUE_DASHBOARD", | |
| "description": "Aggregated revenue metrics for executive dashboard", | |
| "refresh_schedule": "DAILY at 06:00 UTC" | |
| }, | |
| { | |
| "id": "external.crm_export", | |
| "type": "external_table", | |
| "location": "s3://company-exports/crm/", | |
| "description": "CRM data export to S3" | |
| }, | |
| { | |
| "id": "external.bi_semantic_layer", | |
| "type": "semantic_model", | |
| "platform": "Looker", | |
| "description": "Looker semantic model for self-service analytics" | |
| } | |
| ], | |
| "relationships": [ | |
| { | |
| "source": "raw.customers", | |
| "target": "staging.customers_cleaned", | |
| "type": "transform", | |
| "job": "dbt_staging_customers", | |
| "schedule": "hourly" | |
| }, | |
| { | |
| "source": "raw.transactions", | |
| "target": "staging.transactions_enriched", | |
| "type": "transform", | |
| "job": "dbt_staging_transactions" | |
| }, | |
| { | |
| "source": "staging.customers_cleaned", | |
| "target": "marts.dim_customer", | |
| "type": "transform", | |
| "job": "dbt_marts_dim_customer" | |
| }, | |
| { | |
| "source": "staging.transactions_enriched", | |
| "target": "marts.fct_transaction", | |
| "type": "transform" | |
| }, | |
| { | |
| "source": "raw.products", | |
| "target": "marts.fct_transaction", | |
| "type": "reference" | |
| }, | |
| { | |
| "source": "marts.dim_customer", | |
| "target": "marts.fct_transaction", | |
| "type": "reference" | |
| }, | |
| { | |
| "source": "marts.dim_customer", | |
| "target": "reporting.customer_360", | |
| "type": "transform" | |
| }, | |
| { | |
| "source": "marts.fct_transaction", | |
| "target": "reporting.customer_360", | |
| "type": "transform" | |
| }, | |
| { | |
| "source": "marts.fct_transaction", | |
| "target": "reporting.revenue_dashboard", | |
| "type": "aggregate" | |
| }, | |
| { | |
| "source": "marts.dim_customer", | |
| "target": "reporting.revenue_dashboard", | |
| "type": "reference" | |
| }, | |
| { | |
| "source": "reporting.customer_360", | |
| "target": "external.crm_export", | |
| "type": "export", | |
| "job": "airflow_crm_sync" | |
| }, | |
| { | |
| "source": "reporting.revenue_dashboard", | |
| "target": "external.bi_semantic_layer", | |
| "type": "publish", | |
| "job": "looker_sync" | |
| } | |
| ], | |
| "jobs": [ | |
| { | |
| "id": "dbt_staging_customers", | |
| "type": "dbt", | |
| "schedule": "0 * * * *", | |
| "description": "Hourly customer staging refresh" | |
| }, | |
| { | |
| "id": "dbt_staging_transactions", | |
| "type": "dbt", | |
| "schedule": "0 * * * *" | |
| }, | |
| { | |
| "id": "dbt_marts_dim_customer", | |
| "type": "dbt", | |
| "schedule": "0 2 * * *" | |
| }, | |
| { | |
| "id": "airflow_crm_sync", | |
| "type": "airflow", | |
| "schedule": "0 6 * * *" | |
| }, | |
| { | |
| "id": "looker_sync", | |
| "type": "api", | |
| "schedule": "0 7 * * *" | |
| } | |
| ] | |
| }, | |
| "notes": "Sample Snowflake data warehouse lineage with multi-layer architecture (raw, staging, marts, reporting) and external system integrations." | |
| } | |