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.