ETL vs ELT

Have you seen something like “Future is ELT!“, “ETL is dead! Long live EL(T)!” etc.? and you wonder what is it about?

TL;DR; There is no point in distinguishing them!

“One is Extract, Transform, Load. The other one Extract, Load, Transform. They are not the same you silly thing.” you say.

Let’s break it down.

Extract – Get data. From an API, database, SFTP, file, queue, etc.
Transform – Do something. It can be to change .net string data type into VARCHAR(max) or denormalizing ten datasets whilst integrating three systems together.
Load – Store it. It can be saved down to a file, database, in memory, or any other option. Basically, making the result available somehow otherwise it would a bit pointless.

Now, if you label these operations in your “data pipelines”, what do you come up with? And yes, it is ambiguous.

Quite possibly you get something like ET(T)LTELLTLTL. #giveACatAKeyboard

Since there is no strict definition, and the universe of what we do with data is fairly large, there is no point in talking about ETL vs ELT with one exception – you are most likely being sold something.

Leave a comment