The Data Platform Challenge

Bloque C · Demo opcional

sofe-dbt
ESLint para tus data pipelines

Governance-as-code para dbt — con la factura real de Athena pegada a cada modelo

sofe-dbt
$ pip install sofe-dbt
$ sofe-dbt check ./

OSS · PyPI: sofe-dbt · docs: sofe.dev/docs/dbt

Por qué existe

El costo de un pipeline es invisible hasta que explota

El rol cambió: de "que corra" a "que corra bien y barato" — eso es Data FinOps.

Qué es

ESLint para tu nube → ESLint para tus datos

sofe-dbt lee los artifacts de dbt (manifest / run_results / catalog) + las stats reales de Athena, y evalúa políticas FinOps sobre tus modelos.

📥 Lee artifacts

DAG, materializaciones, tests, dependencias — sin tocar tu warehouse.

💵 Costo real

data_scanned_in_bytes de Athena → $/modelo. Nunca inventado.

🛡️ 10 políticas

Sobre el engine SOFE. Gate en CI/CD con exit code.

DEMO

sofe-dbt check ./ — findings + costo real

sofe-dbt · jaffle-finops
$ sofe-dbt check . --fail-on high

partition-required ...... 42/42 models
zombie-model ........... stg_legacy_orders (0 consumers)
full-refresh-in-prod ... fct_events (scans 1.2TB daily)
freshness-test-missing . src_salesforce

# 2 errores → PR bloqueado. Estimado: -$402/mo si se corrige
# exit 1 → gatea el merge en CI

Costo real, no estimado

Cada dólar sale de bytes reales de Athena

Fórmula auditable: max(bytes, 10MB) / 1e12 × $5/TB. Si no hay bytes reales → cost: unknown. Nunca se inventa.

fct_events (full refresh)
$197.9/mo
dim_customers
$5.15/mo
stg_legacy (zombie)
$3.35/mo

Governance-as-code

10 políticas FinOps para dbt

💸 Costo

full-refresh-in-prod · large-table-no-partition · small-table-should-be-view · long-run-not-incremental · ephemeral-over-referenced

🛡️ Confiabilidad / gobernanza

high-blast-radius-no-tests · zombie-model · freshness-test-missing · model-no-description · last-run-failed

Corren sobre el engine SOFE (OSS). Mismas políticas-as-code que para infra AWS, ahora para tus modelos de datos.

Dev local → prod real

DuckDB para estructura, Athena para costo

  • DuckDB (local, gratis): DAG, zombies, gobernanza — en segundos, sin AWS
  • Athena (prod): costo real por bytes escaneados
  • Mismos modelos dbt, mismo sofe-dbt check
local · duckdb
$ dbt build # duckdb local
$ sofe-dbt check . --no-cost

zombie-model ... fct_events
no-description . stg_events
# 100% local, 0 costo AWS

El cierre del challenge

Shift-left del costo: prevención, no autopsia

sofe-dbt corre en el PR. Si un modelo va a costar de más, bloquea el merge y te dice cuánto ahorrarías — antes de que llegue la factura.

1 · El dato es un producto

con dueño, dominio y costo atribuible.

2 · Governance-as-code

políticas en el repo, gate en CI/CD.

3 · Costo real y visible

bytes de Athena, auditable, nunca inventado.

OSS · pip install sofe-dbt · sofe.dev/docs/dbt — Carlos Cortez (AWS Hero)

1 / 8