Как правильнее загрузить большое кол-во данных в БД в laravel?
Нажимаешь на импорт, отправляешь обычный хттп пост запрос (доки), в обработчике создаешь джобу и кидаешь в очередь (доки), в джобе пишешь логику импортирования (может хоть час, хоть два, хоть десять лет импортироватся - главное что бы сервак не падал, и не забудь написать имя очереди, отличное от default).
Собственно все. Дальше либо поднимаешь очереди супервизором (доки), либо прикручиваешь horizon (доки) и, есстественно, какой-то адекватный драйвер для этих очередей, как то rabbitmq или redis (и драйвер соответсвующий включаешь (доки)).
Как работать с джобами, написали выше. Если есть желание оптимизировать саму вставку данных в бд, то можно в Джобе писать данные в файл, а затем загрузить в бд через load data infile. Будет существенно быстрее.