extract, transform, load (ETL)

Extract, transform, load (ETL) is a process for writing data values to a target database with a single programming tool.

First, the extract function reads data from a specified source database and extracts a desired subset of data. Next, the transform function works with the acquired data - using rules or lookup tables, or creating combinations with other data - to convert it to the desired state. Finally, the load function is used to write the resulting data (either all of the subset or just the changes) to a target database, which may or may not previously exist.

ETL can be used to acquire a temporary subset of data for reports or other purposes, or a more permanent data set may be acquired for other purposes such as:

  • populating a data mart or data warehouse;
  • converting data from one database type to another;
  • migrating data from one database or platform to another.

ETL can be contrasted with ELT (Extract, Load, Transform), a process that transfers raw data from a source server to a data warehouse on a target server and then prepares the information for downstream uses. 

This was last updated in November 2005

Continue Reading About extract, transform, load (ETL)

Dig Deeper on Data warehouse software