Вставка многих записей в базу данных с помощью метода Chunk Laravel со временем замедляется

Поэтому я пытаюсь импортировать данные из 15 разных таблиц в мою базу данных из другой. Я собираю данные из исходной базы данных, и в рамках функции обратного вызова я вставляю их в свою базу данных с использованием необработанного SQL. Пример кода:

foreach($tables as $table) {
DB::connection('source_db')->table($table)->select($fields)->orderBy('id'))->chunk(2500, function($records) use($table) {
$this->runInsertQuery($records, $table);
});
}

Всего около 2 миллионов записей, кажется, что он начинается очень быстро, но становится все медленнее и медленнее, когда он перемещается из таблицы в таблицу, что занимает несколько часов. На основании документации Laravel у меня сложилось впечатление, что разбиение по частям заставит вставки работать намного быстрее, но, похоже, имеет противоположный эффект. Любое руководство будет с благодарностью!

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …