Tech_Interview_Prep

ETL vs. ELT

Transform-before-load versus load-then-transform, and why modern warehouses shifted the order.

What it is

Both patterns move data from source systems into a destination for analysis — the difference is where transformation happens relative to loading.

Key points

  • ETL (Extract, Transform, Load): data is transformed in a separate processing step before landing in the destination — necessary when the destination has limited compute or strict schema requirements.
  • ELT (Extract, Load, Transform): raw data lands first, transformation happens inside the destination using its own compute — the dominant pattern now that cloud warehouses (Snowflake, BigQuery) have cheap, scalable compute.
  • ELT keeps a copy of raw, untransformed data available for reprocessing if transformation logic changes — a real advantage over ETL's "raw data is gone once transformed" model.
  • Tool-wise, ELT commonly pairs an ingestion tool (Fivetran, Airbyte) with an in-warehouse transformation layer (dbt).