@IGCapiti

Laravel. Многотысячная запись в DB?

Здравствуйте.
Требуется помощь.
Коротко. Сайт, October CMS. Есть таблица в .xls. Там около 50 столбцов и около 100 строк. Соответственно - 5000 данных.
Я загружаю файл, парсю оттуда данные и мне нужно внести их в базу. Начинаю вносить в базу. После 120-150 записей, запрос слетает не выдавая никакую ошибку.
Мне нужно сделать запись, максимально быстро. И без потерь. Ребята, можете подсказать? Может кто-нибудь пример подобного запроса делал? Как???

Заранее спасибо.
С Уважением, IGCapiti.
  • Вопрос задан
  • 261 просмотр
Пригласить эксперта
Ответы на вопрос 4
@karminski
Senior React.JS Developer
Разбить процесс на части. Парсите первые 100 строк и вставляете их в БД. Далее повторяете в цикле остальные строки.
Ответ написан
Комментировать
Fernus
@Fernus
Техник - Механик :)
Вариантов можно несколько выдумать...от задачи зависит...

Можно например при парсинге файла нужные данные "скидывать" в другой результирующий файл...
А далее этот файл прогнать через такой запрос:

LOAD DATA INFILE "/path/to/file" INTO TABLE `tbl`;
Залетит быстро...

Подробнее тут.
Ответ написан
Комментировать
YekitKsv
@YekitKsv
Developer
Я так понимаю у вас сейчас работает сохранение по такому принципу: 1 строка = 1 запрос в базу ? Лучше пачкой сразу отправить. 5000 записей вставить 1 запросом для mysql как нефиг делать.
Ответ написан
Комментировать
@Xukaro
Как на счёт миграций? Выгрузить файл даже довольно большой не займёт много времени
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы