
- SQLMesh — Replaces dbt in serious projects: understands column-level dependencies, plans diffs, isolated virtual environments, native CI. 40% reduction in model deployment time vs pure dbt.
- Apache Iceberg (Polaris/Unity Catalog) — The standard open table format. Allows reading/writing from Spark, Flink, Trino, DuckDB, Snowflake, BigQuery without duplicating data.
- LangGraph / CrewAI / AutoGen — Stateful agent orchestration, human-in-the-loop, tool-use (MCP). At BAOSS we use LangGraph for deterministic pipelines (quality, PII) and CrewAI for analytical exploration (insights, text-to-SQL).
- MCP (Model Context Protocol) — An emerging standard (Anthropic, 2024) for exposing tools (SQL, APIs, filesystem) to LLMs. Our Semantic Layer MCP Server lets any agent (Cursor, Claude Desktop, custom) query governed metrics without hallucinating tables.
- vLLM / Ollama / SGLang — Local LLM serving (Llama 3.1 70B, Nemotron 3 Ultra, Qwen 2.5) for PII detection, classification, enrichment. Cost of €0/token vs cloud APIs; latency < 200 ms per 1k-row batch.
- Cube Cloud / dbt Semantic Layer — A single metric layer for BI, Notebooks and Agents. Avoids “a different metric per dashboard”.
- OpenLineage + DataHub — Automatic cross-platform lineage (Airbyte → Iceberg → SQLMesh → Cube → Agent). AI-ready auditing
ETL vs ELT in 2026: How AI and the Lakehouse Settle the Dilemma
In 2019, when we published the first version of this article, the ETL vs ELT debate revolved around the power of Redshift versus Hadoop and whether it was worth moving transformation into the warehouse. Six years later, however, that mental framework is obsolete. The real problem in 2026-2027 is not the order of the letters, but how to deliver data ready for generative AI, RAG and autonomous agents without the cloud bill or technical debt sinking the project. In short, it is the dilemma the BAOSS IT consulting team solves every week.
At BAOSS IT consulting we have spent 18 months deploying AI-Native Data Platform architectures for clients in retail, banking and logistics. The constant: 78% of projects arrive with “broken ELT” —raw loads into Snowflake/Databricks with no semantic model, zero quality and runaway compute costs—. Therefore, the solution is not to go back to traditional ETL, but rather ELT augmented with AI agents (LangGraph, CrewAI) and open formats (Iceberg/Delta).
The 2026 context: why the classic debate is dead
- Native Zero-ETL: AWS Aurora → Redshift, Azure SQL → Fabric, Oracle → BigQuery replicate CDC with no code. “Extract-Load” is a commodity.
- Lakehouse = Data Lake + ACID + SQL: Iceberg, Delta Lake and Hudi erase the warehouse/lake boundary. You transform in-place with Spark, Flink or DuckDB.
- Semantic > Syntactic transformation: A
LangGraphagent withGPT-4oorClaude 4normalizes “CIF/NIF/VAT” totax_idby understanding context, not regex. - Mandatory governance: GDPR, the EU AI Act and CCPA demand column-level lineage and PII masking before load. OpenLineage + Unity Catalog / Ranger are the standard.
- Variable cost per token: Every SQL transformation in Snowflake costs credits; every LLM call costs tokens. Optimization is multi-objective: latency, €/query, €/token.
Anonymized real case: Multichannel retail — From 24 h to 12 min with AI governance
Profile: €1.2B in revenue, 50 sources (legacy ERP, POS, Shopify, Marketplaces, CRM, clickstream logs), 8 TB/day raw, data team of 6 engineers + 2 analysts.
Real problem (Q1 2025)
- Pipeline Fivetran → Snowflake raw → dbt models: 22-26 h latency (saturated nightly window).
- Snowflake compute cost: €42k/month (+35% year over year).
- PII (email, IP, card) in raw tables accessible to 30 users → AI Act sanction risk.
- Quality: 18% duplicates, 12% nulls in
customer_id, 0 dbt tests. - New CEO requirement: “I want to ask in natural language ‘top 10 churn-risk customers Q3’ and have an agent answer me right away”.
Deployed architecture (8 weeks, 2 sprints)
Layer 2026 Technology Role CDC ingestion Airbyte Cloud + custom connectors (Python, PyAirbyte) Incremental replication <1 min lag, automatic schema evolution Landing Zone S3 + Apache Iceberg (Polaris REST catalog) Open format, time-travel, partition pruning, no vendor lock-in Core transformation SQLMesh + dbt Core (versioned models, CI/CD GitHub Actions) Automated testing, column-level lineage, virtual environments Quality & PII LangGraph agents + GPT-4o / Ollama (local llama3.1:70b) Semantic PII detection, deterministic masking, data contracts Semantic Layer Cube Cloud (headless BI) + MCP Server Governed metrics, unified API for agents/BI/Notebooks AI consumption CrewAI (multi-agent) + vLLM (local serving) Text-to-SQLagent,DataQualityagent,InsightGeneratoragentObservability OpenLineage → DataHub + Grafana End-to-end lineage, freshness SLA alerts < 15 min Measured results (Q3 2025)
- End-to-end latency: 24 h → 12 min (p95) / 3 min (p50).
- Snowflake compute cost: €42k → €18k/month (-57%) by moving heavy transformations to Spark/Iceberg on EKS Spot.
- PII coverage: 100% of sensitive columns detected and masked at rest (validated by the DPO).
- Quality: 0 duplicates, <0.5% nulls in keys, 240 automated tests (dbt + Great Expectations).
- AI adoption: 40 non-technical users query via Slack/Teams with a
Text-to-SQLagent (92% accuracy on the Spider benchmark). - ROI: 3.2x in 6 months (license savings + analyst time + avoided sanction).
The new 2026-2027 BAOSS IT consulting decision framework: it is not binary
The classic ETL/ELT table no longer works. For example, we use this pragmatic decision tree in every BAOSS discovery:
Key question If YES → Recommended route Key technologies Do you need to mask PII before it leaves the secure perimeter? Lightweight ETL / Sidecar (transform in a private network) Airbyte + local Ollama (PII detection) → S3 Iceberg Volume > 5 TB/day and complex SQL transformations? ELT Lakehouse (compute push-down) Spark/Flink on Databricks / EMR / Fabric + SQLMesh Standard SaaS sources (Salesforce, HubSpot, GA4) + team < 3 data engineers? Managed Zero-ELT Fivetran / Airbyte Cloud → Snowflake / BigQuery / Fabric + dbt Cloud RAG / AI agent use cases in production? Semantic Layer + MCP is mandatory Cube / dbt Semantic Layer + MCP Server → CrewAI / AutoGen Strict regulation (healthcare, banking) + column-level auditing? Data Contracts + OpenLineage Pydantic models + SQLMesh + DataHub / Amundsen Do you need instant time-travel / rollback? Iceberg / Delta Lake (not native warehouse tables) Trino / StarRocks / DuckDB on object storage 2026-2027 tools that change the rules
- SQLMesh — Replaces dbt in serious projects: understands column-level dependencies, plans diffs, isolated virtual environments, native CI. 40% reduction in model deployment time vs pure dbt.
- Apache Iceberg (Polaris/Unity Catalog) — The standard open table format. Allows reading/writing from Spark, Flink, Trino, DuckDB, Snowflake, BigQuery without duplicating data.
- LangGraph / CrewAI / AutoGen — Stateful agent orchestration, human-in-the-loop, tool-use (MCP). At BAOSS we use LangGraph for deterministic pipelines (quality, PII) and CrewAI for analytical exploration (insights, text-to-SQL).
- MCP (Model Context Protocol) — An emerging standard (Anthropic, 2024) for exposing tools (SQL, APIs, filesystem) to LLMs. Our Semantic Layer MCP Server lets any agent (Cursor, Claude Desktop, custom) query governed metrics without hallucinating tables.
- vLLM / Ollama / SGLang — Local LLM serving (Llama 3.1 70B, Nemotron 3 Ultra, Qwen 2.5) for PII detection, classification, enrichment. Cost of €0/token vs cloud APIs; latency < 200 ms per 1k-row batch.
- Cube Cloud / dbt Semantic Layer — A single metric layer for BI, Notebooks and Agents. Avoids “a different metric per dashboard”.
- OpenLineage + DataHub — Automatic cross-platform lineage (Airbyte → Iceberg → SQLMesh → Cube → Agent). AI-ready auditing
Prefer to talk to us directly? Contact the BAOSS team and tell us about your challenge.
