ETL and ELT
ETL and ELT are data-integration patterns that extract data from sources and load it into a destination. ETL transforms data before loading; ELT loads source-shaped data first and transforms it with the destination's processing engine.
itData engineering and analytics | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic: ETL and ELT
ETL and ELT are two ways of moving data from systems that run the business into a place where it can be analyzed. The letters are less a creed than a map of where the transformation happens. ETL changes data before it reaches the destination. ELT lands source-shaped data first, then transforms it using the destination's compute. The alphabet has caused a great many diagrams to behave as though this were a philosophical dispute. It is a placement choice.
The part worth remembering is the data contract. Before data moves, someone needs to say what identifies a record, what a timestamp means, how updates and deletes arrive, and what freshness is expected. Otherwise a pipeline can copy every available row with impressive punctuality and still construct analytics from a misunderstood source. Machines are highly dependable at repeating an unclear instruction.
Then comes the surprise: an orchestrator can schedule tasks, wait for dependencies, retry failures, and report a cheerful green status without proving the data is correct. Control flow says the machinery ran. Data flow says whether the intended records arrived, passed validation, and became a committed result. Keep those questions separate, because they enjoy being confused with each other.
Incremental work introduces the watermark, a record of how far committed processing reached. It belongs after the destination commit, not after a source read. Timestamps can tie, arrive late, or come from clocks with opinions. A bounded overlap plus deduplication is often more honest than pretending the boundary is perfect. The same caution applies to retries: a repeated run is a replay until the publication method makes it safe.
ETL fits when transformation must happen before landing, such as when restricted fields need removal or the destination cannot do the work. ELT fits when raw replay and destination-side SQL are useful. Both can coexist in one path. A pipeline may protect sensitive values early, then model the remaining records later. Raw data is not an amnesty from access, retention, or quality controls.
Read the Intro for the full route from extraction to recovery. Use Slides when you need the map of data flow and control flow in one view. Keep the Cheatsheet nearby for watermark, idempotency, quality-gate, and backfill decisions. The Practice Reference turns those ideas into a small replay-safe load. The quiz is where the pleasant letters stop being decorative and start asking awkward but useful questions.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://learn.microsoft.com/en-us/azure/architecture/data-guide/relational-data/etl
Supports
- ETL and ELT definitions and transformation placement
- Extraction, transformation, loading, staging, data flow, and control flow
- Batch, streaming, partitioning, idempotent retry, and selection considerations
- https://docs.aws.amazon.com/prescriptive-guidance/latest/serverless-etl-aws-glue/introduction.html
Supports
- Managed batch and streaming ETL architecture
- Sources, transformation jobs, targets, and operational components
- https://airflow.apache.org/docs/apache-airflow/stable/core-concepts/dags.html
Supports
- DAGs, tasks, dependencies, schedules, retries, timeouts, and run state
- Data intervals, parallel runs, and historical backfills
- https://debezium.io/documentation/reference/architecture.html
Supports
- Change-data-capture architecture and database change events
- Connector-based movement from source logs to downstream consumers
- https://debezium.io/documentation/reference/stable/features.html
Supports
- Initial snapshots, continuous log reading, schema history, and transformations
- Incremental capture of inserts, updates, and deletes
- https://www.fivetran.com/
Supports
- Managed data movement from sources into warehouses and lakes
- Destination-side SQL transformations and connector-based ingestion
- https://aws.amazon.com/glue/
Supports
- AWS Glue product role as a managed data integration service
- https://www.informatica.com/
Supports
- Informatica data integration, quality, governance, and metadata roles
- https://www.matillion.com/
Supports
- Matillion ETL product availability and documentation
- https://www.qlik.com/us/qlik-talend
Supports
- Qlik Talend integration and data-quality product role
- https://www.getdbt.com/product/dbt-cloud
Supports
- dbt Cloud transformation, testing, and lineage product role
- https://www.snowflake.com/
Supports
- Snowflake analytical destination and target-side processing role
