mysql load data infile takes too long and db file grows too large
24 hours is a very long time- the most important factor when running LOAD DATA is the buffer pool, and yours (22GB) should be enough to accommodate the imported 3.5G file. Something else must be going on, please share more data like the SHOW CREATE TABLE output for the used table and SHOW PROCESSLIST- maybe there is something blocking the table and you are waiting for the process to start. You can check at any time the state of the load by checking the GLOBAL STATUS for innodb%' as well as theHandler_writes`.

To give you an idea of how much I would expect this to take, a 3.7 GB file should not take much more than 200 seconds to safely load on an SSD desktop-grade machine. See these tests I did not a long time ago on all recent MariaDB and MySQL versions on a non-server grade machine, even on a default (bad) config: https://dbahire.com/testing-again-load-data-on-mysql-5-6-5-7-8-0-non-ga-and-mariadb-10-0-10-1-and-10-2-non-ga/