Hmm, interesting. I've been doing it (very slowly) the naiive way, by querying everything through RPC calls to the Bitcoin Core client. Should be done by next month if I'm lucky.

By the way ... doing it this "slow native way" is not a real problem at all, if you already have most of the data exported using the chainstate tool...
After that, i's just checking for updates and sending them into the database. On a plain CSV it might a bit more complicated, if you want to delete old entries which are no longer holding any coins.
Possible alternatives are, using sqlite - even maybe a in-memory only table if you have enought ram - or like i do a postgresql db..