Home / Learn

What is ETL, and how should you choose between ETL and ELT?

ETL extracts records, transforms them and loads the prepared data into a destination. ELT loads the records before transforming them there. The choice depends on what the destination may store and where processing should happen. In either case, the reporting workflow also needs rules for changing records, failed runs and the calculations people rely on.

A useful report often joins records from several systems. An order needs its customer identifier; a department needs a consistent name; a historical assignment needs dates. ETL and ELT arrange the preparation that makes those relationships usable.

After the first load, try a corrected order, a late input and a changed source field. Each needs a defined response. If one breaks the sequence, an operator must be able to restore the report and explain what happened.

Where the preparation happens

ETL prepares the data before it reaches the target. This suits a target that requires a particular structure or must not receive certain source fields. The processing design follows those requirements.

ELT uses the destination's engine to prepare analytical tables from loaded records. Retaining that detail, where authorized, can support a new question or calculation later. Permissions need to cover both the raw records and the business views produced from them.

Both patterns can clean values, join records and calculate measures. The difference is where that preparation happens, as the AWS explanation of ETL and ELT describes. The business calculation itself can be the same.

One source might require fields to be removed before loading. Another might allow its detail to be retained for later analysis. An environment can use both patterns to meet those different restrictions and processing needs.

Someone also needs to define what a calculation does with a missing department, canceled order or corrected date. The answer affects the report wherever the join runs. Include that business definition in the implementation.

Updates, deletes and historical records

A later load needs to recognize changes to records already copied. Otherwise, a corrected order may keep its old value and a deleted record may remain in the destination. Test the source's supported loading behavior against the report's intended meaning.

An incremental load can use a change timestamp to find relevant records. Change data capture, where supported by the source, follows inserts, updates and deletes through its available mechanism. Verify the behavior of the actual connector used by the workflow.

A current operations list may need only the latest order status. A historical trend needs the status at each earlier cutoff. Store the history needed for that trend before a load overwrites yesterday's value.

Stop a load partway through and retry it. Stable identifiers and a known recovery position should let the operator reconcile what arrived in each attempt. Check for duplicates and missed changes in the resulting report.

Also test a correction entered today for an earlier period. The reporting rule determines whether it revises that period, appears as an adjustment or goes to a reviewer. The workflow needs to apply the chosen treatment consistently.

A historical backfill needs a defined relationship to the recurring load. Establish which periods it replaces and how overlapping records are identified. Compare the refreshed periods with their earlier versions before releasing them. A recipient who downloaded an older report should be able to find the reason for a changed total and the date that revision took effect.

Operating a complete reporting workflow

A managed workflow should end in a report people can use, with an operator responsible for failures. Define whether the agreement covers connectors, ingestion, transformations, business calculations and delivery. A team seeking less maintenance needs to know which of those jobs the provider will handle.

An orders report that also uses customer data must wait for both feeds. Check each source's cutoff before starting the calculation. A successful orders sync alone cannot establish that the combined report is ready.

Databasin implements the connections and preparation around that reporting path. Pipelines ingest source records; automations can coordinate them with SQL, dbt or notebook tasks. The engagement includes defining the measures, delivering the report and arranging ongoing support.

When the workflow is incomplete, show the latest successful update and send the failure to its operator. A manager can then decide whether to use the available report. They should not need to diagnose the pipeline to understand its status.

Check the result as well as the run status. A source change may alter a total without breaking the job. Reconciliation, together with questions from recipients, helps expose errors that technical monitoring alone would miss.

Replacing established integration jobs

When replacing Informatica PowerCenter, IBM DataStage or Oracle Data Integrator, start with the behavior that reports depend on. Examine the existing mappings, schedules and dependencies. The replacement needs to preserve their useful effects on the finished output.

The calculation may continue outside the integration tool. A stored procedure, spreadsheet adjustment or report can finish work that the job starts. Trace an output through those steps to establish what must be reproduced.

Rebuild one representative workflow first, including a known exception. Compare its output with the existing job and explain every material difference. A recovery test then shows whether the replacement can be operated before the same approach is applied to other jobs.

Handover needs to cover failures and disputed results as well as routine runs. Establish who investigates each and who approves a business-rule change. Include communication with report recipients, since they need to know when a problem affects their work.

Preserve the earlier logic and reconciliations for the periods people may revisit. Historical reports often outlive the software that created them. Their definitions remain necessary when someone asks why a later version shows a different total.

Example: repeating a daily orders report

This illustrative daily report counts open orders after its orders and customer feeds reach the 06:00 cutoff. The cases show how the count and report status should respond to changes.

TestSource conditionExpected behavior
Initial run100 open orders at the agreed 06:00 cutoff.Publish 100 orders after both feeds pass validation.
Status updateOne of those orders changes to “Closed.”The next current-state count becomes 99.
New orderA new open order arrives before the next cutoff.The next count includes that order once.
Missing feedCustomer data has not reached the required cutoff.Mark the combined report incomplete.
RetryThe same source records are read again after an interruption.Preserve one current record per order identifier.

Either ETL or ELT can produce this behavior. Loading, calculation and recovery rules determine whether the report preserves the expected result when an input changes.

Before changing the workflow

  1. Identify the report's purposeIdentify who uses the report, their decision and its required freshness. Follow the calculation through any adjustments made outside the integration tool.
  2. Examine source changesUse the actual connector to test updates, deletes and late records. Include a historical question to establish which earlier values must be retained.
  3. Choose the transformation pointChoose where to process each source from its data restrictions and the destination's capabilities. Relate the choice to the records and calculations involved.
  4. Test recovery and ownershipInterrupt a run and reconcile the retry. Establish who restores the workflow and helps its recipients when the replacement is in use.

Sources

AWS, The difference between ETL and ELT, Accessed 2026 · aws.amazon.com/compare/the-difference-between-etl-and-elt

Databasin, Pipelines vs. Automations, 2026 · databasin.ai/docs/automations/pipelines-vs-automations

Discuss your data workflows

We can talk through the reporting work your existing jobs support and where maintenance becomes difficult. A demo can explore how Databasin would handle the connections, transformations and ongoing operation in the environment you already use.