I found the easiest way was just dump tables of data into long varchars - even the supposedly numeric stuff, because often enough it wasn't - then scrub & filter it from there. (NB, if you take anything from this post, make it that).
There were multiple challenges, but one that was most painful was the sheer filth mixed into the data. Too often even a human couldn't work out what the heck was supposed to be in some field. Often we could, but it ate a lot of time.
It doesn't sound like you ETLs are anything like mine; you start with pretty clean data. You are lucky.
I wrote 'tables' because it wasn't a relational DB although the successor system was.
The amount of data was pretty minimal too, not much more than a dozen GB, but it ate up at least 4 man-years to convert. I still cringe thinking about it. Some parts were an interesting challenge but mostly just soul destroying grind.
of course the value to the business of much of this data is highly questionable, but this isn't always an argument you win..