При массовой вставке или апдейте записей в MySQL очень сильное ускорение можно получить если завернуть пачку INSERT-ов или UPDATE-ов в транзакцию. Можно вообще вообще весь импорт сделать за одну транзакцию, можно разрезать на несколько более мелких транзакций.
Ну а вообще, разберитесь в каком месте у вас все падает или жрет слишком много времени и ресурсов. Разбейте задачу на несколько кусков, и выполните каждую по отдельности.
- чтение данных из удаленного источника
- json парсинг
- формирование SQL команд
- выполнение SQL команд
Тогда поймете, в каком именно месте у вас проблема.